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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-56799 — ثغرة حقن أوامر نظام التشغيل عبر جدولة تنظيف ذاكرة التخزين المؤقت في تطبيق Reolink لسطح المكتب | Kitploit
أدوات/GitHubGitHub/shinycolumn/cve-2025-56799
آليات الاستمراريةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبتحليل البرمجيات الخبيثةاستغلال الملفات الثنائية
GitHubshinycolumn/cve-2025-56799

CVE-2025-56799

ثغرة حقن أوامر نظام التشغيل عبر جدولة تنظيف ذاكرة التخزين المؤقت في تطبيق Reolink لسطح المكتب

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-56799

ثغرة حقن أوامر نظام التشغيل عبر مُجدوِل تنظيف ذاكرة التخزين المؤقت في تطبيق Reolink لسطح المكتب

1. نظرة عامة

Reolink Icon
  • الاسم: تطبيق Reolink لسطح المكتب
  • الإصدار: 8.18.12
  • البائع: Reolink
  • CWE: CWE-78: تحييد غير صحيح للعناصر الخاصة المستخدمة في أمر نظام تشغيل ('حقن أوامر نظام التشغيل')
  • CVSS: 6.5 متوسط
  • سلسلة المتجه: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N

2. الملخص

يحتوي تطبيق Reolink لسطح المكتب (الإصدار 8.18.12) على ثغرة حقن أوامر نظام التشغيل في ميزة مُجدوِل تنظيف ذاكرة التخزين المؤقت (coverCacheClearScheduler). يقوم التطبيق ببناء أمر shell لنظام التشغيل باستخدام مسار مجلد مؤقت يُقرأ من ملف إعدادات موجود داخل %LOCALAPPDATA%. وبما أن قيمة هذا المسار تفتقر إلى التعقيم الصحيح للمدخلات، يمكن للمهاجم التلاعب بها لحقن أوامر نظام تشغيل عشوائية.

يتم تشغيل هذه الثغرة بواسطة المُجدوِل، الذي يعمل تلقائيًا كل يوم في الساعة 3:00 صباحًا، مما يمنح المهاجم استمرارية على النظام. علاوة على ذلك، يتم تنفيذ الأمر المُحقون كجزء من عملية Reolink.exe الشرعية الموقّعة رقميًا، مما يوفر التخفي عبر تفادي اكتشاف حلول الأمان.

3. التفاصيل

يقوم التطبيق بتهيئة مُجدوِل للعمل كل يوم في الساعة 3:00 صباحًا:

root@kitploit:~
{
  key: "clearCoverCacheRegularly",
  value: function () {
    if (this.coverCacheClearScheduler) {
      var e = new Date(),
        t = new Date(
          e.getFullYear(),
          e.getMonth(),
          e.getDate(),
          3,
          0,
          0,
        ).getTime();
      (e.getTime() > t &&
        (t = new Date(
          e.getFullYear(),
          e.getMonth(),
          e.getDate() + 1,
          3,
          0,
          0,
        ).getTime()),
        this.coverCacheClearScheduler.add({
	          id: this.clearCoverCacheTaskId,
          name: "clearCoverCache",
          unit: r.ETaskUnit.DAY,
          interval: 1,
          args: !1,
          execute: this.removeCoverCacheDir,
          nextTime: t,
          isInExact: !0,
        }),
        this.coverCacheClearScheduler.start());
    }
  },
}

تقوم الدالة التي ينفذها المُجدوِل ببناء سلسلة أمر shell باستخدام المنطق التالي:

