linux下c语言抓包,C语言实现抓包工具

本文使用libpcap库在linux下面开发自定义抓包工具,同学们也可以在win下编写同样的代码。

抓包的目的:

1、分析协议

2、伪造数据包

3、获取重要信息,例如用户名和密码

4、做某些攻击使用

抓包的工具

(1)Wireshark 可视化的工具

linux下c语言抓包,C语言实现抓包工具_第1张图片

(2)Tcpdump

是命令行的工具。

(3)自定义抓包工具

原因1: 只抓取感兴趣的部分,去掉无关紧要的东西,为其他目的服务。

原因2:如果有别的目的,例如偷偷安装在别的机器上,有必要保持隐身,保持短小。

抓包工具的构造原理

(1)用原始套接字抓取所有的数据包,然后解析。

(2)使用现成的库来抓包。

Libpcap库,是在linux下面的一个库。如果是windows开发的话,可以使用wincap这个库。两个的函数等都是一样。

欢迎加入学习群【892643663】,获取全套免费C/C++企业实战级课程资源(素材+源码+视频)和编译大礼包

自定义抓包工具的编程过程

(1)想要抓到链路层的包,要打开网卡设备。(在linux下面会把所有的设备当成文件,linux的哲学之一)相当于从这个网卡文件里抓取文件内容。

(2)设置好过滤规则,只保留特定

你可能感兴趣的:(linux下c语言抓包)