تعرف على المزيد عن كتاب بيني تشارني «الأمن السيبراني رأسًا على عقب»

اعرف أكثر
نستخدمُ الذكاء الاصطناعي في ترجمات الموقع، ومع أننا نسعى جاهدين لبلوغ الدقة قد لا تكون هذه الترجمات دقيقةً بنسبة 100% دائمًا. تفهّمك لهذا الأمر هو موضع تقدير لدينا.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS

بقلم OPSWAT

CVE-2025-8088 هي ثغرة أمنية تتعلق بـ"اجتياز المسار" في برنامج WinRAR وتؤثر على الإصدارات السابقة للإصدار 7.13. ويتيح استغلال هذه الثغرة لملف مضغوط مصمم خصيصًا تجاوز عملية التحقق من صحة اسم الملف والمسار أثناء استخراج الملفات المضغوطة، مما يؤدي إلى كتابة محتوى يتحكم فيه المهاجم في مواقع محددة على وحدة تخزين NTFS. وفي ظل ظروف معينة، يمكن استغلال هذه القدرة على الكتابة لتنفيذ تعليمات برمجية عن بُعد.

أجرى زملاء برنامج زمالة OPSWAT التابع لـ OPSWAT تحليلاً تقنياً للثغرة الأمنية CVE-2025-8088. وتُبيّن نتائج هذا التحليل لآليات RAR5 و NTFS (ADS) مسار عملية الاستخراج وطريقة معالجة ADS التي تؤدي إلى عمليات كتابة غير آمنة، كما تلخص إرشادات عملية للتخفيف من المخاطر ومعالجتها موجهة لممارسي الأمن السيبراني والمؤسسات.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS

مقدمة عن CVE-2025-8088

يُعد WinRAR أحد أكثر برامج الأرشفة استخدامًا على نظام ويندوز. وهو يدعم الحفاظ على البيانات الوصفية الخاصة بنظام الملفات NTFS واستعادتها، مثل ADS (تدفقات البيانات البديلة). توجد الثغرة الأمنية CVE-2025-8088 في آلية معالجة ADS في إصدارات محددة من WinRAR. وفي الإصدارات المعرضة للخطر، يمكن لأرشيف ضار أن يؤثر على معرف التدفق المستخدم أثناء الاستخراج، حيث يؤدي عدم كفاية عمليات توحيد المسار والتحقق من صحته في سير عمل إنشاء ADS إلى تمكين اختراق الدليل.

يُصنف CVE-2025-8088 على أنه مشكلة ذات خطورة عالية، حيث تبلغ درجته الأساسية وفقًا لنظام CVSS v4.0 8.4 (عالية)، مما يعكس احتمال حدوث تأثير أمني ملموس في حالة قيام المستخدم باستخراج ملف مضغوط مصمم خصيصًا باستخدام إصدار معرض للخطر من برنامج WinRAR.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS

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

تدفقات البيانات البديلة في نظام الملفات NTFS

NTFS (New Technology File System) is the default filesystem for modern versions of Windows. Compared to FAT-based filesystems, NTFS supports advanced capabilities including ACLs (access control lists), EFS encryption, compression, hard links, reparse points (junctions and symlinks), and ADS.

ADS is an NTFS feature that allows a single file or directory to contain multiple independent streams of data. The primary, user-visible content is stored in the unnamed default stream, commonly represented as ::$DATA, while additional named streams can be accessed using the syntax:

اسم_الملف.امتداد:اسم_الدفق

These named streams are not normally visible in standard Windows Explorer views, but they are fully supported by the filesystem and can be enumerated using supported tooling. For instance, dir /R can display alternate streams.

WinRAR supports extracting archive entries that include ADS syntax. When such entries exist within an archive, WinRAR writes the corresponding content into the target file’s alternate stream during extraction.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS

فهم بنية ملفات RAR5

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

الكتلة = الرأس + (مساحة إضافية اختيارية) + (مساحة بيانات اختيارية)

يستخدم RAR5 عدة أنواع من الكتل. وأنواع الكتل ذات الصلة في CVE هي:

  • رأس الملف (النوع 2): يصف إدخال ملف في الأرشيف (الاسم/المسار، والخصائص، والطوابع الزمنية، ومعلمات الضغط)، وتليها بيانات محتوى الملف
  • رأس الخدمة (النوع 3): رؤوس تكميلية اختيارية تُخزّن بيانات وصفية إضافية مرتبطة بالأرشيف أو بمدخل ملف معين، مثل ADS

يتم تمثيل ADS في نظام الملفات NTFS بواسطة رأس خدمة (النوع 3)، يُشار إليه بـ STM. وتحتوي منطقة بيانات رأس الخدمة على بايتات دفق ADS الخاصة بمدخل الملف الأساسي.

