من الممكن اجتياز SafetyNet، حتى بعد إجراء تعديلات واسعة النطاق مثل إجراء عملية التجذير أو تثبيت ذاكرة ROM مخصصة. تحقق من كيفية القيام بذلك هنا!
روابط سريعة
- ما هي شبكة الأمان؟
- تعثر SafetyNet وعواقبه
- كيفية اجتياز شهادة SafetyNet على أجهزة Android
- تَحَقّق
لقد كان تجاوز SafetyNet منذ فترة طويلة بمثابة لعبة القط والفأر بين Google ومجتمع تعديل ما بعد البيع لنظام Android. يحب المصلحون تعديل البرامج الموجودة على هواتفهم - وهي عملية تتضمن عادةً فتح أداة تحميل التشغيل كخطوة أولى. ولكن هذا بدوره يؤدي إلى تعطيل SafetyNet، مما قد يتسبب في توقف العديد من التطبيقات الشائعة والمهمة البعض منهم يعملون على الهاتف بشكل مفهوم حيث أنهم يعتمدون على بيئة مقاومة للعبث تنفيذ.
على وجه الدقة، SafetyNet هو مخصص لمطوري التطبيقات، ولكن يمكنهم اختيار استخدامه أم لا. بالنسبة للمستخدم النهائي العادي، يمكنك إما التخلي عن إمكانية التعديل لنظام Android واجتياز اختبارات التوافق مع SafetyNet أو البقاء منبوذًا من قبل ناشري التطبيق. إذا كنت تتساءل عن كيفية تجاوز SafetyNet حتى بعد إجراء عملية التجذير أو تثبيت ROM مخصص على جهازك، من المفترض أن يساعدك هذا الدليل في ذلك.
ما هي شبكة الأمان؟
تم تصميم Android ليعمل دون منح المستخدم النهائي أي نوع من التحكم المتميز في الأنظمة الفرعية الأساسية. في حالة تمكن الشخص الذي يستخدم جهاز Android من الحصول على وصول مماثل إلى الوصول الإداري (AKA "المستخدم المتميز") كما هو الحال في Linux، يمكنهم بشكل أساسي تغيير أو استبدال تطبيقات النظام الأساسية و إعدادات. من وجهة نظر مطور التطبيقات، فهذا يعني أن الجهاز الذي يعمل عليه التطبيق يمكن أن يتعرض للاختراق. يجب أن يكون هناك نوع من نظام الكشف عن إساءة الاستخدام لفحص بيئة البرامج والأجهزة الخاصة بالجهاز والتأكيد لمطوري التطبيقات أن كل شيء على ما يرام. وهنا يأتي دور SafetyNet.
على الرغم من أن التعديل يعد جزءًا لا يتجزأ من نظام Android البيئي، إلا أنك تحتاج أحيانًا إلى درجة عالية من الدقة في نظام التشغيل لتلبية قيود السياسات الأمنية. SafetyNet عبارة عن مجموعة من واجهات برمجة التطبيقات (APIs) للكشف عن إساءة الاستخدام الموجودة في خدمات Google Play. عن طريق الاتصال ب واجهة برمجة تطبيقات شهادة SafetyNet، يمكن لتطبيقات الطرف الثالث التحقق مما إذا كان قد تم التلاعب ببيئة البرامج الخاصة بالجهاز بأي شكل من الأشكال. تتحقق واجهة برمجة التطبيقات (API) من أشياء مختلفة مثل حالة إلغاء قفل أداة تحميل التشغيل، وعلامات ثنائيات المستخدم المتميز، والمزيد لمقارنة الحالة الحالية لجهاز Android المستهدف والتحقق من سلامة البيئة مقابل قيمة "آمنة" معروفة على جانب الخادم.
والجدير بالذكر أن جوجل قد أعلنت بالفعل عن خطط لذلك التخلص التدريجي من شبكة الأمان. سيتم استبداله بـ لعب النزاهة API بحلول عام 2024. ومع ذلك، لا يزال العديد من مطوري التطبيقات يستخدمون SafetyNet لاكتشاف التلاعب، مما يعني أنها بالفعل عقبة صعبة لعشاق التعديل.
تعثر SafetyNet وعواقبه
يؤدي عدد من أحداث الخروج عن تكوين المخزون لجهاز Android في النهاية إلى تعثر SafetyNet. حتى إذا قمت فقط بإلغاء قفل أداة تحميل التشغيل بهاتفك وتركت نظام التشغيل المثبت في المصنع دون تغيير، فقد لا يزال بإمكانك الحصول على "عدم تطابق ملف تعريف CTS" (حيث يشير CTS إلى جالتوافق تEST سuite) الخطأ الذي يؤدي إلى فشل فحص SafetyNet. اذا أنت قم بتجذير جهاز Android الخاص بك أو استبدل البرامج الثابتة الخاصة بالمخزون بـ a مدمج مخصص، سينتهي بك الأمر إلى حد كبير بحالة فشل SafetyNet. ونتيجة لذلك، لا يمكنك استخدام التطبيقات والألعاب التي تستخدم التحقق من صحة SafetyNet على الجهاز. وينطبق هذا بشكل خاص على التطبيقات المصرفية والتطبيقات المالية الأخرى مثل جوجل الدفع، لأنها تعتمد بشكل صارم على نتيجة شهادة SafetyNet ولن تسمح للمستخدمين بتشغيل التطبيق في بيئة يبدو أنه تم التلاعب بها من أجل الأمان.
عندما يتعلق الأمر بالألعاب، يستخدم المطورون SafetyNet لتقييم سلامة الجهاز حتى يتمكنوا من منع اللاعبين المارقين من الغش أو تعديل المتغيرات داخل اللعبة للحصول على مزايا غير عادلة. أخيرًا وليس آخرًا، يمكنك أيضًا العثور على أمثلة حيث يكون الناشرون ببساطة إساءة استخدام آلية الكشف عن التلاعب في Google بدون سبب عملي، ولهذا السبب يرغب المستخدمون المتميزون في تجنب إجراءات الكشف.
باختصار، سيتعين على مجتمع التعديل الاختيار بين الوصول إلى الجذر/ذاكرة القراءة فقط المخصصة/النوى/إلخ. أو التطبيقات والألعاب المفضلة لديهم. قد يبدو هذا بمثابة نهاية تطوير ما بعد البيع على Android، ولكن هناك أمل.
كيفية اجتياز شهادة SafetyNet على أجهزة Android
نظرًا لأن Google تقوم دوريًا بتحديث العمود الفقري لـ SafetyNet Attestation API، فلا توجد طريقة عالمية حقيقية لتجاوز عمليات التحقق. نظرًا لأن القيود تعتمد على عدد من العوامل، فيمكنك تمرير SafetyNet على بيئة معدلة انتحال أهم المعلمات على الأجهزة القديمة، ولكن نفس الحيلة قد لا تعمل على الإطلاق على الأجهزة الأحدث الهواتف. لقد توصل مجتمع تطوير ما بعد البيع إلى عدد من الأساليب لاجتياز اختبارات SafetyNet، ولكن ضع في اعتبارك أن أ التنفيذ العام غير ممكن بسبب الطبيعة المتغيرة باستمرار لواجهة برمجة التطبيقات لمكافحة إساءة الاستخدام. هذه لعبة Dot and Ditto - في يوم ما، سوف تتقدم، وفي اليوم الآخر، لن تكون كذلك.
ومع التحرك التدريجي نحو شهادة الأجهزة وفقًا لاستراتيجية Google، تعتمد Google على أمان بيئة التنفيذ الموثوقة (TEE) للهاتف أو وحدة أمان الأجهزة المخصصة (HSM) لاكتشاف التلاعب. العثور على ثغرة أمنية حرجة في البيئة الآمنة المعزولة لأحد الأجهزة واستغلالها للانتحال لا يمكن أن تكون الاستجابة من جانب العميل الخاصة بـ SafetyNet أسلوبًا ممكنًا، ولكن هذا هو XDA، مما يعني أنه لا يوجد نقص في طرق مبتكرة لتجاوز العقبة.
فيما يلي بعض الطرق المعروفة لتمرير SafetyNet:
1. استعادة البرامج الثابتة الأصلية وإعادة تشغيل أداة تحميل التشغيل
ربما تكون هذه هي الطريقة الأبسط لتجاوز SafetyNet، لكن لها مميزاتها وعيوبها. كل ما عليك فعله هو العثور على البرنامج الثابت الصحيح لجهاز Android الخاص بك، ثم تحديثه، وأخيرًا إعادة قفل أداة تحميل التشغيل. بالطبع، ستفقد معظم أجراس وصفارات مشهد التعديل، ولكن هذا أمر منطقي في الواقع عندما تحتاج إلى استخدام جهازك في بيئة مُدارة ذات سياسات أمنية صارمة، أو أنك تحاول بيع جهازك جهاز.
إذا كنت لا تعرف خطوات العودة إلى المخزون لهاتفك، فنوصيك بالتوجه إلى منتديات XDA، ابحث عن جهازك، ثم ابحث عن دليل لتثبيت البرنامج الرسمي وقفل الجهاز محمل الإقلاع. بينما نقدم دروسًا لـ وميض سامسونج غالاكسي و جوجل بيكسل الأجهزة، لا توجد طريقة عالمية للقيام بذلك، لأنها تختلف من هاتف لآخر. بمجرد استعادة تكوين المخزون، من المفترض أن تكون قادرًا على اجتياز SafetyNet دون أي تلاعب.
2. باستخدام ماجيك
إذا كنت تمتلك هاتفًا ذكيًا قديمًا يعمل بنظام Android، ماجيسك هو أفضل رهان لك لتمرير SafetyNet دون الكثير من المتاعب. على الرغم من أن الإصدار المستقر الحالي من Magisk لم يعد يحتوي على MagiskHide (منذ إصدار v24)، فلا يزال بإمكانك الالتزام بالإصدار v23.x واستخدام MagiskHide لإخفاء حالة الجذر من التطبيقات. علاوة على ذلك، يمكنك تثبيت وحدات ماجيسك يحب MagiskHide تكوين الدعائم لتغيير/تزوير بصمة الجهاز من أجل تمرير SafetyNet. لمعرفة المزيد، قم بإلقاء نظرة على موضوع دعم الوحدة واتبع التعليمات المقدمة من المطور (المطورين).
نتحدث عن إهمال MagiskHide، DenyList تعد ميزة Magisk تطورًا مثيرًا للاهتمام، حيث تسمح للمستخدمين بتعيين قائمة من العمليات حيث يرفض Magisk إجراء المزيد من التعديلات ويعيد جميع التغييرات التي أجراها. ومن خلال التكوين المناسب، يمكن استخدامه أيضًا لتمرير SafetyNet في بعض السيناريوهات.
يمكنك العثور أدناه على بعض الخطوات العامة لاستخدام DenyList لتمرير SafetyNet:
- افتح تطبيق Magisk وانقر على أيقونة الترس للوصول إلى قسم الإعدادات.
- قم بالتمرير لأسفل وتمكين زيجيسك و فرض قائمة الرفض.
- الآن حدد تكوين DenyList الخيار، اضغط على النقاط الثلاث في الأعلى، واختر إظهار تطبيقات النظام.
- قم بتكوين DenyList لمتجر Google Play وخدمات Google Play.
- إذا كنت بحاجة إلى إخفاء حالة الجذر من تطبيقات معينة، فيجب عليك تحديدها أيضًا في هذه المرحلة.
- انتقل إلى إعدادات > تطبيقات ومسح بيانات جميع التطبيقات التي قمت بتكوينها في DenyList.
- أعد تشغيل الجهاز. بعد التشغيل، اتصل بالإنترنت، واترك الهاتف خاملاً لفترة من الوقت، ثم تحقق من حالة SafetyNet.
منتديات Magisk XDA
3. باستخدام Universal SafetyNet Fix
يعد تجاوز تقنية التصديق SafetyNet المدعومة بالأجهزة من Google أمرًا صعبًا بعض الشيء، ولكنه ليس مستحيلًا تمامًا. ال إصلاح شبكة الأمان العالمية المشروع من قبل عضو XDA الكبير kdrag0n ينجز هذا العمل الفذ بذكاء من خلال فرض التصديق الأساسي على الشيكات المدعومة بالأجهزة. بكل بساطة، يقوم بإدخال بعض الرموز في عملية Play Services ويسجل مزود تخزين مفاتيح مزيفًا يتجاوز المزود الحقيقي.
والجدير بالذكر أن Universal SafetyNet Fix يعتمد على Magisk عندما يتعلق الأمر باجتياز جزء التصديق الأساسي. يدعم المطور Zygisk فقط لأحدث إصدار، مما يعني أنك بحاجة إلى Magisk 24 أو أحدث لاستخدامه. ومع ذلك، يمكنك أن تجد أيضا ريرو- الإرث المتوافق يبني في الريبو المرتبط أدناه.
إصلاح شبكة الأمان العالمية: جيثب الريبو ||| موضوع مناقشة XDA
عملية التثبيت بسيطة للغاية:
- تأكد من أن لديك تثبيت Magisk فعالاً على الجهاز المستهدف.
- قم بإزالة وحدة MagiskHidePropsConfig إذا كانت مثبتة.
- قم بتثبيت وحدة Universal SafetyNet Fix وأعد تشغيل الجهاز.
- قد تحتاج إلى مسح بيانات GMS بعد إعادة التشغيل.
- ربح!
والجدير بالذكر أن عضو XDA الكبير ديسبلاكس توصلت إلى شوكة من Universal SafetyNet Fix التي يمكنها تجاوز Play Integrity API. إنه مفيد بشكل خاص لمستخدمي Google Pixel الحاليين. قم بإلقاء نظرة على الروابط أدناه لمزيد من التفاصيل.
شوكة Universal SafetyNet Fix من Displax: جيثب الريبو ||| موضوع مناقشة XDA
4. شاميكو
هناك أيضًا Shamiko - وحدة قيد التنفيذ مكتوبة أعلى Zygisk (Magisk في عملية zygote). فهو يقرأ قائمة التطبيقات المراد إخفاؤها من قائمة Magisk المحظورة لإخفاء جذر Magisk وZygisk نفسه ووحدات Zygisk للتحايل على SafetyNet. ومع ذلك، لا يمكن لـ Shamiko أن يعمل إلا بعد تعطيل ميزة DenyList.
يمكنك تنزيل إصدارات ما قبل النشر لـ Shamiko من مستودع GitHub الخاص بـ LSPosed.
تحميل شاملكو
نظرًا لأن Shamiko هي في الأساس وحدة Magisk، فمن السهل جدًا تطبيقها:
- تأكد من تمكين دعم Zygisk ضمن Magisk.
- قم بتثبيت Shamiko كوحدة Magisk عادية وأعد التشغيل.
- قم بتكوين DenyList لإضافة عمليات للاختباء وفقًا لمتطلباتك. ومع ذلك، لا تقم بتشغيل فرض قائمة الرفض خيار.
- لتكوين وضع القائمة البيضاء، ما عليك سوى إنشاء ملف فارغ كما يلي:
/data/adb/shamiko/whitelist
- هذا كل شيء!
5. ih8sn
في حالة عدم رغبتك في الاعتماد على Magisk لاجتياز شهادة SafetyNet، يمكنك تجربة الوظيفة الإضافية التجريبية المسماة ih8sn. بعد التقديم، يمكن أن ينتحل عددًا كبيرًا من قيم الدعامات للتحايل على عمليات التحقق من SafetyNet مثل وحدة MagiskHide Props Config، ولكن لا يوجد اعتماد على Magisk في المقام الأول.
أداة ih8sn هي تمت المحافظة عليه بواسطة العديد من مطوري LineageOS، لكن مشروع LineageOS لم يصادق عليه رسميًا بعد. علاوة على ذلك، فهو ليس حلاً جاهزًا للتفليش، لذا تحتاج إلى تهيئته بنفسك قبل التفليش. لمعرفة المزيد، قم بإلقاء نظرة على قاعدة التعليمات البرمجية الخاصة به باتباع الرابط أدناه.
ih8sn جيثب الريبو
فيما يلي الخطوات الضرورية التي يجب عليك اتباعها لإجراء تثبيت ناجح لـ ih8sn:
- قم بتنزيل أحدث إصدار من ih8sn من هنا.
- بالنسبة لأجهزة Android الحديثة، اختر متغير aarch64.
- افتح الملف المضغوط باستخدام أرشيفي مناسب، وانتقل إلى
/system/etc/ih8sn.conf
، قم بتحرير الملف باستخدام محرر النصوص لتغيير BUILD_FINGERPRINT و اسم المنتج المتغيرات.- تصفح المنتدى الفرعي لجهازك للحصول على القيم الأكثر ملائمة للمتغير الثنائي.
- احفظ التغييرات وقم بتثبيت ملف ZIP المعدل من خلال استرداد مخصص مثل TWRP.
تَحَقّق
بعد تطبيق إحدى طرق المرور الخاصة بـ SafetyNet المذكورة أعلاه، قد ترغب في التحقق من النتيجة. يأتي تطبيق Magisk مع خيار لبدء روتين التحقق من SafetyNet مباشرة من القائمة الرئيسية، وهو أمر مفيد حقًا. يمكنك أيضًا اختيار تطبيق مفتوح المصدر اسمه ياسناك (باختصار ل يوآخرون أليست هي سafetyNet أشهادة جhecker) للتحقق من الحالة و (اختياريًا) فحص استجابة JSON.
مجاني.
4.9.
هذه هي الطريقة التي يمكنك من خلالها تمرير SafetyNet على هاتفك. مع القليل من الوقت والصبر، من الممكن استعادة إمكانات التعديل الحقيقية لنظام Android دون القلق بشأن فشل شهادة SafetyNet. سنقوم بتحديث هذا الدليل بمزيد من أساليب المرور الخاصة بـ SafetyNet، لذا تحقق مرة أخرى في المستقبل!