root@kitploit:~
p(
  "darwin" === process.platform
    ? "rm -rf ".concat(t)
    : "rd /s /q ".concat(t),
  function (t) {
  //...

على نظام Windows، يكون الأمر الناتج:

root@kitploit:~
rd /s /q %LOCALAPPDATA%\Temp\reolink\<TEMP_FOLDER>\playback-covers

على نظام macOS، يكون الأمر الناتج:

root@kitploit:~
rm -rf ~/Library/Caches/reolink/<TEMP_FOLDER>/playback-covers

نظرًا لأن <TEMP_FOLDER> لا يتم تعقيمه بشكل صحيح، يمكن للمهاجم حقن أوامر إضافية عبر التلاعب باسم المجلد، مما يؤدي إلى تنفيذ الأوامر:

root@kitploit:~
rd /s /q %LOCALAPPDATA%\Temp\reolink\& <COMMAND> &\playback-covers
root@kitploit:~
rm -rf ~/Library/Caches/reolink/& <COMMAND>; echo /playback-covers

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

على الرغم من أن التشغيل الأولي صعب نسبيًا، إلا أن الهجوم فعال للغاية بمجرد نجاحه، حيث يوفر استمرارية عبر إعادة تنفيذ الحمولة تلقائيًا كل يوم في الساعة 3:00 صباحًا. وتتعزز هذه الاستمرارية بطبيعة التطبيق كأداة أمان مادية، والتي غالبًا ما تُترك تعمل على مدار الساعة طوال أيام الأسبوع. كما يدعم ميزة "البدء عند الإقلاع"، مما يضمن بقاء الحمولة بعد إعادة تشغيل النظام.

علاوة على ذلك، يحقق المهاجم تخفيًا كبيرًا. يتم تنفيذ الأمر كجزء من عملية Reolink.exe الموثوقة والموقّعة رقميًا، مما يجعله فعالًا للغاية في تجاوز حلول EDR وقوائم السماح للتطبيقات. هذه تقنية كلاسيكية من تقنيات العيش على الأرض (LOTL).

4. إثبات المفهوم (PoC)

يمكن تنفيذ الهجوم عن طريق تشغيل poc.py، الذي يعدّل ملف الإعدادات المحلي. وهذا ممكن من خلال ربط ثغرات أخرى تتعلق بالتشفير غير الكافي (CVE-2025-56801 وCVE-2025-56802)، والتي تُستخدم لفك تشفير ملف الإعدادات وإعادة تشفيره.

عادةً، لن يتم تشغيل الحمولة إلا في الساعة 3:00 صباحًا. ومع ذلك، نظرًا لأن التطبيق لا يستخدم تغليف ASAR، يمكن تصحيح الكود لتشغيل الثغرة فورًا لأغراض العرض التوضيحي.

نتيجة التنفيذ كما يلي:

https://github.com/user-attachments/assets/44bf4d84-b8bf-4f4a-853c-07380ce26783

لمزيد من التفاصيل، يرجى الرجوع إلى CVE-2025-56801 لثغرة توليد IV الخاص بـ AES-CFB وCVE-2025-56802 لثغرة توليد وإدارة مفتاح AES-CFB.

5. التوصيات

لحل ثغرة حقن أوامر نظام التشغيل هذه بشكل جذري، يجب تجنب تضمين القيم المقروءة من مصادر خارجية غير موثوقة، مثل ملفات إعدادات المستخدم، مباشرة في سلاسل أوامر shell لنظام التشغيل. الحل الموصى به هو استبدال استخدام أوامر shell مثل rd أو rm بواجهات برمجة تطبيقات أصلية تتعامل مع المسار كبيانات خالصة، وليس كأمر، مثل fs.rm() في Node.js. هذه الطريقة تقضي تمامًا على هذه الفئة من الثغرات.

إذا كان بناء أمر shell أمرًا لا مفر منه تمامًا، فيجب تنفيذ منطق دفاعي للتحقق الصارم وتعقيم أو تهريب جميع الأحرف الخاصة التي قد تسبب حقن الأوامر، مثل & و| و;.

6. المراجع

  • https://www.cve.org/CVERecord?id=CVE-2025-56799
  • https://nvd.nist.gov/vuln/detail/CVE-2025-56799
  • https://github.com/shinyColumn/CVE-2025-56801
  • https://github.com/shinyColumn/CVE-2025-56802
تنزيل الأداة