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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
FortiLPE — استغلال لتصعيد الامتيازات محليًا لـ CVE-2025-62676. | Kitploit
أدوات/GitHubGitHub/spaceplant/fortilpe
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالالحركة الجانبيةما بعد الاستغلالتطوير الحمولاتاستغلال الملفات الثنائية
GitHubspaceplant/fortilpe

FortiLPE

استغلال لتصعيد الامتيازات محليًا لـ CVE-2025-62676.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

الوصف

استغلال إثبات مفهوم (PoC) لتصعيد الامتيازات محلياً لثغرة CVE-2025-62676 / EUVD-2025-206993 التي تستهدف FortiClient VPN الذي يعمل على Windows. ينفّذ حمولة (payload) في سياق SYSTEM من سياق مستخدم عادي عبر كتابة ملف XML عشوائية. تم اختبار إثبات المفهوم ضد إصدار FortiClient 7.4.0 على Windows 11 Pro. الإصدارات التالية معرّضة للخطر وفقاً للبائع:

  • 7.4.0 - 7.4.4
  • 7.2.0 - 7.2.12
  • 7.0 (جميع الإصدارات)

تم الإبلاغ عن الثغرة عبر مبادرة Trend Micro Zero Day Initiative: https://www.zerodayinitiative.com/advisories/ZDI-26-115/

النشرة الرسمية من Fortinet: https://fortiguard.fortinet.com/psirt/FG-IR-25-661

التبعيات

  • يتم استخدام OffWinLib كوحدة فرعية (submodule) تابعة لـ Git.
  • مكتبات تنفيذ Windows (WIL) عبر حزمة NuGet الخاصة بـ Microsoft.Windows.ImplementationLibrary. إذا لم يتم تثبيتها تلقائياً أثناء البناء، قم بتشغيل nuget restore.

كيفية البناء

  1. استنسخ المستودع باستخدام git clone --recursive.
  2. تقوم الحمولة الافتراضية بتشغيل cmd /c whoami > C:\whoami.txt. لتغيير ذلك، عدّل dllmail.cpp في مشروع ExecDLL.
  3. قم ببناء حل FortiLPE.

طريقة الاستخدام

  1. قم بتشغيل FortiLPE.exe´.
  2. إذا لم يتم تنفيذ الحمولة، فمن المحتمل أن السبب هو أن CloudExperienceHostBroker.exe تم تنفيذه منذ آخر إعادة تشغيل قبل تشغيل إثبات المفهوم. أعد تشغيل الجهاز وابدأ مهمة CreateObjectTask يدوياً (Start-ScheduledTask -TaskPath \Microsoft\Windows\CloudExperienceHost -TaskName CreateObjectTask). انظر التفاصيل التقنية لمزيد من التفاصيل.

لقطة شاشة لقطة شاشة

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

يقوم FortiClient بإنشاء قناة مسماة (named pipe) FC_{F18F86FD-7503-4564-80CF-B6B199519837} يُسمح للمستخدمين العاديين بالتواصل معها. يقتصر التواصل على العمليات التي تعمل من مجلد برنامج FortiClient (C:\Program Files\Fortinet\FortiClient)، ولكن يمكن تجاوز ذلك عن طريق حقن كود في عملية FortiTray.exe الجارية، والتي تعمل من مجلد البرنامج. من خلال هذه القناة المسماة، من الممكن تشغيل نسخة من FCConfig.exe بصلاحيات SYSTEM مع وسائط يتحكم فيها المستخدم.

من خلال تحديد عملية غير معروفة (-o A)، سيقرأ FCConfig.exe ملفاً مستهدفاً (-f FILE) ثم يكتبه مرة أخرى إلى نفس الموقع (لست متأكداً من سبب حدوث ذلك). بتعيين الهدف إلى junction/رابط رمزي (symlink) يشير إلى ملف محدد وتعيين قفل oplock على الملف، يمكن جعل العملية تتبع الرابط الرمزي، وتقرأ الملف، وتُطلق قفل oplock. ويمكن بعد ذلك تعديل الرابط الرمزي ليشير إلى موقع مختلف. عندما يتم تحرير قفل oplock، سيتتبع FCConfig.exe الرابط الرمزي إلى الوجهة الجديدة ويكتب الملف هناك، مما يؤدي إلى كتابة ملف عشوائية. يجب أن يكون الملف بصيغة XML صالحة (يبدو أنه يمر عبر منسق XML).

لتحويل كتابة ملف XML العشوائية إلى تنفيذ كود بصلاحيات مرتفعة، يتم كتابة بيان تطبيق (application manifest) لإعادة توجيه تحميل DLL لعملية تعمل بصلاحيات SYSTEM. تم اختيار C:\Windows\System32\CloudExperienceHostBroker.exe لهذا الغرض:

  • يمكن تنفيذه بواسطة مستخدم عادي عن طريق تشغيل المهمة المجدولة \Microsoft\Windows\CloudExperienceHost\CreateObjectTask.
  • يعمل بصلاحيات SYSTEM.
  • لا يحتوي على بيان (manifest) مضمّن (والذي سيكون له الأولوية).
  • لا يحتوي بالفعل على بيان خارجي (والذي سيكون محمياً على الأرجح بواسطة TrustedInstaller).
  • لا يتم تشغيله تلقائياً. عند تنفيذ ملف قابل للتنفيذ بدون بيان تطبيق، سيتذكر Windows أنه لا ينبغي تحميل أي بيان لهذا الملف حتى إعادة التشغيل التالية. لذا ما لم نرغب في الانتظار حتى إعادة التشغيل التالية لتنفيذ الكود الخاص بنا، يجب أن نستهدف ملفاً قابلاً للتنفيذ لا يتم تشغيله كثيراً.

يستغل إثبات المفهوم الثغرة باستخدام الخطوات التالية:

  1. قم بإسقاط ملف DLL وكيل ("ExecDLL") على القرص بديلاً عن oleaut32.dll ويحتوي على حمولة.
  2. اكتب بيان تطبيق على القرص يعيد توجيه oleaut32.dll إلى "ExecDLL".
  3. أنشئ junction/رابط رمزي يشير إلى البيان.
  4. عيّن قفل oplock على البيان.
  5. احقن DLL في FortiTray.exe ليرسل أمراً إلى القناة المسماة FC_{F18F86FD-7503-4564-80CF-B6B199519837} مع الوسائط -f APPLICATION_MANIFEST_PATH -o A.
  6. انتظر حتى يقوم FCConfig.exe بتفعيل قفل oplock.
  7. عدّل الرابط الرمزي ليشير إلى C:\Windows\System32\CloudExperienceHostBroker.exe.manifest.
  8. حرر قفل oplock. سيقرأ FCConfig.exe الآن بيان التطبيق ويكتبه إلى هدف الرابط الرمزي الجديد.
  9. شغّل مهمة \Microsoft\Windows\CloudExperienceHost\CreateObjectTask. سيتم الآن تنفيذ CloudExperienceHostBroker.exe بصلاحيات SYSTEM، وسيخبر النظام بتحميل "ExecDLL" بدلاً من ، وسيتم تحميل "ExecDLL" وتنفيذه في سياق .

ملاحظات

  • لا يحاول إثبات المفهوم تنظيف ملفات DLL التي تم إسقاطها في المجلد المؤقت. يمكن حذفها يدوياً بعد ذلك.
تنزيل الأداة
CloudExperienceHostBroker.exe.manifest
oleaut32.dll
SYSTEM