بصورة مبسطة:

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 1. ADS في نظام الملفات NTFS

التحليل الفني (CVE-2025-8088)

سير عمل استخراج ملفات RAR5

WinRAR processes RAR5 archives as a sequence of blocks. During extraction, it iterates over these blocks, parses each block header, and validates header integrity using the embedded CRC32 before continuing. After a file entry is processed, WinRAR decompresses and writes the base file content to the disk, then determines whether additional NTFS-related metadata must be applied via associated service records. When an ADS (Alternate Data Stream) record is present, such as an STM service entry, WinRAR enters the ADS-handling path, combines the base file path with the stream name to form the ADS target, and creates the stream.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 2. مخطط تدفق الاستخراج العام الذي أعيد بناؤه أثناء التحليل، بما في ذلك فرع معالجة ADS.

في الثغرة الأمنية CVE-2025-8088، يكمن السبب الجذري في أن عملية إنشاء دفق ADS تستدعي API Windows API () باستخدام مسار مستمد من البيانات الوصفية التي يتحكم فيها الأرشيف، مما يجعل عملية إنشاء مسار ADS والتحقق من صحته غير كافية لمنع اختراق النظام.

تحديد مسار رمز ADS ("STM")

أجرى زملاؤنا من طلاب الدراسات العليا مجموعة من التحليلات الثابتة والديناميكية في بيئة مختبرية خاضعة للرقابة باستخدام برنامج WinRAR 7.12. وقد حددوا موقع المنطق المتعلق بـ ADS من خلال البحث عن علامة الخدمة "STM" في الملف الثنائي، ثم تأكدوا من مسار الكود الخاص بعملية الاستخراج أثناء وقت التشغيل.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 3. موقعان في الكود يشيران إلى السلسلة "STM"، ويستخدمان لتحديد المعالجة المتعلقة بـ ADS.

من خلال وضع نقطة توقف عند الإشارة "STM" التي ظهرت أثناء استخراج أرشيف يحتوي على بيانات ADS، تم الوصول إلى نقطة التوقف هذه بشكل متكرر، مما يؤكد أن مسار التنفيذ هذا يتم استدعاؤه خلال سير العمل العادي لعملية الاستخراج.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 4. التحليل الديناميكي: الوصول إلى نقطة التوقف في مسار معالجة ADS.

عند الوصول إلى نقطة التوقف، تم استخدام مكدس استدعاءات أداة التصحيح لإعادة بناء تسلسل الدالات التي تم استدعاؤها بعد إجراء "استخراج" في واجهة مستخدم WinRAR، مما أرسى نقطة ارتكاز واضحة لمعالجة الكتل اللاحقة ومسار تنفيذ ADS.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 5. تسلسل المكالمات المسترجع بعد تشغيل عملية الاستخراج في WinRAR، والذي استُخدم لتحديد مسار رمز ADS.

تحليل الرأس والتحقق من صحة CRC32

يقوم WinRAR بمعالجة كل كتلة RAR5 من خلال قراءة رأس الكتلة، والتحقق من صحة حقول السلامة، وإحالتها إلى معالج خاص بنوع الكتلة. تظهر نقطة الدخول الخاصة بمعالجة الكتلة ومنطق تحليل الرأس المرتبط بها في الأشكال من 6 إلى 10، حيث يقوم WinRAR بتعيين مؤشر الملف إلى إزاحة الكتلة الحالية، وقراءة بايتات الرأس الأولية — التي تتضمن نوع الرأس وحجمه — والتحقق من سلامة الرأس باستخدام CRC32 قبل المتابعة.

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

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 6. نقطة الدخول لمعالجة الكتل أثناء الاستخراج.
التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 7. ضبط مؤشر ملف الأرشيف والبدء في تحليل الرأس.
التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 8. تحليل بايتات الرأس الأولية والتحقق من صحة CRC32 للرأس.

أثناء عملية الهندسة العكسية، لوحظ أن روتين CRC32 يتصرف بشكل متسق مع تطبيق CRC32 القياسي على غرار zlib. عمليًا، يُعد فحص CRC32 هذا بمثابة بوابة للتحقق من سلامة البيانات. فإذا تم تعديل حقول الرأس، يجب تحديث قيمة CRC32 المضمنة لضمان قبول WinRAR للرأس ومواصلة المعالجة.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 9. تفاصيل تنفيذ CRC32 (القائم على الجداول) المستخدمة أثناء فحص السلامة.

بعد التحقق من صحة رأس CRC32، يواصل المحلل استخراج المعلومات المتبقية في الرأس، مثل الحجم بعد فك الضغط وطريقة الضغط والسمات الأخرى.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 10. تحليل حقول الرأس الإضافية (الأحجام، والعلامات، وطريقة الضغط، ومجموعات المراجعة الاختيارية).

