WEB开发网
开发学院网络安全防火墙 iptables下udp穿越实用篇----iptables与natch... 阅读

iptables下udp穿越实用篇----iptables与natcheck

 2007-03-12 12:41:45 来源:WEB开发网   
核心提示: B侧:cat /proc/net/ip_conntrack | grep 192.168.0.5 | grep udp udp 17 26 src=192.168.0.5 dst=210.21.12.140 sport=5000 dport=5000 [UNREPLIED] src=210

B侧:cat /proc/net/ip_conntrack | grep 192.168.0.5 | grep udp

udp 17 26 src=192.168.0.5 dst=210.21.12.140 sport=5000 dport=5000 [UNREPLIED] src=210.21.12.140 dst=210.15.27.140 sport=5000 dport=1026 use=1

把两条记录翻译如下:(关于ip_conntrack文件的分析,请见http://www.sns.ias.edu/~jns/secu ... bles_conntrack.html)

A(192.168.0.4:5000)-> A侧NAT(转换后210.21.12.140:5000)-> B(210.15.27.140:5000)

B(192.168.0.5:5000)-> B侧NAT(转换后210.15.27.140:1026)-> A(210.21.12.140:5000)

奇怪,B到A的包在映射后源端口号怎么变了呢,按理不应该呀?因为按照iptables转换原则(详见“iptables与stun”),要求尽量保持源端口号不变,除非socket有重复。难道B侧NAT上还有重复记录,再cat一下呢?

B侧:cat /proc/net/ip_conntrack | grep 210.21.12.140 | grep udp

udp 17 10 src=210.21.12.140 dst=210.15.27.140 sport=5000 dport=5000 [UNREPLIED] src=210.15.27.140 dst=210.21.12.140 sport=5000 dport=5000 use=1

udp 17 16 src=192.168.0.5 dst=210.21.12.140 sport=5000 dport=5000 [UNREPLIED] src=210.21.12.140 dst=210.15.27.140 sport=5000 dport=1026 use=1

操!还果真有两条差不多的记录,第一条与NAT无关,是A到B的包在B侧iptables上留下的记录,产生时间上略早于第二条记录,其构成的socket是(210.21.12.140:5000,210.15.27.140:5000)。第二条即B到A的包产生的记录,其构成的socket是(210.15.27.140:1026,210.21.12.140:5000),如果其源端口不改动,即是(210.15.27.140:5000,210.21.12.140:5000),还真和第一条记录重复了呢,怪不得转换后需要修改源端口,也怪不得B发包到不了A。

上一页  1 2 3 4 5 6  下一页

Tags:iptables udp 穿越

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接