抓包介绍

  抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作。

抓包功能:

  1. 可以用来修改数据并发送到服务器,比如某些辅助 外挂的原理就是如此。

  2. 模拟手动请求并配合一些编程语言比如python,易语言,C++等写出一个自动化小程序。

  3. 获取一个App ,网站的Api并使用其提供的功能。

    【Linux】linux抓包工具tcpdump-风君雪科技博客

  4. 获取一些客户端网络数据包。

  5. 也用来检查网络安全。

   

 抓包工具

  常见抓包工具有Wireshark, Fiddler,tcpdump。

 tcpdump介绍

  tcpdump是linux系统中一个基于命令行的抓包工具,它可以对网络上的数据包进行截获的包分析。一般Linux/Unix系统中都默认安装。tcpdump通常运行是需要root用户权限。

  如果不是用户权限会有下面错误提示

songguojundeMacBook-Pro:swoole songguojun$ tcpdump -v
tcpdump: ioctl(SIOCIFCREATE): Operation not permitted

 改为root权限,就可以看到tcpdump的监控提示界面信息。

songguojundeMacBook-Pro:swoole songguojun$ sudo  tcpdump
Password:
tcpdump: data link type PKTAP
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on pktap, link-type PKTAP (Apple DLT_PKTAP), capture size 262144 bytes
18:36:59.114704 IP 192.168.1.30.61197 > 36.152.66.95.https: Flags [.], ack 1719880593, win 4096, length 0
18:36:59.116124 IP 180.97.104.146.https > 192.168.1.30.61219: Flags [.], ack 976265719, win 1516, length 0
18:36:59.135087 IP 36.152.44.95.https > 192.168.1.30.61197: Flags [.], ack 1, win 1648, length 0
18:36:59.135090 IP 180.97.104.146.https > 192.168.1.30.61214: Flags [.], ack 933064335, win 1124, length 0
18:36:59.176335 IP6 songguojundemacbook-pro.local.51366 > fe80::1.domain: 19640+ PTR? 30.1.168.192.in-addr.arpa. (43)

tcpdump详细使用

  tcpdump如果不加任何参数化默认只抓每个数据包的前68个字节。

  看下tcpdump命令帮助

  【Linux】linux抓包工具tcpdump-风君雪科技博客

   1. tcpdump -i en0 -s 0 -w a.acp

   参数说明:
      1)-i en0: 用 en0 接口进行抓包。

      2) -s 0:表示包有多大,抓取的数据多大。

      3)-w a.cap 表示将抓取的内容存取到 a.cap 文件中。

   操作步骤

       1) 先用tcpdump -i eth0 -s 0 -w a.acp 命令监听en0。如果tcpdump 抓包时候 提示 tcpdump: eth0: No such device exists这样的错误,用tcpdump -D查看可用的网卡。

       2)  然后在另外一个终端输入 ping  www.baidu.com

     3)    接着使用在监听en0的终端ctrl + c来终止监听,在用tcpdump -r a.acp 查看抓包的内容。

     【Linux】linux抓包工具tcpdump-风君雪科技博客

     -r 只是显示摘要信息,如果想要看详细信息可以使用 tcpdump -A -r a.acp  使用Ascll显示。

     也可以使用 tcpdump -X -r a.acp 使用十六进制显示