hunting-for-dns-based-persistence について
DNS レコード変更、不正なサブドメイン、ワイルドカード、委任先の変更を調べ、DNS ベースの永続化をハントするセキュリティスキルです。パッシブ DNS 履歴、プロバイダー監査ログ、ゾーン分析で異常を特定し、JSON レポートを作成します。
主な機能
- 01DNS レコードのベースライン作成
- 02パッシブ DNS 履歴の照会
- 03レコードと委任の異常検知
- 04脅威インテリジェンスとの照合
- 05リスクと修復策のレポート
活用シーン
- 01インシデント後の DNS 永続化調査
- 02切れた CNAME と不正なサブドメインの特定
- 03DNS レコード変更監視の検証
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill hunting-for-dns-based-persistenceインストール後、Claude Code で/hunting-for-dns-based-persistenceを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSEreferences/api-reference.mdscripts/agent.py詳細
DNSベースの永続化を探索する
概要
攻撃者は、DNSレコードの乗っ取り、不正なサブドメインの作成、ワイルドカードDNSエントリの悪用、NS委任の変更によって、トラフィックを攻撃者が制御するインフラストラクチャ経由で転送し、DNSベースの永続化を確立します。こうした手法は、DNSの変更が侵害されたホストとは独立して保持されるため、認証情報のローテーション、エンドポイントの再イメージ化、従来の修復措置を実施しても存続します。検出には、パッシブDNSの履歴分析、ゾーンファイルの監査、不正なレコード変更の監視が必要です。このスキルでは、SecurityTrailsのパッシブDNS API、Route53/Azure DNS/CloudflareのDNS監査ログ、ゾーン転送分析を使用した探索手法を扱います。
使用するタイミング
- DNSベースの永続化を探索する必要があるセキュリティインシデントを調査するとき
- この領域の検出ルールや脅威ハンティングクエリを作成するとき
- SOCアナリストがこの種の分析に向けた体系的な手順を必要とするとき
- 関連する攻撃手法に対するセキュリティ監視の網羅性を検証するとき
前提条件
- SecurityTrails APIキー(無料プランでは月50クエリまで利用可能)
- DNSプロバイダーの監査ログへのアクセス(Route53、Azure DNS、Cloudflare、またはオンプレミスDNS)
- requestsライブラリを備えたPython 3.9以降
- DNSゾーンファイルへのアクセス、または内部ゾーンのAXFR機能
- 比較用の過去のDNSベースライン
手順
ステップ1:DNSレコードのベースラインを作成する
現在のDNSゾーンレコードをエクスポートし、承認済みのすべてのA、AAAA、CNAME、MX、NS、TXTレコードのベースラインを作成します。
ステップ2:パッシブDNSの履歴を照会する
SecurityTrails APIを使用して過去のDNSレコードを取得し、不正な変更、新しいサブドメイン、廃止済みサービスを指すCNAMEレコード(ダングリングCNAME)を特定します。
ステップ3:異常を検出する
現在のレコードをベースラインと比較し、不正な変更、すべてのサブドメインを解決するワイルドカードレコード、NS委任の変更、MXレコードの乗っ取りを特定します。
ステップ4:検出結果を調査する
DNSの異常を脅威インテリジェンスフィードと照合し、名前解決先が既知の悪意あるインフラストラクチャに該当しないか確認して、レコードの所有権を検証します。
期待される出力
レコードタイプ、過去の変更、リスクの重大度、各検出結果に対する修復の推奨事項を記載した、DNS異常のJSONレポート。