بعد الانتهاء من تحليل الرأس والتحقق من صحته، يقوم WinRAR بمعالجة نص الكتلة استنادًا إلى نوع الرأس الذي تم تحليله وإشاراته.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 11. حلقة تقوم بفك ضغط محتوى الملف وكتابته أثناء الاستخراج.

في الثغرة الأمنية CVE-2025-8088، يتم تطبيق التحقق من سلامة الرؤوس قبل أن يقوم WinRAR بإرسال البيانات إلى معالج كتلة الخدمة الذي يعالج سجلات ADS.

إنشاء إعلانات عبر كتلة الخدمة ("STM")

يتم الوصول إلى مسار معالجة ADS عندما يواجه WinRAR كتلة خدمة. تستخدم كتل الخدمة قيمة نوع الكتلة 3. وعند اكتشاف كتلة خدمة، يقوم WinRAR بإرسالها إلى معالج رؤوس الخدمة.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 12. كتل خدمة التوزيع (النوع 3)، التي يمكنها حمل سجلات ADS.

داخل معالج الخدمة، يتحقق WinRAR من اسم الخدمة. وعندما يتطابق اسم الخدمة مع "STM"، يُعامل السجل على أنه حمولة ADS، وينتقل التنفيذ إلى روتين إنشاء ADS.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 13. إرسال سجل الخدمة: عندما يتطابق اسم الخدمة مع "STM"، يبدأ WinRAR في إنشاء سجل ADS.

ثم يستخرج WinRAR اسم الدفق من سجل الخدمة ويجمعه مع مسار الملف الأساسي لإنشاء هدف ADS النهائي. في الإصدارات السابقة للإصدار 7.13، يُظهر التحليل أن اسم الدفق لا يخضع لعملية تنقية كافية، مما يسمح لتسلسلات الاختراق بالتأثير على تحديد مسار الهدف الناتج.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 14. استرداد اسم دفق ADS من سجل الخدمة.
التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 15. دمج المسار الأساسي واسم المجرى لتكوين مسار ADS.

