wireshark本身并不能修改数据包,但是tcprewrite 可以修改数据包,然后通过tcpreplay 进行重放,这个时候wireshark抓的包,就是被篡改后的pcap包了。
ailx10
网络安全优秀回答者
互联网行业 安全攻防员
去咨询
步骤一:安装 libpcap-dev
sudo apt-get install libpcap-dev
步骤二:下载源代码[1],并编译安装 tcprewrite
./configure
make
sudo make install
步骤三:准备pcap包,以访问知乎的pcap包为例,记住篡改前的信息
- 源地址:192.168.0.108
- 目的地址:103.41.167.234
步骤四:跟着ailx10,开干
修改pcap包的源IP地址,从192.168.0.108改成1.1.1.1
tcprewrite --srcipmap=192.168.0.108:1.1.1.1 -i ../zhihu.pcap -o ../zhihu2.pcap
修改pcap包的目的IP地址,从103.41.167.234改成2.2.2.2
tcprewrite --dstipmap=103.41.167.234:2.2.2.2 -i ../zhihu2.pcap -o ../zhihu2.pcap
步骤五:见证奇迹
如果你想将整个数据包里的源IP地址和目的IP地址内容都替换掉
- 所有的 220.181.107.131 替换成 3.3.3.3
- 所有的 192.168.0.108 替换成 4.4.4.4
替换前
一条命令,直接替换:
tcprewrite --srcipmap=220.181.107.131:3.3.3.3,192.168.0.108:4.4.4.4 --dstipmap=220.181.107.131:3.3.3.3,192.168.0.108:4.4.4.4 -i ../tcp.pcap -o ../tcp2.pcap
参考
- ^tcpreplay Releases · appneta/tcpreplay · GitHub