一套体面的工具对于任何人在任何事情上都有效是必不可少的。通常工具是有限的,并且具有明确定义的角色和用途。但是当涉及到软件工具时,数字很大,使用领域的边界正在缩小。新手很容易对所有可用选项感到困惑,最终得到的工具并不完全支持该目的。将工具与其预期用途编入索引并深入了解针对不同专业水平的建议的指南可能会非常有帮助。
当涉及到 Web 应用程序渗透测试或 Web 应用程序黑客攻击时,尽管有大量可用工具,但基本要求很小。此外,还有一些工具以其可用性而闻名,并且流行且易于使用,以至于每个人都可以在不听取专家意见的情况下使用它们。本文列出了 Web 应用程序渗透测试所需的工具类型以及每种类型的常用工具。
1.拦截代理:
拦截代理位于您的网络浏览器/客户端和网络服务器之间。这里的“客户端”是指除了浏览器之外通过网络进行通信的应用程序。客户端将其请求传输到拦截代理,然后代理将其转发到 Web 服务器。使用拦截代理,您可以在传输过程中查看和修改请求和响应。您还可以决定是转发数据包还是丢弃它。一些著名的拦截代理是:
- 提琴手
- 帕罗斯代理
- BurpSuite 的 Burp 代理
- OWASP ZAP 代理
2. 模糊器:
Fuzzer 是一种用于测试暴力入口点的工具。模糊器将请求的一段作为输入,并在其上运行一组值(称为有效载荷),用选定的段一个一个地替换每个有效载荷,发送请求并显示响应。有效载荷列表可以是一个文件、一组手动输入的值、单个值或具有预定义参数的蛮力机制。
模糊器用于:
- 暴力破解弱登录
- 查找/确认盲XSS
- 查找/确认盲 SQL 注入
- 查找/确认 IDOR 漏洞。
一些流行的模糊器是:
- OWASP ZAP 模糊器
- BurpSuite 的 Burp Intruder
- 模糊
3. 网络蜘蛛/爬虫:
网络蜘蛛或爬虫通过响应中的超链接和其他内容探索网络应用程序,以找出新的端点。这些端点可能旨在隐藏,几乎没有安全措施。找出大量端点有助于增加攻击面。它还有助于找出容易被利用的遗漏、安全性较低和旧的端点。有许多手动技术可以找到端点,例如查看站点地图或sitemap.xml文件、查看robots.txt文件、使用搜索引擎 dorks 等。自动化方法尝试查找连接的组件(从其他端点引用的端点)已经被发现)并将结果与使用手动技术完成的自动发现的结果相结合。流行的爬虫工具有:
- BurpSuite 的 Burp Spider
- 跟踪
- 刮痧
- OWASP ZAP 的网络蜘蛛
4. 请求中继器:
请求转发器允许您探测响应中特定请求参数变化的变化。任务与模糊器相同,但使用中继器则是手动操作。中继器用于:
- XSS 和注入攻击的有效载荷构造。
- 检查 CSRF 的存在。
- 检查用户提供的数据的服务器端验证。
- 了解服务器如何处理略微格式错误的输入或预期输入模式中的异常。
5.熵分析器:
该工具用于分析由 Web 服务器代码生成的令牌的熵或随机性。这些令牌通常用于敏感操作中的身份验证,cookie 和反 csrf 令牌就是此类令牌的示例。理想情况下,这些标记必须以完全随机的方式生成,以便每个可能字符在某个位置的概率均匀分布。这应该按位和按字符实现。熵分析器测试该假设是否正确。它是这样工作的:最初,假设令牌是随机的。然后针对某些特征在某些参数上测试令牌。术语显着性水平被定义为令牌将表现出特征的概率值,低于该特征将拒绝令牌是随机的假设。该工具可用于找出弱标记并枚举它们的构造。