如何截取通过计算机发起的所有网络请求?或者说原理什么样的呢?用c?用python可以实现吗?
用raw_socket可以读取到所有的流量,但是不可以截取请求进一步操作。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
用raw_socket可以读取到所有的流量,但是不可以截取请求进一步操作。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(7)
截取所有网络请求,你的意思应该是想截取电脑所有通过网卡发送的数据报吧。
截取之后如果只是分析,wincap或者wireshark就足够了。
如果希望修改数据报并且转发,那需要另一台电脑B充当网关,A电脑连接B电脑而不连接路由器,B电脑双网卡,一个网卡负责接收A的所有数据报,另一个网卡负责转发(修改报头等参数),转发程序需要自己写
配合 iptables 截
截取是什么意思?拦截?查看?
可以使用
wireshake
查询某网卡所有请求开发一个代理程序干这个? 具体我不懂
wireshark能够获取到所有所有的网络请求也是基于这种模式。
这种方式能够成功的前提是所有的流量需要流经该网卡处于的主机,也就是说他只能获取到本机的网络流量。如果想要在某一台电脑来获取另外一台的数据流量,那么这就属于黑客的范畴了,而且必须要在同一个局域网内。比如使用arp诱骗可以实现
raw_socket是原套接字的方式,但是有个缺点是他会把你本机通信socket也截取,linux提供的有libpcap库,win对应的好像是winpcap,直接用就可以了,这个是截取的网卡数据。wireshake tcpdump都是根据这个来实现的。
楼主解决了吗 我也有这个需求