抓包
(虽然很多人会,但可看看)
是什么
抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。
(摘自:百度百科)
作用
通过对网络上传输的数据进行抓取,可以对其进行分析,对于软件的Debug很大的帮助。当然也可以通过抓取用户发送的涉及用户名和密码的数据包来获取用户的密码。
(1)网络通讯的真实内容
(2)网络故障分析
(3)程序网络接口分析
(4)木马通讯数据内容
在web方面的题目中作用颇多。
~~指出两个常用的工具:
(1)burp suite
( 2 )wireshark:
-----------------------(一)---------------
对bp的简介:
下载burpsuite,然后打开:
有一个界面:
(某版本)
有很多模块:
看这一栏:这是工具栏、有bp的最主要功能:
从左到右依次为:
- arget(目标)——显示目标目录结构的的一个功能
- Proxy(代理)——拦截HTTP/S的代理服务器,作为一个在浏览器和目标应用程序之间的中间人,允许你拦截,查看,修改在两个方向上的原始数据流。
- Spider(蜘蛛)——应用智能感应的网络爬虫,它能完整的枚举应用程序的内容和功能。
- Scanner(扫描器)——高级工具,执行后,它能自动地发现web 应用程序的安全漏洞。
- Intruder(入侵)——一个定制的高度可配置的工具,对web应用程序进行自动化攻击,如:枚举标识符,收集有用的数据,以及使用fuzzing 技术探测常规漏洞。
- Repeater(中继器)——一个靠手动操作来触发单独的HTTP 请求,并分析应用程序响应的工具。
- Sequencer(会话)——用来分析那些不可预知的应用程序会话令牌和重要数据项的随机性的工具。
- Decoder(解码器)——进行手动执行或对应用程序数据者智能解码编码的工具。
- Comparer(对比)——通常是通过一些相关的请求和响应得到两项数据的一个可视化的“差异”。
- Extender(扩展)——可以让你加载Burp Suite的扩展,使用你自己的或第三方代码来扩展Burp Suit的功能。
- Options(设置)——对Burp Suite的一些设置
- Alerts(警告)——Burp Suite在运行过程中发生的一写错误
(摘自:)这个总结的好。
----------------------------------------演示抓包:--------------------------------------
1.主要在代理模块:
点击Proxy:
第二行左边第一个,intercept(中文:阻拦 n/v),意为阻拦:
打开的话,页面无法跳转。在抓包之前,要给浏览器配置代理服务器。原理参考:
先给edge配置:
这个端口号设置成跟bp的options一样:
添加并设置监听端口:
chrome和firefox大相径庭
输入账号密码:
然后会卡在这里动不了,因为bp开了拦截:
可以趁机查看请求头。点击forword,前进到下一页面。之后得到的响应头文件,在HTTP history 里:
点击:
抓到了包。数据包。
对其内容点右键,可以送到intruder进行暴力破解,或者送到repeater进行修改请求头等操作。
下图,对请求头修改:
好,这是bp的简单操作。已经可以简单的抓包,查看和修改数据了。
抓包可以看到更多响应头的信息,在ctf中wen中可有一些应用,由于对数据包的拦截,抓包可以对展示的数据进行分析,也可以利用bp的插件对表单以及验证码进行暴力破解和绕过。还有网络协议分析。
---------------------------------2.wireshark-------------------------------------------说wireshark.
wireshark是一个好用的抓包工具。
wireshark与burpsuite(后简称bp)有所区别,
在平台方面:
bp是基于java开发的,因此需要下载前去搞定jdk,就算是搭建java平台,由于bp基于java,所以其具有java的跨平台性,可移植性好的特点。同时bp的设置,使其对于数据响应头和请求头的操作十分便利。
wireshark在多平台上也能运行,但基于其设计,其对数据帧的处理十分方便。在抓包方面,bp是在设置代理服务器的端口进行监听,而wireshark则直接在网卡中进行数据的收集。
bp的插件十分适合进行渗透测试,其侧重于响应头和请求头的特性,对分析sql注入漏洞和http协议等有很大帮助。
wireshark对数据帧的灵活操作,使其对流量分析十分方便,同时,流量分析是ctf以及网络安全中十分重要的一个部分和出题形式。
这一栏有来源,终点,协议,以及内容等信息(如下图):
点击其可以查看任意数据帧的详细内容,也可以任意导出成文本文件。
工具栏有很多信息,和工具。其中过滤器十分重要,过多的数据不好判断。
界面上那个显示过滤器,可以过滤已经抓好的数据包。输入http就会只显示http的包。同时重要的是捕获过滤器,其可以限制所抓的包,以免抓的包太多。点击工具栏的 “捕获(C)”,再点击捕获过滤器。进行设置:
限制要捕获的协议,或者限制是指定的端口。也可以只是http或者https,ipv4,ipv6都可以指定。
CTF中常有从数据帧中的python代码等,出题,或是以USB协议,icmp协议等等出题,扩展比较广泛。
对ping报文的icmp协议分析,和对USB协议鼠标数据分析也常见到。比如这次UNCTF2020 mouse_click就是典型的鼠标流量分析。