
أداة إثبات مفهوم متعددة الأغراض مبنية على CPU-Z CVE-2017-15303
أمثلة:
ملاحظة: يتوقع سترايكر وجود كلاً من cpuz141.sys و procexp152.sys في نفس المجلد الذي يحتوي على البرنامج.
أنت تستخدمه على مسؤوليتك الخاصة. قد يضع بعض برامج مكافحة الفيروسات الكسولة هذه الأداة كأداة اختراق/برمجيات خبيثة.
يستخدم برنامج تشغيل CPU-Z الداخلي (الإصدار 1.41 وفقًا لـ CVE-2017-15303) للقراءة/الكتابة في الذاكرة الفعلية وقراءة سجلات التحكم في المعالج.
وفقًا للأمر، سيعمل سترايكر إما كـ DSEFix/TDL أو سيعدل كائنات العملية في وضع النواة (EPROCESS).
عند وضع -load، سيستخدم سترايكر برنامج تشغيل موقّع من جهة خارجية من برنامج SysInternals Process Explorer (إصدار برنامج التشغيل 1.52) لوضع شفرة shellcode صغيرة للمحمل داخل معالج IRP_MJ_DEVICE_CONTROL/IRP_MJ_CREATE/IRP_MJ_CLOSE الخاص به. يتم ذلك عن طريق الكتابة فوق الذاكرة الفعلية حيث يوجد معالج التوزيع (dispatch handler) الخاص بـ Process Explorer وتشغيله عن طريق استدعاء IRP_MJ_CREATE (استدعاء CreateFile) الخاص ببرنامج التشغيل. ستقوم شفرة shellcode التي تم تشغيلها بتعيين برنامج التشغيل المُدخل كمخزن مؤقت للكود إلى وضع النواة وتشغيله، وسيكون مستوى IRQL الحالي هو PASSIVE_LEVEL.
أيضًا، مع تعديل طفيف، يمكن استخدام شفرة shellcode لتنفيذ بسيط لقطعة صغيرة من الكود الخاص بك في وضع النواة (غير مطبقة في هذه الأداة).
يأتي سترايكر مع كود مصدر كامل.
لبناء من المصدر، تحتاج إلى Microsoft Visual Studio 2015 U1 والإصدارات الأحدث. لبناء برامج التشغيل، تحتاج إلى حزمة برامج تشغيل Windows 8.1 وما فوق.
لا يوجد دعم باستثناء إصلاحات الأخطاء الحرجة لسترايكر نفسه. لا توجد أي ضمانات على الإطلاق لعمله.
قد يؤدي استخدام هذا البرنامج إلى تعطل جهاز الكمبيوتر الخاص بك (شاشة زرقاء). يتم توفير الملف الثنائي المترجم وكود المصدر كما هو (AS-IS) على أمل أن يكون مفيدًا، ولكن دون أي ضمان من أي نوع.
أي استخدام للبرنامج يكون على مسؤوليتك الخاصة تمامًا.
س: هل يمكن استخدام أي شيء آخر غير برنامج تشغيل Process Explorer لتنفيذ شفرة shellcode؟
ج: نعم، ولكن عليك فحص المرشح بعناية للتأكد من أنه يمكنه تخزين وتنفيذ شفرة shellcode.
س: ماذا عن أحدث إصدارات CPU-Z؟ هل يمكن استخدامها لقراءة/كتابة الذاكرة الفعلية وسجلات التحكم في المعالج؟
ج: تم إعادة تصميم برنامج تشغيل CPU-Z لمعالجة CVE-2017-15303 ولم تعد بعض الوظائف متاحة. ومع ذلك، قد تحتوي الإصدارات القديمة من CPU-Z على نفس الوظيفة.
س: هل هناك أي برامج تشغيل أخرى مماثلة بنفس وظيفة CPU-Z؟
ج: نعم، الكثير منها، مثل WinIO.sys، AsIO64.sys، Asmmap64.sys. جميعها توفر عمومًا وصولًا للقراءة/الكتابة إلى الذاكرة الفعلية بطرق مختلفة (\Device\PhysicalMemory).
س: هل يعمل هذا على كل إصدارات Windows؟ بما في ذلك التي لم تصدر بعد؟
ج: تم اختباره على Windows 7 / 8.1 / 10 حتى RS3. من غير المحتمل أن يعمل في الإصدارات المستقبلية.
س: هل سيتم إضافة دعم Windows 10 NEXT أو Windows XX NEXT؟
ج: غير محتمل.
(c) 2018 Stryker Project