神兵利器 - HTTP 请求走私检测工具
2021-08-13 10:54:22 Author: mp.weixin.qq.com(查看原文) 阅读量:40 收藏


文章来源: Khan安全攻防实验室

HTTP 请求走私是一种高危漏洞,是一种攻击者走私模糊的 HTTP 请求以绕过安全控制并获得未经授权的访问以执行恶意活动的技术,该漏洞早在 2005 年就被watchfire发现,后来在 2019 年 8 月重新发现由James Kettle - (albinowax)发现并在DEF CON 27和Black-Hat USA 上展示,要了解有关此漏洞的更多信息,您可以参考他在Portswigger 网站上的详细研究博客. 所以这个安全工具背后的想法是检测给定主机的 HRS 漏洞,检测基于给定排列的时间延迟技术,所以要了解更多关于这个工具的信息,我强烈建议你阅读我的博客文章这个工具。

该工具是使用 python 编写的,要使用该工具,您必须在本地计算机上安装 python 3.x 版。它接受您需要在文本文件中提供的一个 URL 或 URL 列表的输入,并且通过遵循 HRS 漏洞检测技术,该工具具有内置的有效负载,其中包含大约 37 个排列和检测有效负载的 CL.TE 和TE.CL 和对于每个给定的主机,它将使用这些有效载荷生成攻击请求对象,并计算收到每个请求的响应后经过的时间并确定漏洞,但大多数情况下它可能是误报,因此确认您可以使用 burp-suite turbo intruder 的漏洞并尝试您的有效载荷。

安装

git clone https://github.com/anshumanpattnaik/http-request-smuggling.gitcd http-request-smugglingpip3 install -r requirements.txt
usage: smuggle.py [-h] [-u URL] [-urls URLS] [-t TIMEOUT] [-m METHOD]                    [-r RETRY]
HTTP Request Smuggling vulnerability detection tool
optional arguments: -h, --help show this help message and exit -u URL, --url URL set the target url -urls URLS, --urls URLS set list of target urls, i.e (urls.txt) -t TIMEOUT, --timeout TIMEOUT set socket timeout, default - 10 -m METHOD, --method METHOD set HTTP Methods, i.e (GET or POST), default - POST -r RETRY, --retry RETRY set the retry count to re-execute the payload, default

扫描一个网址

python3 smuggle.py -u <URL>

扫描多个网址

python3 smuggle.py -urls <URLs.txt>

检测负载需要更改以使其更准确,那么您可以更新检测数组的 payloads.json 文件中的负载。

"detection": [  {    "type": "CL.TE",    "payload": "\r\n1\r\nZ\r\nQ\r\n\r\n",    "content_length": 5  },  {    "type": "TE.CL",    "payload": "\r\n0\r\n\r\n\r\nG",    "content_length": 6  }]

https://github.com/anshumanpattnaik/http-request-smuggling

侵权请私聊公众号删文



文章来源: http://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&mid=2650520130&idx=3&sn=1f13e86c72d3622a2358703f6ed26ec0&chksm=83badfa6b4cd56b0913afb010abc90690e67357f18d228f50a239508b210c8046d994fe48844#rd
如有侵权请联系:admin#unsafe.sh