请求头内部表示中的整数溢出允许 HTTP 请求走私。本仓库提供了一个使用 docker-compose 构建的 PoC,包含两个 docker 镜像:一个运行存在漏洞版本的 HaProxy(本例中为 2.2.16),另一个运行使用 Gunicorn 作为 WSGI 的 Flask Web 服务器。通过利用该漏洞,我们能够访问 /admin 页面,而该页面的请求本会被 HaProxy 通过用户自定义规则阻止。
在终端中运行以下命令以启动 HaProxy docker 容器和 Flask 服务器镜像:
docker-compose up
将 payload 发送到 HaProxy:
cat payload | nc localhost 8000
如需关闭环境,运行:
docker-compose down