我想知道 HTTP GET 和 POST 洪水攻击和缓解策略之间的主要区别是什么。
我搜索了很多,但我真的找不到一些关于这些攻击的好文章或例子。
我想知道 HTTP GET 和 POST 洪水攻击和缓解策略之间的主要区别是什么。
我搜索了很多,但我真的找不到一些关于这些攻击的好文章或例子。
当 HTTP 客户端(例如,Web 浏览器)与 HTTP 服务器(Web 服务器)通信时,它会发送多种类型的请求,其中两种主要是GET
和POST
. GET
请求是用于“正常链接”的内容,包括图像;此类请求旨在检索静态数据,URL 指向该数据。当您在 URL 栏中输入 URL 时,aGET
也已完成。
POST
请求与表单一起使用。请求包含POST
参数,这些参数通常取自同一页面上的输入字段。
泛洪时,攻击者希望将目标服务器淹没在众多请求之下,从而使其计算资源饱和。当服务器分配大量资源以响应单个请求时,泛洪效果最佳。由于POST
请求包含参数,它们通常会在服务器上触发相对复杂的处理(例如数据库访问),这对于服务器来说比服务更简单的GET
. 因此,POST
基于 - 的泛洪往往比GET
基于 - 的泛洪更有效(如果请求为 ,则淹没服务器所需的请求更少POST
)。另一方面,GET
请求更为常见,攻击者通常更容易获得(非自愿的)帮助来进行泛洪攻击GET
-flooding(正如@Rory 所说,它只需要一个流行站点上的内嵌图像的链接,并且浏览该站点的每个人都会自动向GET
目标服务器发送请求)。
(当然,任何特定的网站都可以对一些特定的GET
请求进行很多复杂的处理;我在这里只讨论平均行为。)
实际上,这两者之间的唯一区别将是使用的 HTTP 方法(GET 与 POST)。就攻击的简易性而言,还有更多基于 GET 的攻击可行的场景(例如,在链接到目标站点的流行站点上嵌入内嵌图像可能会导致 DoS),但除此之外,如果您寻找通用的有关 HTTP DoS 攻击的文章,它们可能同样适用于两者。