三、使用TCPdump抓包分析

协议分析工具

  • 网络监听: TcpDump + WireShark
  • 代理Proxy
    • 推荐工具: 手工测试charles [全平台]、安全测试burpsuite[全平台java]
    • 自动化测试: mitmproxy
    • 其他代理: fiddler [仅windows]、AnyProxy[全平台]
  • 协议客户端工具: curl、postman

tcpdump

  • 参数:
    • -x 十六进制展示
    • -w file保存文件
  • 表达式:
    • ip tcp协议
    • host主机名
    • port 80
    • src来源
    • dst目的
    • and or ()逻辑表达式


      image.png

WireShark

image.png

抓取访问百度的数据包

  • sudo tcpdump host www.baidu.com -w /tmp/tcpdump.log
  • curl http://www.baidu.com
  • 停止tcpdump
  • 使用wireshark打开 /tmp/tcpdump.log


    image.png
image.png
image.png
image.png

协议分析

    1. 三次握手
    • 第一次握手,SYN标记位为1,客户端发起请求


      image.png
    • 第二次握手,返回数据包,ACK=1,SYN=1,服务端返回数据


      image.png
    • 第三次握手,ACK=1,客户端确认收到数据


      image.png
    1. 四次挥手
    • 第一次挥手,客户端给服务端传送消息,传输已经完成,可以结束,FIN=1,ACK=1


      image.png
    • 第二次挥手,服务器收到消息后进行确认,ACK=1


      image.png
    • 第三次挥手,服务器确认可以结束了,FIN=1,ACK=1


      image.png
    • 第四次挥手,客户端确认连接已结束,ACK=1


      image.png
  • 总览


    image.png

下一节:使用Postman发送请求,包括使用图形化工具构造HTTP请求并发送。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容