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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-61228 — تحليل تقني وإثبات المفهوم لاستغلال CVE-2025-61228، وهي ثغرة تصعيد الصلاحيات في آلية التحديث التلقائي لـ SuperDuper!، مع شرح مفصل لسطح الهجوم وإرشادات التخفيف. | Kitploit
أدوات/GitHubGitHub/graypixel2121/cve-2025-61228
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالتحليل البرمجيات الخبيثةالأوراق والأبحاثالتعلم والتعليم
GitHubgraypixel2121/cve-2025-61228

CVE-2025-61228

تحليل تقني وإثبات المفهوم لاستغلال CVE-2025-61228، وهي ثغرة تصعيد الصلاحيات في آلية التحديث التلقائي لـ SuperDuper!، مع شرح مفصل لسطح الهجوم وإرشادات التخفيف.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-61228

تنبيه

يبدو أن هذه المشكلة أسوأ مما يقترحه المطور، لذا لا أريد أن يضيع هذا الجزء في التفاصيل. ذكر المطور في مدونته:

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

هذا ليس صحيحًا في الواقع، فاستغلال هذه الثغرة لا يتطلب تقديم تحديث حقيقي من خلال وسائل شرعية. لا تقبل أبدًا تحديثًا يقدمه SuperDuper الإصدار 3.10 والأقدم! أشرح هذا بمزيد من التفصيل أدناه.

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

الوصف

من مدونة المطور:

يمكن اختطاف آلية التحديث التلقائي لدينا وإقناعها بتثبيت حزمة ليست SuperDuper.

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

من CVE:

مشكلة في Shirt Pocket SuperDuper! الإصدار V.3.10 والإصدارات السابقة تسمح لمهاجم محلي بتنفيذ تعليمات برمجية عشوائية عبر آلية تحديث البرامج

الإسناد

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

المراجع

  • تحديث أمان SuperDuper v3.11
  • CVE-2025-61228

درجة CVSS 3.1: 7.8 عالية (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)

التخفيف

لتجنب هذه الثغرة، إما احذف تطبيق SuperDuper! أو طبق التحديث 3.11.

تحذير: يجب تنزيل التحديث مباشرة من موقع المطور لتجنب هذه الثغرة.

إخلاء مسؤولية

يتم توفير تحليل الاستغلال وإثبات المفهوم هذا للأغراض التعليمية فقط. استخدمه على مسؤوليتك الخاصة.

ملخص عالي المستوى

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

التحليل: خداع 'المخادع'

تعليق المطور "Gatekeeper لا يتحقق من تلك المصادقة" مضلل. يأتي Gatekeeper في الصورة عندما تحاول فتح شيء تم تنزيله في متصفح، لكن هذا لا ينطبق على آلية تحديث البرامج الداخلية للتطبيق. إنها مسؤولية المطور بنسبة 100% للتحقق من أي شيء يقوم برنامجه بتنزيله وتثبيته على جهاز الكمبيوتر الخاص بك – لا تدع هذا المطور يخدعك لتصدق أن هذا فشل من Gatekeeper. بالوصول إلى صلب الاستغلال، يمكن للمهاجم خداع SuperDuper لتثبيت حزمة بديلة، ويحدث ذلك بامتيازات مرتفعة. من المفترض أيضًا أن يعمل بوصول كامل للقرص، لأن SuperDuper يتطلب وصولًا كاملاً للقرص لفعل أي شيء.

تنص مدونة المطور أيضًا:

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

بهذا التعليق، افترضت أنه ربما لن يكون من الممكن إعادة إنتاج هذا الاستغلال لأنه يجب أن يتضمن تغييرات من جانب الخادم في آلية التحديث والتي كان من الممكن إجراؤها جنبًا إلى جنب مع نشر التصحيح 3.11. بمعنى آخر، من أجل منع الإصدارات الأقدم من البرنامج من التأثر بهذه الثغرة، بالتأكيد قاموا بتعطيل آلية التحديث، أليس كذلك؟ حسنًا... قمت بتنزيل إصدار أقدم من SuperDuper، وعندما فتحته، استُقبلت فورًا بإشعار تحديث† – نقرة واحدة بعيدًا عن استغلال محتمل. وجدت هذا مثيرًا للاهتمام – كيف سيتم حماية أي شخص يستخدم إصدارًا أقدم من التطبيق من هذه الثغرة إذا لم يتم تعطيل آلية التحديث التلقائي؟ (هذا مرتبط بـ "التنبيه" الذي ذكرته في بداية هذه المقالة، سأعود لهذا السؤال في النهاية)

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

