一、知识点
1、抓包技术应用意义
在渗透安全方面,通过抓包分析,安全人员可以模拟黑客的攻击行为,对系统进行渗透测试。这种测试有助于发现系统中存在的安全漏洞和弱点。一旦发现漏洞,可以立即采取措施进行修复,从而增强系统的安全防护能力。
2、抓包技术应用对象
在渗透安全方面,无论是Web应用、移动应用还是桌面应用,它们在进行网络通信时都会产生数据包。抓包技术可以捕获这些数据包,以分析应用程序的行为和安全性。
3、抓包技术应用协议
抓包技术在网络安全领域涉及多种网络协议,这些协议定义了网络通信的规则和格式。以下是抓包技术应用的一些主要协议:
(1)TCP/IP协议
1)TCP(传输控制协议):一种面向连接的、可靠的、基于字节流的传输层通信协议。在抓包分析中,TCP数据包常用于分析网络通信的可靠性、数据完整性以及连接建立与终止的过程。
2)IP(互联网协议):网络层的主要协议,负责数据包的传输和路由选择。通过抓包分析IP数据包,可以了解数据包的来源、目的地以及经过的路由等信息。
(2)HTTP/HTTPS协议
1)HTTP(超文本传输协议):应用层协议,用于在Web浏览器和服务器之间传输超文本内容。抓包技术常用于分析HTTP请求和响应,以了解Web应用的行为和用户与Web应用之间的交互。
2)HTTPS(安全的超文本传输协议):HTTP的安全版本,通过SSL/TLS协议对数据进行加密传输。抓包技术可以捕获HTTPS数据包,但通常需要额外的配置(如安装根证书)来解密和分析数据包内容。
(3)其他常见协议
1)ARP(地址解析协议):用于将网络层地址(如IP地址)解析为链路层地址(如MAC地址)。在抓包分析中,ARP数据包常用于分析网络中的设备发现和地址映射过程。
2)ICMP(互联网控制消息协议):用于在IP网络中传递控制消息和错误报告。抓包技术可以捕获ICMP数据包,以了解网络中的错误和状态信息。
3)DNS(域名系统):用于将域名解析为IP地址。通过抓包分析DNS数据包,可以了解域名的解析过程和查询结果。
4)UDP(用户数据报协议):一种无连接的、不可靠的传输层协议。与TCP不同,UDP数据包不提供数据完整性、顺序性或错误控制机制。然而,在某些应用场景下(如视频流、在线游戏等),UDP因其低延迟特性而得到广泛应用。在抓包分析中,UDP数据包可用于分析这些应用的行为和性能。
4、抓包技术应用支持
选择合适的抓包工具是应用抓包技术的关键。常见的抓包工具有Wireshark、Fiddler、Charles、Burp Suite等。这些工具各有特点,如Wireshark功能强大,支持多种协议和媒体类型;Fiddler则专注于HTTP调试,通过代理方式获取HTTP通讯数据;Charles支持跨平台,可以详细查看和修改HTTP/HTTPS请求等。
5、封包技术应用意义
二、工具介绍
1、Fiddler
Fiddler是一款强大的HTTP调试代理工具,它以代理服务器的形式工作,通过监听和记录HTTP(s)通讯,帮助用户检查、设置断点以及修改所有进出数据(如cookie、HTML、JS、CSS等文件)。Fiddler不仅简单易用,还提供了用户友好的界面和丰富的功能,如支持断点调试、请求构造、性能数据分析等,使得开发人员和测试人员能够轻松地进行Web调试和性能测试。此外,Fiddler还包含一个基于JScript .NET的事件脚本子系统,支持使用.NET框架语言进行扩展,进一步增强了其灵活性和功能性。无论是对于HTTP协议的理解,还是对于Web应用的安全性和性能优化,Fiddler都是一个不可或缺的工具。
官方网站地址:Web Debugging Proxy and Troubleshooting Tools|Fiddler
官网下载地址:Download Fiddler Web Debugging Tool for Free by Telerik
2、Charles
Charles是一款功能强大的网络HTTP/HTTPS监控、反向代理及调试工具,它允许开发者捕获和查看所有通过其代理的HTTP和HTTPS请求及其响应,帮助开发者在开发和调试Web应用时更好地理解HTTP通讯过程。Charles提供了直观的用户界面,让用户可以轻松查看请求和响应的详细信息,如头部信息、请求参数、响应内容等。此外,Charles还支持断点调试、请求修改、SSL/TLS证书管理等高级功能,为开发者提供了极大的便利。无论是对于Web应用的性能优化、安全测试,还是对于API接口的调试和测试,Charles都是一个不可或缺的工具。
官方网站地址:Charles Web Debugging Proxy • HTTP Monitor / HTTP Proxy / HTTPS & SSL Proxy / Reverse Proxy
官网下载地址:Download a Free Trial of Charles • Charles Web Debugging Proxy
3、TCPDump
TCPDump是一款强大的网络数据采集分析工具,它可以将网络中传送的数据包完全截获下来并提供给用户进行分析。TCPDump支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助用户去除无用的信息,从而专注于关键数据包的分析。作为Linux系统中经典的网络分析工具之一,TCPDump以其灵活的数据截取策略和强大的功能,成为系统管理员和网络工程师分析网络、排查问题的重要工具。TCPDump支持多种参数和选项,允许用户根据需要定制数据包的捕获和处理方式,包括指定网络接口、数据包数量、输出格式等。此外,TCPDump还提供了源代码和接口,具备较强的可扩展性,对于网络维护和入侵检测等领域都具有重要意义。
官方网站地址:Home | TCPDUMP & LIBPCAP
4、Burpsuite
BurpSuite是一个功能强大的集成平台,专为Web应用程序的安全测试而设计。它包含了多种工具模块,如Proxy(代理)、Spider(爬虫)、Scanner(扫描器)、Intruder(入侵者)等,这些工具共同协作,覆盖了从目标映射、漏洞发现到漏洞利用的全过程。BurpSuite允许用户捕获、分析、修改和重放HTTP/HTTPS请求,帮助安全研究人员和渗透测试人员深入理解Web应用程序的行为和潜在的安全漏洞。其直观友好的用户界面和强大的可扩展性,使得BurpSuite成为Web应用安全测试领域不可或缺的工具之一。通过BurpSuite,用户可以更有效地识别和修复Web应用中的安全漏洞,提高系统的整体安全性。
官方网站地址:Web Application Security, Testing, & Scanning - PortSwigger
官网社区版下载地址:Professional / Community 2024.6.6 | Releases
5、Wireshark
Wireshark(前称Ethereal)是一款功能强大的开源网络封包分析软件,能够截取并详细显示网络中的数据包信息。这款软件以其全面的协议解析能力著称,支持从网络模型中的链路层到应用层的全面解析,对网络管理员、网络安全工程师、开发者及普通用户都具有重要价值。Wireshark通过WinPCAP(Windows Packet Capture)接口直接与网卡进行数据报文交换,用户可以利用它来分析网络问题、检查信息安全、调试新的通讯协议或学习网络协议知识。此外,Wireshark还提供了强大的过滤器和着色规则功能,帮助用户快速定位和分析所需的数据包信息。自1998年首次发布以来,Wireshark凭借其免费、开源和强大的功能,赢得了全球用户的广泛认可和使用。
官方网站地址:https://www.wireshark.org/
官网下载地址:https://www.wireshark.org/download.html
6、科来网络分析系统
科来网络分析系统是一款先进的网络监控与分析解决方案,它提供了全面的网络流量捕获、解析、监控、分析和故障排查功能。该系统能够实时捕获网络中的数据包,并运用其强大的协议解析能力,将数据包内容转化为易于理解的信息,帮助网络管理员、安全专家及IT运维人员快速了解网络状况,诊断网络问题,识别潜在的安全威胁。科来网络分析系统不仅支持常见的网络协议,还具备强大的扩展性,可以根据用户需求定制解析新协议。其直观的图形界面和丰富的报表功能,使得用户能够轻松查看网络流量分布、协议使用情况、会话统计等信息,为网络优化、性能评估和安全审计提供有力支持。
官方网站地址:网络分析,网络安全分析,网络业务性能分析 - 科来
官网下载地址:下载科来网络分析免费产品及资源 - 科来
7、WPE封包软件
WPE封包软件是一款专业的网络封包拦截与编辑工具,它允许用户捕获、查看、修改并重发在网络上传输的数据包,广泛应用于游戏调试、网络安全分析以及网络应用测试等领域。通过WPE,用户可以深入了解网络通信的细节,优化网络性能,甚至进行一定程度的网络数据篡改实验,但需注意合法合规使用,避免涉及违法活动。
三、案例演示
1、浏览器网络监听
这里以Chorme浏览器作为演示,首先打开浏览器访问百度首页(www.baidu.com),然后按下键盘上的F12按键开启开发者工具,会出现一个侧边栏,这里会显示多个功能,其中网络(Network)功能是我们本次关注的对象。
点开网络功能会出现一些资源文件,这些就是浏览器解析的页面,如果没有出现就刷新一下,每一个资源文件分别对应一个请求包和返回包,可以点击一个数据包查看详细信息,这就是所抓到的数据包。
2、工具抓包
如果涉及到一些APP、小程序、PC软件就需要用到一些专业工具来抓包,并且在处理涉及HTTPS协议的网络通信时,由于HTTPS相较于HTTP增加了SSL/TLS层来加密和验证数据传输的安全性,这导致了对HTTPS流量进行抓包(也称为数据包捕获或分析)时,需要先安装证书。
(1)Fiddler
HTTP协议数据包可以直接抓取,HTTPS协议数据包需要安装证书,这里略过,只做展示。
1)抓取APP的数据包(模拟器演示)
2)抓取Web数据包
(2)Charles
1)抓取APP的数据包
2)抓取Web数据包
(3)burpsuite
1)抓取APP的数据包
2)抓取Web数据包
3、网络接口、其他协议抓包
由于Fiddler、Charles、BurpSuite是专为Web应用设计的抓包软件,如果要抓取其他协议的包,例如ICMP数据包就需要其他软件来辅助。这里演示两款,分别为Wireshark和科来网络分析系统。这里以ICMP数据包作为演示:
(1)Wireshark
(2)科来网络分析系统
4、封包演示
封包软件也可以对数据包进行操作,不需要代理就可以支持模拟器,需要找到对应的模拟器进程就可以进行封包操作,发送功能可以将已经做过的操作重复一次。