關於scapy
Scapy的是一個強大的交互式數據包處理程序(使用python編寫)。它能夠偽造或者解碼大量的網絡協議數據包,能夠發送、捕捉、匹配請求和回復包等等。它可以很容易地處理一些典型操作,比如端口掃描,tracerouting,探測,單元測試,攻擊或網絡發現(可替代hping,NMAP,arpspoof,ARP-SK,arping,tcpdump,tethereal,P0F等)。最重要的他還有很多更優秀的特性——發送無效數據幀、注入修改的802.11數據幀、在WEP上解碼加密通道(VOIP)、ARP緩存攻擊(VLAN)等,這也是其他工具無法處理完成的。
安裝:
sudo apt-get install scapy
測試:
安裝barefoot修改過的scapy(支持vxlan)
git clone git@github.com:Wasdns/scapy-vxlan.git
sudo python setup.py install
barefoot ReadMe
Barefoot modified scapy, which supports VXLAN. Waiting for VXLAN support to be
added to the main scapy repo.
This modified repo now also supports a ERSPAN-like header.
To install:
sudo python setup.py install
To check that the modifications work, open a scapy CLI (just type 'scapy' in a
terminal) and type the following:
Welcome to Scapy (2.2.0-dev)
>>> load_contrib('vxlan')
>>> Ether()/IP()/UDP()/VXLAN()/Ether()/IP()/TCP()
<Ether type=0x800 |<IP frag=0 proto=udp |<UDP dport=4789 |<VXLAN |<Ether
type=0x800 |<IP frag=0 proto=tcp |<TCP |>>>>>>>
>>> load_contrib('erspan')
>>> Ether()/IP()/GRE()/ERSPAN()/Ether()/IP()/TCP()
<Ether type=0x800 |<IP frag=0 proto=gre |<GRE proto=0x22eb |<ERSPAN |<Ether
type=0x800 |<IP frag=0 proto=tcp |<TCP |>>>>>>>
>>>
Note how the UDP dport and the GRE proto number are updated automatically.
測試結果
./run_scapy
2016/11/27