hacktricks/src/network-services-pentesting/5353-udp-multicast-dns-mdns.md

62 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 5353/UDP マルチキャスト DNS (mDNS) と DNS-SD
{{#include ../banners/hacktricks-training.md}}
## **基本情報**
**マルチキャスト 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の仕組みを理解することは、ネットワーク管理とセキュリティにとって重要です。**nmap**や**Pholus**のようなツールは、ローカルネットワークサービスに関する貴重な洞察を提供し、潜在的な脆弱性を認識することで攻撃からの保護に役立ちます。
### スプーフィング/ MitM
このサービスで実行できる最も興味深い攻撃は、**クライアントと実際のサーバー間の通信でMitMを実行する**ことです。あなたは、機密ファイルプリンターとの通信をMitMするや資格情報Windows認証を取得できるかもしれません。\
詳細については、以下を確認してください:
{{#ref}}
../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md
{{#endref}}
## 参考文献
- [Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things](https://books.google.co.uk/books/about/Practical_IoT_Hacking.html?id=GbYEEAAAQBAJ&redir_esc=y)
{{#include ../banners/hacktricks-training.md}}