学习文档
https://portswigger.net/burp/documentation/desktop/getting-started/download-and-install
Burp Suite是一款流行的集成式Web应用程序安全测试工具套件,广泛应用于渗透测试、安全审计、黑盒测试和漏洞研究等Web安全领域。它由PortSwigger公司开发,提供可视化界面和扩展机制,支持各种安全测试,可通过代理截获HTTP和HTTPS请求,观察请求和响应,对请求进行修改和重发,协助发现和验证Web应用程序的各种漏洞,如跨站点脚本、SQL注入、文件包含等。
Burp Suite包含了多个工具,如代理、重放器、爬虫、扫描器和拦截器等。其中,代理是最重要的组件之一,可以拦截所有的HTTP/HTTPS请求和响应,对数据进行修改和重发,使测试人员可以更全面地了解Web应用程序的行为。另外,Burp Suite的扫描器可以自动发现应用程序中可能存在的漏洞,提高了测试效率和准确性。
总的来说,Burp Suite是一款功能强大、易于使用的Web应用程序安全测试工具套件,对于Web应用程序的安全测试和评估提供了有力的支持。
下载安装
下载后直接安装运行,社区版免费,专业版收费。
https://portswigger.net/burp/releases/professional-community-2023-4-5
拦截HTTP流量
打开proxy,点击intetcept is off打开拦截开关,点击open browser,burp会打开一个浏览器,访问网页https://portswigger.net
发现网页未加载,是因为被burp拦截了,可以在intercept看到被拦截的请求,要让网页继续加载,点击forward。
如果不想拦截,可以点击intercept is on,关闭拦截。
HTTP history可以看到历史请求
修改HTTP请求
在想要篡改的请求处拦截住请求,修改请求信息,点击forward。(fiddler也有这个功能)
比如在购物网站买东西,本来皮夹克是100美元,但是账户余额50美元,拦住添加到购物车的请求,修改价格,看是否能添加成功。
设置目标scope
使用Burp Repeater重新发送请求
在repeater发送请求查看响应
可以更改参数再次发送请求,尝试发送异常输入看如何响应
运行扫描
只有专业版和企业版支持,社区版本不支持。
https://portswigger.net/burp/documentation/desktop/getting-started/running-your-first-scan
intruder模块
Burp Intruder 是一个强大的工具,用于对网站执行高度可定制的自动化攻击。它使您能够配置一次又一次发送相同请求的攻击,每次将不同的有效负载插入预定义的位置。除此之外,您还可以使用 Intruder 来:
对基于输入的漏洞进行模糊测试。
执行暴力攻击。
枚举有效的标识符和其他输入。
收获有用的数据。
send to intruder
- 在 Burp Suite 中,转到代理 > HTTP 历史选项卡。这显示了自打开 Burp 浏览器以来您在浏览器中发出的请求。
找到POST /login请求。突出显示用户名参数的值,然后右键单击该请求并选择Send to Intruder。 - 点击intruder模块,设置负载位置。
设置负载位置
参数值username现在标记为负载位置。这由值开头和结尾的 § 字符表示。Burp Intruder 在攻击过程中会在这个位置插入 payload。
设置攻击类型
在屏幕顶部,您可以选择不同的攻击类型。现在,只需确保将其设置为Sniper即可。
狙击手攻击将一组有效负载一个接一个地插入到请求中的一个或多个位置 。
添加有效负载
转到有效负载选项卡。
将Payload type设置为Simple list。
在有效负载设置字段中,单击粘贴以将复制的用户名添加到列表中。
在Payload sets部分,您可以看到您添加了多少个 payload,以及这次攻击将发送多少个请求
开始攻击
右上角,单击开始攻击。这将打开一个新的攻击窗口,您可以在其中看到 Burp Intruder 发出的每个请求。
如果选择表中的条目之一,则可以在消息编辑器中查看请求和响应。请注意,该username参数在每个请求中包含与我们的有效载荷列表不同的值。
寻找不规则响应
寻找任何不规则的响应
攻击窗口包含几列,显示有关每个响应的关键信息。
等待攻击完成,然后单击“长度”列的标题对结果进行排序
研究响应
研究响应,注意大多数包含Invalid username错误消息,但具有不同长度响应的响应有Incorrect password错误消息。
这种不同的响应强烈表明该用户名在这种情况下可能有效。
已经有了一个可能正确的用户名,下一个合乎逻辑的步骤是尝试暴力破解密码。
尝试使用您已识别的用户名和候选密码 列表重复此攻击。
说不定能找到一个正确的登录名和密码。
识别XSS攻击
一个SEARCH接口,将SEARCH后的值改为脚本CANARY
查看是否会显示alert弹窗,(如果不显示,说明没有漏洞,如果显示了,说明有漏洞?)