我有一个袜子流量的 pcap 捕获。交通状况是这样的——
client_ip <-> 127.0.0.1:9050 <-> destination_ip
因此,查看wireshark中的pcap,显示:
src_ip = 127.0.0.1
dst_ip = 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
是否可以更改 src_ip 和 dst_ip 地址?
我尝试了 bitwaste 作为:
bittwiste -I in.pcap -O out.pcap -T ip -p 6 -s 127.0.0.1,1.2.3.4 -d
127.0.0.1,4.3.2.1
Run Code Online (Sandbox Code Playgroud)
但是,只有第一个数据包被修改。从第二个开始的所有数据包都保持不变。
我还尝试了 tcprewrite 作为:
tcprewrite --seed=325 --infile=in.pcap --outfile=out.pcap
Run Code Online (Sandbox Code Playgroud)
这会将所有 src_ip 和 dst_ip (127.0.0.1) 更改为相同的随机 IP,因为它似乎只找到一个(相同)端点 IP。
如何修改socks流量捕获中的src和dst IP地址?
谢谢
TL;博士。--endpoints的选项就是tcprewrite您正在寻找的。它需要来自以下位置的缓存文件tcpprep:
$ tcpprep --port --pcap=in.pcap --cachefile=in.cache\n$ tcprewrite --cachefile=in.cache --endpoints=1.2.3.4:4.3.2.1 --infile=in.pcap --outfile=out.pcap\n$\n$ tshark -r out.pcap\n1 0.000000 1.2.3.4 \xe2\x86\x92 4.3.2.1 TCP 74 49870 \xe2\x86\x92 80 [SYN] Seq=0 Win=43690 Len=0 MSS=65495 SACK_PERM=1 TSval=10438137 TSecr=0 WS=128\n2 0.000030 4.3.2.1 \xe2\x86\x92 1.2.3.4 TCP 74 80 \xe2\x86\x92 49870 [SYN, ACK] Seq=0 Ack=1 Win=43690 Len=0 MSS=65495 SACK_PERM=1 TSval=10438137 TSecr=10438137 WS=128\n3 0.000051 1.2.3.4 \xe2\x86\x92 4.3.2.1 TCP 66 49870 \xe2\x86\x92 80 [ACK] Seq=1 Ack=1 Win=43776 Len=0 TSval=10438137 TSecr=10438137\n4 0.000101 1.2.3.4 \xe2\x86\x92 4.3.2.1 HTTP 139 GET / HTTP/1.1 \n5 0.000121 4.3.2.1 \xe2\x86\x92 1.2.3.4 TCP 66 80 \xe2\x86\x92 49870 [ACK] Seq=1 Ack=74 Win=43776 Len=0 TSval=10438137 TSecr=10438137\n6 0.023045 4.3.2.1 \xe2\x86\x92 1.2.3.4 HTTP 11642 HTTP/1.1 200 OK (text/html)\n7 0.023094 1.2.3.4 \xe2\x86\x92 4.3.2.1 TCP 66 49870 \xe2\x86\x92 80 [ACK] Seq=74 Ack=11577 Win=174720 Len=0 TSval=10438143 TSecr=10438143\n8 0.023517 1.2.3.4 \xe2\x86\x92 4.3.2.1 TCP 66 49870 \xe2\x86\x92 80 [FIN, ACK] Seq=74 Ack=11577 Win=174720 Len=0 TSval=10438143 TSecr=10438143\n9 0.023547 4.3.2.1 \xe2\x86\x92 1.2.3.4 TCP 66 80 \xe2\x86\x92 49870 [FIN, ACK] Seq=11577 Ack=75 Win=43776 Len=0 TSval=10438143 TSecr=10438143\n10 0.023560 1.2.3.4 \xe2\x86\x92 4.3.2.1 TCP 66 49870 \xe2\x86\x92 80 [ACK] Seq=75 Ack=11578 Win=174720 Len=0 TSval=10438143 TSecr=10438143\nRun Code Online (Sandbox Code Playgroud)\n\n说明
\n\n根据的文档tcprewrite,--endpoints=ip1:ip2重写所有数据包,使其看起来位于 ip1 和 ip2 之间。然而,这个选项需要这个--cachefile选项。
缓存文件tcpprep用于根据端口、IP地址、MAC 地址等将流量分成两侧。这里,根据wikitcpprep,我们要使用该--port选项。
| 归档时间: |
|
| 查看次数: |
7267 次 |
| 最近记录: |