
CVE-2021-40346の概念実証であり、整数オーバーフローを介したHAProxyにおけるHTTPリクエストスマグリングを実証し、Dockerベースの環境でアクセス制御をバイパスします。
ヘッダーリクエスト内部表現における整数オーバーフローにより、HTTPリクエストスマグリングが可能になります。このリポジトリは、docker-composeを使用して2つのDockerイメージ(脆弱性のあるバージョンのHaProxy(この場合は2.2.16)と、WSGIとしてGunicornを使用するFlask Webサーバー)で構築されたPoCを紹介します。この脆弱性を悪用することで、HaProxyがユーザー定義ルールによってブロックしている/adminページにアクセスすることができます。
ターミナルで以下のコマンドを実行して、HaProxy DockerコンテナとFlaskサーバーイメージを起動します:
docker-compose up
ペイロードをHaProxyに送信します:
cat payload | nc localhost 8000
停止するには以下を実行します:
docker-compose down