
استغلال لإثبات المفهوم لـ CVE-2026-48030، وهو حقن أوامر نظام تشغيل حرج في Pheditor 2.0.1-2.0.3. يتضمن تحليل الكود الضعيف، نص PoC، وإرشادات التصحيح للباحثين في الأمان.
| الحقل | التفاصيل |
|---|
| معرف CVE | CVE-2026-48030 |
| المنتج | pheditor |
| المطور | Hamid Samak |
| الإصدارات المتأثرة | 2.0.1, 2.0.2, 2.0.3 |
| الإصدار المصحح | 2.0.4 |
| شدة الخطورة | حرجة |
| درجة CVSS | 9.9 |
| متجه CVSS | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H |
| رمز CWE | CWE-78 (حقن أوامر نظام التشغيل) |
| اكتشفها | Muslimbek Burxonov |
توجد ثغرة حرجة لحقن أوامر نظام التشغيل في معالج الأوامر الطرفية داخل ملف pheditor.php. يتم ضم المعامل dir المُرسَل عبر POST مباشرةً في دالة shell_exec() دون تعقيم، مما يسمح لمهاجم مُوثَّق بتجاوز القائمة البيضاء TERMINAL_COMMANDS وتنفيذ أوامر نظام تشغيل عشوائية.
pheditor.php، سطر 586:
$command = $_POST['command']; // ✓ تم التحقق من الأحرف الخاصة
$dir = $_POST['dir']; // ✗ لم يتم التحقق منه — ثغرة
// ينطبق التحقق على $command فقط، وليس $dir
if (strpos($command, '&') !== false ||
strpos($command, ';') !== false ||
strpos($command, '||') !== false) {
die(...);
}
// $dir يُحقَن بدون تعقيم داخل shell_exec
$output = shell_exec(
(empty($dir) ? null : 'cd ' . $dir . ' && ')
. $command . ' && echo \ ; pwd'
);
python3 poc.py --target http://TARGET/pheditor.php --password admin
راجع poc.py للحصول على سكريبت الإثبات الكامل.
pheditor.php، سطر 586 — استبدل:
// قبل (معرض للثغرة)
'cd ' . $dir
// بعد (مصحح)
'cd ' . escapeshellarg($dir)
يُقدَّم هذا الإثبات لأغراض تعليمية وبحثية فقط. لا تستخدمه إلا على أنظمة لديك إذن صريح لاختبارها.