• 【Linux】linux抓包工具tcpdump


    抓包介绍

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

    抓包功能:

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

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

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

        

      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命令帮助

      

       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 查看抓包的内容。

         

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

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

     

  • 相关阅读:
    java基础学习总结——方法的重载(overload)
    java基础学习总结——哈希编码
    HDFS常用命令总结
    统计列表中有重复的元素
    url编解码
    python读取文件指定行内容
    python对接elasticsearch的基本操作
    爬虫速度太慢?来试试用异步协程提速吧!
    Python多线程的事件监控
    Python只有文件不存在才能写文件
  • 原文地址:https://www.cnblogs.com/songgj/p/8883310.html
Copyright © 2020-2023  润新知