阅读须知
本文的知识内容,仅供网络安全从业人员学习参考,用于已获得合法授权的网站测试,请勿用于其它用途。请勿使用本文中的工具、技术及资料,对任何未经授权的网站、系统进行测试,否则,所造成的直接或间接后果,均由您自行承担。
系列说明
本系列文章为Burpsuite 靶场测试教学。我们将基于Burpsuite提供的实验靶场,结合TangGo的各种工具对其进行复现和测试,以帮助你掌握TangGo在各类网络安全测试场景中的应用技巧。
靶场说明
在上篇文章中,我们介绍了根据网站登录提示差异枚举存在的账号。本文中,我们将继续延用此靶场,通过 TangGo 的独特功能,更便捷更高效的得到测试数据。那我们如何更高效的测试出数据呢?请看对比流程图:
(流程图)
通过对比流程图,我们可以明确得出以下结论:在基础篇中,我们采取了以下步骤:首先枚举用户名,一旦获取到正确的用户名,我们会继续枚举该用户名的密码,最终成功登录。然而,是否存在一种更为高效的方法,能够一步到位地直接获取到正确的用户名和密码呢?确实,按照传统的思路,我们可能会尝试将多个用户名与多个密码进行交叉匹配以获取数据。但是对于不存在的用户名,我们根本不需要去暴力破解密码,所以这种方法不仅耗时,而且还会多出很多不必要的测试请求。
在 TangGo 的 HTTP模糊测试工具中,我们能够通过设定特定的发包流程来优化这一过程。具体来说,当用户名不存在时,工具将不再进行密码的暴力破解,而是仅在用户名正确的情况下对其进行密码的暴力破解。此外,TangGo 工具还允许我们设置匹配规则,从而能够直接精确地筛选出正确的用户名和密码。这样,我们就不再需要在大量的返回数据条目中逐一查找正确的数据,从而大大提高了效率。
本文中我们将详细讲解如何通过 HTTP模糊测试工具的实用功能更高效便捷的得到测试数据。
使用实操
因为延用之前靶场且“抓取数据包”步骤一致,所以这里我们就不在赘述,详细步骤请参考根据网站登录提示差异枚举存在的账号,此处我们直接从“参数设置”开始讲解。
参数设置
启动HTTP模糊测试工具后,我们将按照以下步骤进行详细的设置:
- 对用户名和密码进行变体设置。
- 在发包后流程中,设置<关键节点条件判断>流程,跳过不存在的用户名的后续测试流程(不进行密码破解) 。
- 设置匹配规则,以便从测试结果中直接筛选出正确的用户名和密码组合。
步骤 1- 设置请求参数
对需要枚举的用户名和密码进行标记,这里标记“username”字段的值“aa”和“password”的字段值“b”: