一、內容
1.網絡嗅探:Wireshark 監聽網絡流量,抓包。
2.ARP欺騙:科來數據包發生器,構造欺騙報文。
3.防范: 防范arp欺騙、非法DHCP防范。
二、使用的工具和平臺
Wireshark:用來抓包,
科來數據包生成器、科來數據包播放器:構造欺騙的ARP欺騙報文
平臺:使用Win10作為攻擊機,靶機時虛擬機中的Win7
三、ARP欺騙原理
同一局域網里面的兩臺主機之間相互通信是通過mac地址尋址的,而如果兩臺主機若不是處于同一子網里面,則在通信的時候會相互將數據發送給各自的路由器網關,通過網關的IP尋址以達到通信目的。但是網關和自己局域網里面的主機通信的時候還是依靠Mac地址尋址的,所以如果我們要把自己攻擊機偽造成網關達到欺騙作用,就應該把目標主機上的網關Mac地址緩存改為攻擊機的Mac地址(這就可以通過偽造ARP報文來實現)。
正常情況下數據包的發送:
如圖:在正常的情況下,處于兩個不同子網之間通信,會有A——>網關——>網卡——>外網。通過網關和網卡連通兩個子網。而現在所要做的就是將這一步改為A——>B——>網卡——>外網,將B偽造成網關,這樣一來所有從A到外網的數據就都會通過B了,從而可以分析出A的上網情況,甚至是一些明文密碼。
偽造的情況下:
同時,偽造網關后,還需要將數據轉發出去,否則會導致A上不了網而被發現網關是偽造的。
四、具體實現步驟
1.首先通過命令行和Wireshark知道攻擊機和靶機的MAC地址和IP地址。
使用ipconfig/all查看
① 200多本網絡安全系列電子書
② 網絡安全標準題庫資料
③ 項目源碼
④ 網絡安全基礎入門、linux、web安全、攻防方面的視頻
⑤ 網絡安全學習路線圖
私信“安全”免費領取
由此可知,攻擊機 IP:192.168.0.103 MAC:18-DB-F2-2C-FC-EC
靶機 IP:192.168.0.113 MAC:00-0C-29-EB-E5-8E
網關 IP:192.168.0.1 MAC:04-95-e6-57-a6-c8
使用arp -a查看網關信息,注意這是的網關為192.168.0.1
這里信息也可以使用WireShark抓包來獲取
現在,基本的地址信息有了,下面開始構造ARP欺騙報文
在科來數據包生成器中構造ARP報文,以太網中的目標地址為廣播,源地址是攻擊機的MAC地址,
ARP地址解析協議中,源MAC地址為攻擊機,源IP為網關,目標MAC和IP為靶機地址
數據包構造完成后,使用科來數據包播放器發送,網卡選擇有效的,使用循環發送(現在的操作系統為了防止ARP欺騙,一般會再次確定網關,所以需要循環發送)
這里使用靶機上網,在WireShark中可以抓取到相應的包
在網關欺騙成功之后,還需要將靶機的信息進行轉發,否則會導致靶機無法上網
具體設置如下:
1.在命令行中輸入“Regedit”
2.查找一下路徑:
“HKEY_LOCAL_MACHINE” > SYSTEM > CurrentControlSet >Services> Tcpip >Parameters > IP Enable Router
右鍵點擊修改,將0改為1;
3.在運行中輸入
打開后啟用Routing and Remote Access Service服務即可
在偽造數據包的時候更深刻了解到了ARP報文的結構,在者就是認識到TCP/IP協議是相當不安全的,ARP報文可以修改達到中間人劫持獲取用戶和密碼的目地,同樣通過DNS欺騙可以制造釣魚網站竊取密碼,還可以通過修改UDP報文偽造對話,這一切的不安全因素都是因為在傳輸過程中任何人都可以截取、而且沒有認證機制,以至于任何人可以隨心所欲的修改它。所以需要防范ARP欺騙。
ARP欺騙防范:
1)設計靜態ARP表
在主機上設置靜態的MAC->IP對應表,不要讓主機刷新設定好的轉換表。
在PC上綁定路由器的IP和MAC地址,路由器上綁定用戶主機的IP和MAC地址
批處理文件實現:
@echo off
:::::::::讀取本機Mac地址
if exist ipconfig.txt del ipconfig.txt
ipconfig /all >ipconfig.txt
if exist phyaddr.txt del phyaddr.txt
find "Physical Address" ipconfig.txt >phyaddr.txt
for /f "skip=2 tokens=12" %%M in (phyaddr.txt) do set Mac=%%M
:::::::::讀取本機ip地址
if exist IPAddr.txt del IPaddr.txt
find "IP Address" ipconfig.txt >IPAddr.txt
for /f "skip=2 tokens=15" %%I in (IPAddr.txt) do set IP=%%I
:::::::::綁定本機IP地址和MAC地址
arp -s %IP% %Mac%
:::::::::讀取網關地址
if exist GateIP.txt del GateIP.txt
find "Default Gateway" ipconfig.txt >GateIP.txt
for /f "skip=2 tokens=13" %%G in (GateIP.txt) do setGateIP=%%G
:::::::::讀取網關Mac地址
if exist GateMac.txt del GateMac.txt
arp -a %GateIP% >GateMac.txt
for /f "skip=3 tokens=2" %%H in (GateMac.txt) do setGateMac=%%H
:::::::::綁定網關Mac和IP
arp -s %GateIP% %GateMac%
del GateIP.TXT /Q
DEL GateMac.txt /q
del IPAddr.txt /q
del ipconfig.txt /q
del phyaddr.txt /q
exit
保存為IP-MAC.bat 開機運行就OK
2)安裝ARP防護軟件
這是一次關于ARP欺騙的實現過程。
PS:勿忘初心,持之以恒。