بعد إنشاء الهدف، يقوم WinRAR بإنشاء الدفق عبر روتين مساعد يستدعي API CreateFileW الخاصة بنظام Windows، ثم يكتب بايتات ADS باستخدام WriteFile. وإذا كان المسار الذي تم تحديده يقع خارج دليل الاستخراج الذي اختاره المستخدم، فسيقوم WinRAR بإنشاء الدفق/الملف الوجهة وتعبئته بمحتوى يتحكم فيه المهاجم.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 16. موقع الاستدعاء الذي يبدأ عملية إنشاء ADS أثناء الاستخراج.
التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 17. أداة مساعدة لإنشاء ADS تقوم بتفويض المهمة إلى روتين إنشاء الملف.
التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 18. تم استدعاء API في API برمجة تطبيقات Windows ( API باستخدام المسار المُعد مسبقًا لإنشاء دفق ADS.
التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 19. كتابة محتوى ADS الذي يتحكم فيه المهاجم في الدفق الذي تم إنشاؤه حديثًا عبر WriteFile.

باختصار، يكشف مسار عمل استخراج ADS عن مشكلتين متعلقتين بالأمان. أولاً، لا يتم تنقية اسم دفق ADS بشكل كافٍ، مما يسمح لتسلسلات الاختراق بالتأثير على المسار النهائي للهدف. ثانياً، يقوم WinRAR بإنشاء دفق ADS عن طريق استدعاء الدالة CreateFileW() باستخدام مسار مشتق من البيانات الوصفية التي يتحكم فيها الأرشيف.

تسمح هذه الشروط مجتمعة لأرشيف مُعدّ خصيصًا بتوجيه هدف الدالة CreateFileW() خارج دليل الاستخراج المقصود وكتابة محتوى يتحكم فيه المهاجم إلى موقع يخضع لسيطرته. وإذا كان الوجهة عبارة عن دليل ذي صلة بالاستمرارية (مثل مجلد "Startup" الخاص بالمستخدم)، فإن عملية الكتابة هذه قد تتيح تنفيذ تعليمات برمجية لاحقة عند تسجيل الدخول التالي أو إعادة التشغيل، اعتمادًا على نوع الحمولة وتكوين النظام.

سيناريو الهجوم

يمكن استغلال الثغرة الأمنية CVE-2025-8088 عمليًا في الحالات التي يحث فيها المهاجم المستخدم على استخراج ملف RAR مزور باستخدام إصدار معرض للخطر من برنامج WinRAR. ومن أكثر طرق التوصيل شيوعًا الهندسة الاجتماعية، مثل التصيد الاحتيالي، الذي يدفع الضحية إلى الوثوق بملف ضار والبدء في استخراجه على نظام حيوي.

يحتوي الأرشيف على سجل خدمة ADS ("STM"). وقد تم تصميم اسم مسار البيانات الخاص به بحيث يتضمن دلالات العبور. أثناء عملية الاستخراج على نظام NTFS، يقوم برنامج WinRAR بمعالجة سجل ADS واستخلاص مسار البيانات الهدف من البيانات الوصفية التي يتحكم فيها الأرشيف. ونظرًا لأن عملية تكوين مسار ADS هذا لا تخضع لقيود كافية، فقد يقع الهدف الذي تم تحديده خارج نطاق دليل الاستخراج الذي اختاره المستخدم، بما في ذلك المواقع الحساسة مثل مجلد بدء التشغيل الخاص بالمستخدم.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 20. مسار الهجوم من البداية إلى النهاية: التسليم، والاستخراج عبر برنامج WinRAR المعرض للخطر، والاستمرار عبر مجلد "البدء".

إثبات صحة الفكرة

To demonstrate CVE-2025-8088, our graduate fellows prepared a crafted RAR archive file containing an ADS (“STM”) service record with attacker-controlled fields. This archive is structured with an ADS stream name that includes traversal sequences. This structure influences the final target location during ADS handling, including the path passed to CreateFileW() when the stream is created. To ensure that WinRAR accepts the modified metadata and reaches the ADS-processing path, the relevant header CRC32 values are recomputed so the archive passes header integrity validation.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 21. مثال على الحقول التي يتحكم فيها المهاجم داخل أرشيف مُعد خصيصًا لاستغلال مسار ADS.

عندما يدخل إصدار WinRAR معرض للخطر في روتين معالجة ADS أثناء استخراج الأرشيف المُعد مسبقًا، فإنه يقوم بكتابة المحتوى الذي يتحكم فيه المهاجم إلى الوجهة المحددة مسبقًا بدلاً من دليل الاستخراج المقصود الذي اختاره المستخدم. وبعد الاستخراج، يتحدد تنفيذ الحمولة وفقًا لتنسيقها ودلالات التنفيذ الخاصة بالوجهة المحددة مسبقًا. على سبيل المثال، المواقع التي قد تقوم بتنفيذ المحتوى عند تسجيل الدخول التالي أو إعادة التشغيل.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 22. عرض إثبات المفهوم: حمولة تمت كتابتها في Startup عبر مسار الاستخراج المعرض للخطر.

الاصلاح

يمكن التخفيف من مخاطر الثغرة الأمنية CVE-2025-8088 عن طريق تحديث برنامج WinRAR إلى إصدار تم إصلاحه (7.13 أو أحدث) على جميع الأجهزة الطرفية الخاضعة للإدارة. وإذا تعذر إجراء التحديث في الوقت المناسب، فيجب النظر في اتخاذ إجراءات تعويضية، مثل:

  • تقييد أو تعطيل الاحتفاظ بـ ADS في أدوات الأرشفة عندما لا يكون ذلك ضروريًا
  • تقييد استخراج الملفات المضغوطة غير الموثوق بها على البيئات المعزولة
  • تطبيق مبدأ "أقل امتياز ممكن" (تجنب تشغيل أدوات الاستخراج أدوات )
  • مراقبة المجلدات المهمة، مثل مجلدات التشغيل، بحثًا عن عمليات كتابة غير متوقعة ناشئة عن عمليات استخراج الملفات من الأرشيف

من أجل vulnerability detection المبكر vulnerability detection المتقدمة vulnerability detection بسرعة، يدعم MetaDefender عمليات الإصلاح العاجلة من خلال تحديد الأجهزة التي تعمل بإصدارات WinRAR المعرضة للخطر وإبراز التحديثات المطلوبة. وتقوم قدراته القوية في إدارة الثغرات الأمنية والتحديثات، التي تدعم أكثر من 1100 تطبيق، بالتعرف بشكل استباقي على الأجهزة الطرفية التي تعمل بأنظمة تشغيل أو تطبيقات خارجية غير محدثة أو لم يتم تصحيحها، وتقدم الحلول الموصى بها.

تتيح Vulnerability Management للمسؤولين الكشف السريع عن الثغرات الأمنية، وتحديد أولويات الإصلاح، ودفع عملية الترقية إلى إصدار تم تصحيحه، مما يقلل من مخاطر هجمات الكتابة على الملفات التي تستهدف الأرشيفات، مثل CVE-2025-8088، والتهديدات المماثلة التي تستهدف نقاط النهاية.

التحليل الفني لثغرة CVE-2025-8088: كتابة ملفات عشوائية في WinRAR عبر ADS
الشكل 23.Endpoint MetaDefender Endpoint إصدارات WinRAR المعرضة للخطر ويوصي بالتحديث إلى إصدار تم إصلاحه.

ابق على اطلاع دائم OPSWAT!

Sign up today to receive the latest company updates, stories, event info, and more.