1

編集:serverfaultで回答しました。ありがとう!

私がテストしている製品は、送信者IPアドレスが0.0.0.0のARP要求を受信すると、おかしくなりそうです。リクエストは私のモジュールにアドレス指定されているため、これはARPプローブではありません。顧客のシステムは、モジュールのIPアドレスとは異なる独自の有効なIPアドレスの使用を開始する直前にリクエストを送信します。問題は、顧客のサイトに移動するのではなく、ラボでそれを再現することです。

偽のアドレスからARP要求を生成するために使用できるソフトウェアはありますか?これは、ARPスプーフィングと似ていますが、まったく同じではありません。これは、応答ではなく要求を偽造しようとしているためです。なりすましツールのいずれかにこの機能がありますか?または、WindowsまたはLinuxにARPプローブを送信させる方法はありますか?

4

1 に答える 1

1

Python2を使用してその仕事をすることができます。それは本当に簡単な作業です。RAWソケットを開くにはroot権限が必要であり、Pythonに関する知識が少し必要です。

import socket
import struct

#Packet structure explanation:
#destmac = 0xff,0xff,0xff,0xff,0xff,0xff
#sourcemac = 0x00,0x11,0x22,0x33,0x44,0x55
#etherflags = 0x0806,0x0001,0x0800
#arpflags = 0x6,0x4,0x0001
#sourcemac = 0x00,0x11,0x22,0x33,0x44,0x55
#sourceip = 0xc0,0xa8,0x2b,0x7a
#targmac = 0x00,0x00,0x00,0x00,0x00,0x00
#targip = 0xc0,0xa8,0x2b,0x0c

packet = struct.pack('!12B3H2BH10B10B', 0xff,0xff,0xff,0xff,0xff,0xff, 0x00,0x11,0x22,0x33,0x44,0x55, 0x0806,0x0001,0x0800, 0x6,0x4,0x0001 ,0x00,0x11,0x22,0x33,0x44,0x55, 0xc0,0xa8,0x2b,0x7a, 0x00,0x00,0x00,0x00,0x00,0x00, 0xc0,0xa8,0x2b,0x0c)

sock = socket.socket(socket.PF_PACKET, socket.SOCK_RAW)
sock.bind(('eth0', 6)) # 6 its protocol number
sock.send(packet)
sock.close()
于 2011-06-23T13:51:15.793 に答える