MacOS X またはその他の UNIX で、カスタム (およびイベント不要の) arp 応答をシェル経由で (たとえば、手動またはシェル スクリプトによって) 送信する方法はありますか? さらに、誰にもpingを送信せずに、現在のサブネット内のすべてのIPのMAC表現をソフトウェアに要求させる方法はありますか?
3 に答える
はいあります。この種のアクティビティは、ARP スプーフィングおよび ARP ポイズニング攻撃で使用され、ex. によるarpspoof
。ホストの MAC を発見したい場合、その IP を知っていて、それが自分のブロードキャスト ドメイン (LAN) にある場合は、 を使用しますarping
。ARP はレイヤー 2 プロトコルであるため、パケットはルーターによって転送されませんが、ICMP エコー (ping) よりもはるかに信頼性が高くなります。
いくつかのツール:
arp
- すでに学習済みの IP を含む、ホストの IP-MAC アドレス関連付けキャッシュを一覧表示するために使用される標準プログラム (win/unix)arping
- 特定の IP に対して ARP 要求を送信し、受信した ARP 応答に含まれる MAC を表示する unix プログラムarpspoof
- 偽の ARP 応答を生成する dsniff パッケージのプログラム
arp-scan
の使用もありlibpcap
ます。とarpdropper
使用しlibnet
ます。
ネットワークの ARP パケットを受動的に (または積極的に) スニッフィングし、パケットを生成したマシンの IP アドレスと MAC アドレスを表示するには、ArpSpyXと呼ばれる Mac OS X アプリケーションを使用できます。
# arpdropper requires http://sourceforge.net/projects/libnet-dev/ to compile
# (libnet & arpdropper successfully compiled on Mac OS X 10.6.8)
curl -LO http://thebends.googlecode.com/svn/trunk/misc/arpdropper.c
gcc -Wall -Wextra -lnet -o arpdropper arpdropper.c
./arpdropper
# Usage: ./arpdropper -i <device> -s <source ip> -d <dest ip>
# For arp replies:
# ./arpdropper -r -i <device> -s <source ip> -m <source mac> -d <dest ip>
# using nmap
# get a pre-compiled Mac OS X version of nmap at:
# http://nmap.org/download.html#macosx or
# http://www.berndsworld.com/downloads/
nmap -PR -oN nmap-arpscan.txt 192.168.0.0/16
パケットジェネレーターがうまくいくかもしれません。ウィキペディアのページにはいくつかの実装へのリンクがありますが、それらが OSX で動作するかどうかはわかりません。