5353/UDP マルチキャスト DNS (mDNS) と DNS-SD

Reading time: 6 minutes

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする

基本情報

マルチキャスト DNS (mDNS) は、従来の DNS サーバーを必要とせずにローカルネットワーク内で DNS のような操作 を可能にします。これは UDP ポート 5353 で動作し、デバイスが互いにおよびそのサービスを発見することを可能にし、さまざまな IoT デバイスで一般的に見られます。DNS サービス発見 (DNS-SD) は、mDNS と一緒に使用されることが多く、標準 DNS クエリを通じてネットワーク上で利用可能なサービスを特定するのに役立ちます。

PORT     STATE SERVICE
5353/udp open  zeroconf

mDNSの動作

標準DNSサーバーがない環境では、mDNSはデバイスが**.localで終わるドメイン名を解決することを可能にし、マルチキャストアドレス224.0.0.251**(IPv4)またはFF02::FB(IPv6)にクエリを送信します。mDNSの重要な側面には、レコードの有効性を示すTime-to-Live (TTL)値や、ユニキャストとマルチキャストクエリを区別するQUビットが含まれます。セキュリティの観点から、mDNSの実装はパケットの送信元アドレスがローカルサブネットと一致することを確認することが重要です。

DNS-SDの機能

DNS-SDは、サービスタイプをそのインスタンスにマッピングするポインタレコード(PTR)をクエリすることによってネットワークサービスの発見を促進します。サービスは、.localドメイン内で**_<Service>._tcpまたは_<Service>._udpパターンを使用して識別され、対応するSRVおよびTXTレコード**の発見につながり、詳細なサービス情報を提供します。

ネットワーク探索

nmapの使用

mDNSサービスのためにローカルネットワークをスキャンするための便利なコマンドは:

bash
nmap -Pn -sUC -p5353 [target IP address]

このコマンドは、オープンなmDNSポートとそれらを通じて広告されているサービスを特定するのに役立ちます。

Pholusを使用したネットワーク列挙

mDNSリクエストを積極的に送信し、トラフィックをキャプチャするために、Pholusツールを次のように利用できます:

bash
sudo python3 pholus3.py [network interface] -rq -stimeout 10

攻撃

mDNSプロービングの悪用

攻撃ベクターは、mDNSプローブに対して偽の応答を送信し、すべての潜在的な名前がすでに使用中であることを示唆することで、新しいデバイスがユニークな名前を選択するのを妨げることを含みます。これは次のように実行できます:

bash
sudo python pholus.py [network interface] -afre -stimeout 1000

この技術は、新しいデバイスがネットワーク上でサービスを登録するのを効果的にブロックします。

要約すると、mDNSとDNS-SDの仕組みを理解することは、ネットワーク管理とセキュリティにとって重要です。nmapPholusのようなツールは、ローカルネットワークサービスに関する貴重な洞察を提供し、潜在的な脆弱性を認識することで攻撃からの保護に役立ちます。

スプーフィング/ MitM

このサービスで実行できる最も興味深い攻撃は、クライアントと実際のサーバー間の通信でMitMを実行することです。あなたは、機密ファイル(プリンターとの通信をMitMする)や資格情報(Windows認証)を取得できるかもしれません。
詳細については、以下を確認してください:

Spoofing LLMNR, NBT-NS, mDNS/DNS and WPAD and Relay Attacks

参考文献

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする