hacktricks/pentesting-web/web-vulnerabilities-methodology/README.md

8 KiB
Raw Blame History

Web漏洞方法论

从零开始学习AWS黑客技术成为专家 htARTEHackTricks AWS红队专家

支持HackTricks的其他方式

在每次Web渗透测试中都存在一些隐藏和明显的可能存在漏洞的地方。本文旨在作为一个检查清单,确认您已经在所有可能的地方搜索漏洞。

代理

{% hint style="info" %} 如今,Web应用程序通常会使用某种形式的中间代理,这些代理可能会被(滥)用来利用漏洞。这些漏洞需要存在一个有漏洞的代理,但通常还需要后端存在一些额外的漏洞。 {% endhint %}

用户输入

{% hint style="info" %} 大多数Web应用程序将允许用户输入一些稍后将被处理的数据。
根据服务器期望的数据结构,某些漏洞可能适用,而另一些可能不适用。 {% endhint %}

反射值

如果输入的数据在响应中以某种方式反映出来,页面可能容易受到多种问题的影响。

其中一些漏洞需要特殊条件,其他只需要数据被反映。您可以在以下链接中找到一些有趣的多语言测试漏洞的示例:

{% content-ref url="../pocs-and-polygloths-cheatsheet/" %} pocs-and-polygloths-cheatsheet {% endcontent-ref %}

搜索功能

如果功能可用于在后端搜索某种数据,也许您可以(滥)用它来搜索任意数据。

表单、WebSockets和PostMsgs

当WebSocket发布消息或表单允许用户执行操作时可能会出现漏洞。

HTTP头

根据Web服务器提供的HTTP头可能存在一些漏洞。

绕过

有一些特定功能,可能需要一些有用的解决方法来绕过它们。

结构化对象/特定功能

某些功能将需要数据以非常特定的格式结构化如语言序列化对象或XML。因此更容易确定应用程序是否可能存在漏洞因为它需要处理这种类型的数据。
如果使用特定格式的输入(如电子邮件标题注入),某些特定功能也可能存在漏洞。

文件

允许上传文件的功能可能容易受到多种问题的影响。
生成包含用户输入的文件的功能可能执行意外代码。
打开由用户上传或包含用户输入的文件可能会导致用户受到威胁。

外部身份管理

其他有用的漏洞

这些漏洞可能有助于利用其他漏洞。

从零开始学习AWS黑客技术成为专家 htARTEHackTricks AWS红队专家

支持HackTricks的其他方式