
إثبات مفهوم عملي لـ CVE-2026-6664 من كتابة Sonnet 4.6
يحتوي هذا المستودع على إثبات اختراق محلي لتعطل PgBouncer ناتج عن تجاوز عدد صحيح في إصدارات PgBouncer الضعيفة. يقوم إعداد Docker المضمن ببناء PgBouncer 1.25.1، ويبدأ خلفية PostgreSQL، ويمكّن مصادقة SCRAM-SHA-256، ويشغّل poc.py ضد PgBouncer.
هذا مخصص للاختبارات المخبرية الخاضعة للرقابة فقط. لا تقم بتشغيله على أنظمة لا تملكها أو ليس لديك إذن صريح لاختبارها.
poc.py - عميل Python لإثبات الاختراق.docker-compose.yml - خدمات PostgreSQL المحلية وPgBouncer ومشغل PoC.postgres/init.sql - ينشئ مستخدم قاعدة البيانات الاختباري.pgbouncer/Dockerfile - يبني PgBouncer الضعيف 1.25.1.pgbouncer/pgbouncer.ini - تكوين PgBouncer باستخدام مصادقة SCRAM.pgbouncer/gen_userlist.py - يولد مدقق SCRAM حتمي.poc.py يدويًا من المضيفقم ببناء المختبر وتشغيله:
docker compose up --build
ملف compose يبدأ:
6432.لتشغيل الخدمات فقط وتنفيذ PoC يدويًا:
docker compose up --build postgres pgbouncer
python3 poc.py 127.0.0.1 6432
عندما يصطدم عملية PgBouncer الضعيفة باستجابة SASL الأولية غير الصالحة، يجب أن يبلغ العميل عن إعادة تعيين الاتصال أو أن يصبح PgBouncer غير قابل للوصول. يتحقق PoC من هذه الحالة ويطبع ما إذا تم تأكيد التعطل.
أوقف وأزل حاويات المختبر:
docker compose down
الإعدادات الافتراضية لـ PoC:
127.0.0.16432testusertestdbهدف مخصص:
python3 poc.py <host> <port>