شناسه:
EMULATOR_GOLDFISHدسته: شبیهسازی، پروفایلها و جداسازی وضعیت در RKNHardering 2.10.0: بررسی فعال نقش در حکم نهایی: متوسط
این صفحه پیادهسازی واقعی RKNHardering 2.10.0 را توضیح میدهد. در آن مشخص شده است چه اقدامهایی بدون روت ممکناند، چه چیزهایی به روت نیاز دارند و کدام راهکار فقط یک سیگنال را کاهش میدهد، بیآنکه VPN را بهطور کامل پنهان کند.
ro.hardware و ro.product.board از طریق کد بومی خوانده میشوند. اگر هرکدام شامل goldfish یا ranchu باشد، پروب goldfish و یک finding بازبینی با اطمینان زیاد تولید میکند.
زیررشتهٔ goldfish یا ranchu در یکی از دو property دیده شود.
Goldfish و Ranchu پلتفرمهای شاخص Android Emulator هستند؛ بنابراین این سیگنال از هیوریستیک عمومی fingerprint قویتر است.
تأثیر این خط بر گزارش: این خط بهتنهایی حکم نهایی صادر نمیکند، اما needsReview=true را تنظیم و شاهدی با اطمینان متوسط اضافه میکند.
ممکن است سازندهٔ برد آزمایشی نام مشابهی بهکار ببرد. یک شبیهساز غیراستاندارد نیز میتواند پروفایل سختافزاری دیگری داشته باشد.
این خط باید همراه با سیگنالهای مجاور ارزیابی شود. پاکبودن نتیجهٔ یک API بهتنهایی Java Binder، libc، netlink خام/فراخوانی مستقیم سامانه، procfs/sysfs، سوکتهای محلی و نشانههای سمت سرور را همزمان پوشش نمیدهد.
برای پرهیز از این دسته نشانهها، از دستگاه فیزیکی با build تولیدی استفاده کنید. ویژگیهای QEMU، نشانگرهای goldfish/ranchu، دستگاههای ویژه و fingerprint ساخت بخشی از محیطاند؛ یک برنامهٔ عادی نمیتواند بدون تغییر سیستمی آنها را سازگار عوض کند. تلفن ابری یا clone سازنده را نیز محیطی جدا بدانید و با خط مبنای دستگاه فیزیکی مقایسه کنید.
جعل چند مقدار getprop شبیهساز را به دستگاه فیزیکی تبدیل نمیکند: driverها، nodeهای /dev، پروفایل سختافزار، ABI و رفتار هسته باقی میمانند. ماژولهای روت برای spoof ممکن است یک نشانگر را حذف کنند و همزمان ناسازگاری هوک، property یا library بسازند. این کار برای آزمایش توسعه قابلقبول است، اما نتیجهٔ معتبر RKNHardering باید روی دستگاه واقعی گرفته شود.
adb shell getprop ro.hardware
adb shell getprop ro.product.board
حروف کوچک و بزرگ دقیق و مقدار کامل را مقایسه کنید.
پس از هر تغییر، RKNHardering و سرویسگیرندهٔ VPN را بهاجبار متوقف کنید، هر دو را دوباره اجرا کنید و اسکن کامل را تکرار کنید. Zygisk، Xposed و ماژولهای هسته معمولاً به راهاندازی مجدد دستگاه نیاز دارند. فقط همین خط را مقایسه نکنید؛ سیگنالهای مجاور را نیز بررسی کنید، زیرا یک هوک ناقص اغلب میان APIها ناسازگاری ایجاد میکند.
خود پروب با مجوزهای معمول برنامه اجرا میشود و روت درخواست نمیکند. دستورهای ADB زیر فقط برای جهتیابی تشخیصیاند: adb shell با UID دیگری اجرا میشود و ممکن است نسبت به فرایند برنامه اطلاعات بیشتر یا کمتری ببیند. آزمون تعیینکننده، اجرای دوبارهٔ بررسی درون برنامه پس از توقف اجباری است.
spoof کردن ro.hardware میتواند انتخاب HAL، گرافیک و مؤلفههای vendor را تحت تأثیر قرار دهد.
spoof کردن property را حذف کنید و snapshot اصلی system/vendor را بوت کنید.
متوسط. kHwProps و شرط زیررشته بررسی شدهاند.
وضعیت یک راهکار شخص ثالث خودبهخود به این دستگاه تعمیم پیدا نمیکند. ادعای سازندهٔ ماژول فقط فرضیهٔ آغازین است؛ تأیید واقعی به نتیجهای تکرارپذیر از RKNHardering روی همان نسخهٔ Android، میانافزار و هسته نیاز دارد.
native_signs_probe.cpp — پیادهسازی پروب بومی.NativeSignsChecker.kt — منطق اصلی حکم بومی/قدیمی.NativeSignalId.kt — رجیستری کامل شناسهها.NativeSignalCatalog.kt — نگاشت دسته، slug و خط خروجی.سیگنالهای مرتبط: emulator-qemu-property, emulator-qemu-driver, emulator-build-profile.