
إثبات المفهوم لثغرة CVE-2021-40346، والتي توضح تهريب طلبات HTTP في HAProxy عبر تجاوز عدد صحيح، مع بيئة قائمة على Docker لتجاوز ضوابط الوصول.
يسمح تجاوز السعة الصحيحة في التمثيل الداخلي لطلب الرأس بتهريب طلبات HTTP. يقدم هذا المستودع إثباتًا للمفهوم (PoC) مبنيًا باستخدام docker-compose مع صورتين من Docker: واحدة بإصدار ضعيف من HaProxy (في هذه الحالة 2.2.16) وأخرى بخادم ويب Flask يستخدم Gunicorn كـ WSGI. من خلال استغلال الثغرة، نتمكن من الوصول إلى صفحة /admin، التي يتم حظر طلباتها بواسطة HaProxy عبر قاعدة معرفة من قبل المستخدم.
قم بتشغيل الأوامر التالية في الطرفية لتشغيل حاوية HaProxy وصورة خادم Flask:
docker-compose up
أرسل الحمولة إلى HaProxy:
cat payload | nc localhost 8000
لإيقاف التشغيل، قم بتشغيل:
docker-compose down