当前位置: 技术问答>linux和unix
内核是不会把tcp/udp报文传递给raw socket??
来源: 互联网 发布时间:2015-07-23
本文导语: unp 1 里是这么说的. 可是我在网上看到一片文章,server和client,都通过raw通信 而且ip头的协议字断,填的是tcp 很奇怪,这样的话,应该只能发送,但对方无法收接受才对啊? http://www.xfocus.net/articles/200210/455.html 是windows的代...
unp 1 里是这么说的.
可是我在网上看到一片文章,server和client,都通过raw通信
而且ip头的协议字断,填的是tcp
很奇怪,这样的话,应该只能发送,但对方无法收接受才对啊?
http://www.xfocus.net/articles/200210/455.html
是windows的代码,我无法验证,那位有时间帮忙看一下.
难道我对raw得不到tcp报文的理解有问题?
可是我在网上看到一片文章,server和client,都通过raw通信
而且ip头的协议字断,填的是tcp
很奇怪,这样的话,应该只能发送,但对方无法收接受才对啊?
http://www.xfocus.net/articles/200210/455.html
是windows的代码,我无法验证,那位有时间帮忙看一下.
难道我对raw得不到tcp报文的理解有问题?
|
windows的实现跟unix是不一样的,
Unix中接收这些IP数据包是由数据链路层的接口实现
并不是raw socket
就像tcpdump
我记得在windows底下有windump,也是实现相同功能
你看看他的源代码,是怎么实现的,
就知道windows是怎么截获ip包的
Unix中接收这些IP数据包是由数据链路层的接口实现
并不是raw socket
就像tcpdump
我记得在windows底下有windump,也是实现相同功能
你看看他的源代码,是怎么实现的,
就知道windows是怎么截获ip包的
|
mark一下
|
基于Unix的内核只接收几种标准的ICMP,TCP,UDP等数据,
对于其他非标准的数据包,内核就把它们传到raw socket。
因此木马可以构造自己的ip,udp报头等,这样就绕过内核的处理,
而由raw socket进行处理
对于其他非标准的数据包,内核就把它们传到raw socket。
因此木马可以构造自己的ip,udp报头等,这样就绕过内核的处理,
而由raw socket进行处理