5353/UDP Multicast DNS (mDNS) and DNS-SD

ゼロからヒーローまでAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricks をサポートする他の方法:

基本情報

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

PORT     STATE SERVICE
5353/udp open  zeroconf

mDNSの動作

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

DNS-SDの機能

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

ネットワークの探索

nmapの使用

mDNSサービスをスキャンするための便利なコマンドは次のとおりです:

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

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

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

アクティブにmDNSリクエストを送信してトラフィックをキャプチャするために、Pholusツールを以下のように利用できます:

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

攻撃

mDNSプロービングの悪用

攻撃ベクトルは、mDNSプローブに対してスプーフィングされた応答を送信し、すべての潜在的な名前がすでに使用中であると示唆することに関与し、新しいデバイスが一意の名前を選択するのを妨げることです。これは以下を使用して実行できます:

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

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

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

スプーフィング/MitM

このサービス上で実行できる最も興味深い攻撃は、クライアントと実際のサーバー間の通信MitMを実行することです。プリンターとの通信をMitMすることで、機密ファイルを入手したり(MitM the communication with the printer)、資格情報(Windows認証)を入手する可能性があります。 詳細については、以下を参照してください:

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

参考文献

Learn AWS hacking from zero to hero with htARTE (HackTricks AWS Red Team Expert)!

HackTricksをサポートする他の方法:

Last updated