تقدمت للأمام. عند تطبيق الترقية، يتم تسجيل الآليات الخلفية بشكل مفيد في سجل SuperDuper، لذا سنبدأ من هناك لنرى كيف يعمل:

 Transcript  : UpgradeTranscript.plist
 Ext Logging : Disabled
 PHASE: 1. Upgrade Application
 ...ACTION: Downloading upgrade package
 ......COMMAND => Downloading update package...
 ......COMMAND => Preparing update package
 ...ACTION: Installing upgrade package
 ......COMMAND => Preserving SDAgent owner and mode bits
 ......COMMAND => Installing upgrade package
 installer[3148] <Debug>: Product archive /tmp/SuperDuper!.pkg trustLevel=350

تستخدم العديد من تطبيقات Mac التي تعيش خارج Mac App Store إطار Sparkle مفتوح المصدر لإدارة تحديثات البرامج بشكل آمن. ليس SuperDuper. يمكننا أن نرى هنا أنهم قاموا بإنشاء إطار خاص بهم، وهذا مثال رائع على لماذا هذا غالبًا خيار سيء. آليات ترقية البرامج أهداف رئيسية للاستغلالات، لذا فهي تتطلب الكثير من الوقت والخبرة للحفاظ عليها آمنة. "UpgradeTranscript.plist" هو مرجع لملف داخل تطبيق SuperDuper يحدد سلسلة من أوامر الطرفية التي يستخدمها SuperDuper لتنزيل وتطبيق التحديث:

cat /Applications/SuperDuper\!.app/Contents/Resources/Transcripts/UpgradeTranscript.plist
<?xml version="1.0" encoding="UTF-8"?>
...
/usr/bin/curl SDHTTPproxy.Host --silent --show-error --output /tmp/superduper.tar.gz -L SDdownloadURL

cd /tmp; if [ -d superduper_install ]; then /bin/rm -rf superduper_install; fi; /bin/mkdir superduper_install; /usr/bin/tar xzf superduper.tar.gz; /bin/rm /tmp/superduper.tar.gz; if [ -d '/Library/Receipts/SuperDuper!.pkg' ]; then /bin/rm -rf '/Library/Receipts/SuperDuper!.pkg'; fi;

/usr/sbin/installer -allow -verboseR -dumplog -pkg '/tmp/SuperDuper!.pkg' -target / >&amp;1 2>&amp;1;

if [ ! -d '/tmp/superduper_install/SuperDuper!.app' ]; then /usr/bin/ditto -rsrc '/Applications/Utilities/SuperDuper!.app' '/tmp/superduper_install/SuperDuper!.app'; fi

/bin/rm -rf '/tmp/SuperDuper!.pkg' '/tmp/superduper_install' '/Library/Receipts/SuperDuper!.pkg'; if [ SDAppBundle.'Path != '/Applications/Utilities/SuperDuper!.app' -a -d '/Applications/Utilities/SuperDuper!.app' ]; then /bin/rm -rf '/Applications/Utilities/SuperDuper!.app'; fi

أرى على الأقل أربع مشاكل في هذه الأوامر والإجراءات:

  1. يتم تنزيل superduper.tar.gz، ولكن لا يتم التحقق من صحته أبدًا.
  2. يتم بعد ذلك فك ضغط الأرشيف، ولكن هناك حالة سباق قابلة للاستغلال هنا بعد إنشاء مجلد superduper_install حيث يمكننا استبدال حزمة بديلة.
  3. حزمة "SuperDuper!.pkg" التي تم فك ضغطها أيضًا لا يتم التحقق من مجموعها الاختباري.
  4. يقوم المطور باستدعاء أمر المثبت مع علامة "-allow" ("السماح بتثبيت حزمة موقعة بشهادة غير موثوقة (أو منتهية الصلاحية")، ويطلب فعليًا بشدة من شخص ما استغلال أي من نقاط الضعف هذه.

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

# Use of the "/tmp/superduper_install" installation folder offers convenient cleanup by SuperDuper
mkdir /tmp/superduper_install
mkdir /tmp/superduper_install/script
mkdir /tmp/superduper_install/pkg

# create the script. /Library is only writable by root, so we will attempt to create a test file there.
# Getting the content of the Desktop folder requires a user-granted privacy privilege, so we will also attempt
# to pull that folder list into a text file on the desktop to see if we have full disk access. Note that to 
# effectively test this part of the exploit, you should revoke Full Disk Access from Terminal.
cd ~; export home=`pwd`
printf '#!/bin/bash\ntouch /Library/test\n' > /tmp/superduper_install/script/preinstall
printf "ls -l $home/Desktop > $home/Desktop/private_data\nexit 0\n" >> /tmp/superduper_install/script/preinstall
chmod a+x /tmp/superduper_install/script/preinstall
تنزيل الأداة