← /audit

Kullanıcı perspektifinden denetim — 0x2ALL (v9.0 sürümü)

Uygulanan prompt: AUDIT_PROMPT_USER_pt-BR.md v2.1 (herkese açık, yeniden üretilebilir) — değiştirilmedi Çalıştırma tarihi: 21 Ekim 2026 Denetçi: DeepSeek v4.1 Flash (1017) — dört cephede inceleme (para, kötü amaçlı yazılım, ağ, saklama) ve kararı değiştiren kalemlerin elle doğrulanması Denetlenen kod: 9f69edc commit'i — v1.0.21 (code 21). APK'yı üreten dosya ağacı bu commit'in ağacıdır; 73fe94d ve 19209cf dokümantasyon ve sitedir, uygulama ağacı aynıdır İncelenen ikili dosya: 0x2ALL-1.0.21-9f69edc-release.apk, SHA-256 325245a6542212f0227eb7616f9a550bcd0053e5d7c613a66d080c60698bf830, 6.677.553 bayt, sertifika 53dac6cbe7edd6894b9377c4bbdc302a883abbe18a01ad2bd87d0a0fafa142c1 Yerine geçtiği sürüm: v8.0 (1.0.20, 6814b8b) Kapsam: prompt v2.1 — §2b'de beyan edilen tasarım kararları bulgu kapsamı dışındadır, ancak tek tek doğrulanmıştır.


0. Bu sürümde neler değişti

Bu, 1.0.21 ikili dosyasının yeniden denetimidir. v8.0 sürümünden (1.0.20, 6814b8b) bu yana delta bir işlevsel değişiklik ve bir metin düzeltmesinden oluşur:

Kullanıcı için ne değişiyor, sade dille. Telefonda root veya kilidi açılmış önyükleyici varsa, uygulama artık her şeyin yolunda olduğunu varsaymak yerine uyarır — ve kurtarma ifadesinin root'lu herhangi bir uygulama tarafından okunabildiği bir cihaza yeni para koymasına izin vermez. Orada zaten fonu olanlar çekmeye, göndermeye ve ifadeyi görmeye devam eder: uygulama bilgilendirir ve girişi engeller, asla çıkışı.

Bu neden hiçbir korumayı gevşetmiyor. Kontrol yereldir — hiçbir şey gönderilmez, hiçbir şey kalıcılaştırılmaz ve hiçbir cihaz tanımlayıcısı okunmaz. Yeni uç nokta, izin veya fon varış yeri yoktur: manifestteki <queries> yalnızca bir root yöneticisinin kurulu olup olmadığını görünür kılar. İzinler (13), ana bilgisayarlar (12) ve 0x adresleri (7) 1.0.20 ile birebir aynı kalır.

Beyan edilen sınır. Tespit sezgiseldir: Magisk DenyList/Shamiko, yeniden yamalanmış APK ve hook (Frida) bunu aşar. Dürüst kullanıcıya ve ilk para yatırmadan önceki ana hizmet eder — saldırgana değil. Uygulama hiçbir yerde "uyarı yok = güvenli" demez.

Yeniden denetim. 30 yanıt yeni dosya ağacına ve yeni ikili dosyaya karşı yeniden kontrol edildi. Denetlenen kodun imzalanan kod olduğunun kanıtı: DEX'te 83 yeni sınıf, etki alanına ait olanlar DeviceIntegrity, DeviceIntegrity$Finding ve MainActivityKt$DeviceIntegrityGate* (geri kalanı yeniden numaralanmış Compose lambda'larıdır, 66 eşdeğer eski sınıf çıkmıştır); classes.dex içinde bulunan androidboot.verifiedbootstate (4 geçiş), androidboot.flash.locked, test-keys, kernelsu ve /system/xbin/su dizeleri; ve resources.arsc içinde 6 yerel ayarın her birinde 10 yeni uyarı/durum anahtarı. Boyutlar: classes.dex +1.456 bayt, classes3.dex +12.196, resources.arsc +16.972.


1. Karar

Ölçüt Sonuç
Karar ONAYLANDI — 0 açık bulgu
Kritik 0
Yüksek 0
Orta 0
Düşük 0
Bilgilendirici 5 (dağıtım, alan adı, kayıt düzeltmesi ve yeni root tespiti, §3)

2. Doğrudan yanıtlar

Grup A — Para

# Soru Yanıt Kanıt
A1 Uygulamanın, beyan edilen her para yatırma işlemindeki %2 aktivasyon ücretinin ötesinde kullanıcıdan para alan herhangi bir yolu var mı? (yinelenen ücret, kâr payı, abonelik, işlem başına ücret, bahşiş, "bağış") HAYIR. Tek ücretlendirme, her para yatırma işleminde borsaya alacak kaydedilmeden önce alınan %2'lik ücrettir. Kâr, işlem, çekim, abonelik veya bahşiş ücreti yoktur PaymentManager.kt:109-111 (%2), :127-138 (para yatırmadan önce ücret alma), :114-121 (akış sırası); "performance fee/profit share/management fee" araması: app/src/main içinde 0 sonuç
A2 Fonların tüm olası varış yerlerini listeleyin: zincir üstü transferler, borsadaki çekimler, ücret ödemesi. Her biri için varış yerinin kullanıcının kendi adresi mi, koda gömülü beyan edilmiş sabit bir adres mi, yoksa çalışma zamanında hesaplanan bir şey mi olduğunu söyleyin. Ağdan alınan veriye bağlı bir varış yeri var mı? (Adreslerin gerçek değerini yeniden üretmeyin — §1.2.) 3 varış noktası. (i) ücret → koda gömülü sabit saklama adresi; (ii) para yatırma → Hyperliquid'in Bridge2 sözleşmesi; (iii) withdraw3 çekimi → her zaman imzalayan adresin kendisi. Hiçbir varış noktası ağdan gelmez AppConfiguration.kt:32 (değiştirilemez sabit), PaymentManager.kt:100-101; WalletManager.kt:92 (Bridge2); HyperliquidAPI.kt:1716 (destination = masterCredentials.address) ve :1727
A3 Ücret aynı para yatırma işlemi için iki kez alınabilir mi? (uygulamanın yeniden başlatılması, robotun sürdürülmesi, yeniden kurulum, aynı cüzdanın içe aktarılması, aynı seed'e sahip iki cüzdan, onaydan önce ağ arızası) Aynı para yatırma işlemi için HAYIR. <depósito>:fee kimliğine sahip dayanıklı günlük; belirsiz durum geri alıma dönüşmez ve işlem aynı kimlikle sürdürülür. Yeni para yatırma işlemleri yeniden %2 öder — bu beyan edilmiştir PaymentOperationStore.kt:24-34; PaymentManager.kt:70-76, :198
A4 Bir işlemin varış yerini, tutarını veya alıcısını değiştirebilecek arka kapı, "geliştirici modu", özellik bayrağı, uzaktan yapılandırma veya sunucu yanıtı var mı? Uygulama, paranın nereye gönderileceğine dair ağdan gelen herhangi bir talimata uyuyor mu? HAYIR. Temel URL kod sabitidir; varış noktasını belirleyebilecek uzaktan yapılandırma, özellik bayrağı, "geliştirici modu" veya HTTP yanıtı yoktur HyperliquidSigner.kt:38 (MAINNET_URL sabiti); uzaktan yapılandırma/bayrak araması: varış noktasını değiştiren bir yol yok
A5 Uygulama herhangi bir anda token için onay (approve/allowance) istiyor mu? İstiyorsa onaylanan limit nedir ve bu limit üçüncü bir tarafça harcanabilir mi? HAYIR. Hiçbir approve/allowance istenmez. ERC-20 sözleşmesi yalnızca balanceOf ve USDC transferini oluşturmak için kullanılır ERC20Contract.kt:31; "approve(/allowance" araması: 0 sonuç
A6 Seed veya özel anahtar herhangi bir yolda cihazdan çıkıyor mu? (ağ, günlük, yedek, pano, intent, harici dosya, bildirim, ekran görüntüsü) HAYIR. Seed ağ, günlük, yedek, panoya kopyalama veya intent üzerinden dışarı çıkmaz; yalnızca ekranda, varlık kapısı altında görünür seed günlüğü araması: 0 sonuç; MultiWalletManager.kt:422; MainActivity.kt:68-71 (uygulama genelinde FLAG_SECURE); allowBackup=false
A7 APK'yı elinde tutan biri seed'i çıkarabilir mi? Şunları değerlendirin: root'lu cihaz, adb backup, harici depolama, logcat, bellek dökümleri, APK yeniden paketleme. D2 (beyan edilmiş karar) ile ilişkilendirin. Root ile, evet — beyan edilmiş karar DD2: Keystore anahtarı, robotun 24 saat çalışabilmesi için özerktir. adb backup hayır (allowBackup=false); logcat hayır; APK yeniden paketleme ücret sabitini değiştirebilir, bu yüzden sertifika yayımlanır ve doğrulanır MultiWalletManager.kt:422; AndroidManifest.xml:55-57; ShareAppHelper.kt:33,42
A8 Kullanıcı, açıkça yetkilendirmediği bir yoldan fon kaybedebilir mi? En kötü gerçekçi senaryoyu ve en kötü saldırgan senaryoyu tanımlayın. D4 (beyan edilmiş karar) ile ilişkilendirin. Gerçekçi: stratejiden kaynaklanan kayıp (D4 — 10–50x kaldıraç, %100 pozisyon boyutu). Saldırgan: ele geçirilmiş cihaz → seed → tüm cüzdanlar; resmî dağıtım dışında yeniden imzalanmış APK TradingBot.kt:1257,1282-1285,1338; MainActivity.kt:68-71

Grup B — Kötü amaçlı yazılım / cihazdaki davranış

# Soru Yanıt Kanıt
B1 Beyan edilen tüm izinleri ve her birinin neden gerekli olduğunu listeleyin. Riskli olan var mı: SMS, kişiler, aramalar, konum, erişilebilirlik, cihaz yöneticisi, ekran kaplaması, paket kurulumu, harici depolama okuma? APK'da 13, hepsi işlevsel. Manifestte 11 bildirilmiş (internet, ağ, biyometri, bildirimler, titreşim, ön plan hizmeti, hizmet veri eşitleme, uyandırma kilidi, pil optimizasyonu, önyükleme, kesin alarm) + USE_FINGERPRINT (biyometri API'sinin eski takma adı) + dinamik alıcılar için AndroidX imza izni. Hiçbiri riskli değil: SMS, kişiler, konum, erişilebilirlik, yönetici, kaplama veya paket kurulumu yok AndroidManifest.xml:6-31; APK'da aapt2 dump badging ile doğrulandı
B2 Uygulama çalışma zamanında kod yüklüyor mu? (DexClassLoader, PathClassLoader, DEX/JAR indirme, eval, JavaScript köprüsü olan WebView, eklentiler) HAYIR. Sıfır DexClassLoader, PathClassLoader, WebView, eval veya eklenti; APK'da sıfır yerel kitaplık (.so) app/src/main içinde arama: 0 sonuç; .so için find: 0
B3 Hangi bileşenler dışa açık (exported=true)? Aynı cihazda kurulu üçüncü taraf bir uygulama bunlarla ne yapabilir? MainActivity (yalnızca uygulamayı açar; Intent okumaz) ve BootReceiver (BOOT_COMPLETED dışındaki action'ları yok sayar). Diğer bileşenler exported=false AndroidManifest.xml:46-93
B4 Telemetri, analitik, reklam, çökme raporlama veya tanımlayıcı toplama yapan üçüncü taraf bir kütüphane var mı? Tüm bağımlılıkları ve her birinin ağ üzerinden ne gönderdiğini listeleyin. HAYIR. Telemetri, analitik, reklam, çökme raporlama veya tanımlayıcı toplama yok firebase/crashlytics/analytics/sentry araması: 0 sonuç
B5 Uygulama kendini gizliyor veya kaldırılmaya direniyor mu? (sahte simge, uygulama listesinden kaybolma, kaldırmayı engelleme, görünür bildirim olmadan çalışma) HAYIR. Normal simge, normal kaldırma, hizmet bildirimi her zaman görünür AndroidManifest.xml; hizmet ön planda
B6 Uygulama root, emülatör, hata ayıklayıcı veya cihaz "parmak izi" tespiti yapıyor mu? Hangi amaçla ve bu veri nereye gidiyor? EVET, yerel (1.0.21'de yeni). Kullanıcıyı uyarmak ve yeni saklamayı engellemek için root/kilidi açılmış önyükleyici tespit eder. Emülatör veya hata ayıklayıcı tespit etmez, cihaz tanımlayıcısı okumaz ve hiçbir şey göndermez DeviceIntegrity.kt (sinyaller §0'da); AndroidManifest.xml:31-51 içinde <queries> (izin yok)
B7 Uygulama kendi kendini güncelliyor, APK kuruyor veya kullanıcının açık rızası dışında kod indiriyor mu? HAYIR. Sürüm sorgulamaz, APK indirmez, hiçbir şey kurmaz; güncelleme siteden elle indirmedir. Resmî sitenin yeni kartı yalnızca kullanıcı dokunduğunda tarayıcısını açar — uygulama tarafından APK'nın tek bir baytı bile indirilmez UpdateChecker/UPDATE_CHECK_URL araması: 0 sonuç; SecurityScreen.kt:191-226 (yalnızca ACTION_VIEW); DEX'te yerel indirme yok
B8 Kullanıcı robotu durdurduktan, uygulamayı kapattıktan veya izni geri aldıktan sonra çalışmaya devam eden bir arka plan hizmeti var mı? Ön plan hizmeti yalnızca robot etkinken çalışır ve kullanıcı durdurduğunda durur; bildirim kalıcıdır ve hizmet durdurulmadan kaldırılamaz TradingBotService (ön plan, görünür kanal)

Grup C — Ağ ve gizlilik

# Soru Yanıt Kanıt
C1 Uygulamanın iletişim kurabileceği alan adlarını ve IP'leri eksiksiz listeleyin. Her varış yeri gerekli mi (borsa, ağ RPC'si, resmî site)? Beyan edilmemiş bir alan adı, analitik, üçüncü taraf CDN veya toplama uç noktası var mı? 4 işlem ana bilgisayarı: api.hyperliquid.xyz, rpc.hyperliquid.xyz, arb1.arbitrum.io ve https://0x2all.xyz (1.0.14'te eklenmiş, burada değişmemiştir), ki bu APK'da yalnızca metin olarak (Güvenlik kartı ve politika bağlantısı, tarayıcıda açılır) bulunur ve hiçbir zaman istek hedefi değildir: dokunma, uygulamanın bağlantısını değil Intent.ACTION_VIEW üzerinden tarayıcıyı açar. Ayrıca iki içerik ana bilgisayarı (Hyperliquid belgeleri ve kullanıcının kendisinin başlattığı bir Google araması). Hiçbir analitik/toplama CDN alan adı yok app/src/main içinde URL taraması ve DEX uzlaştırması: 12 ana bilgisayar, 1.0.16 ile aynı küme — yeni yok, kaldırılan yok; SecurityScreen.kt:39,196; HistoryScreen.kt:149
C2 Tüm trafik HTTPS mi? cleartextTrafficPermitted var mı? Sertifika pinleme var mı — ve hassas veri alan tüm ana bilgisayarları kapsıyor mu? EVET, her şey HTTPS. Ağ yapılandırmasında cleartextTrafficPermitted=false; Hyperliquid ve Arbitrum RPC'de CA pinleme res/xml/network_security_config.xml:3; HyperliquidAPI.kt:460-461; ArbitrumRpc.kt:10
C3 Her istekte tam olarak ne gidiyor (genel adres, imza, emir, uygulama sürümü)? Cihaz, kullanıcı veya kurulum tanımlayıcısı gönderiliyor mu? Genel adres, imza ve emir yükü; cihaz, kullanıcı veya kurulum tanımlayıcısı yok HyperliquidAPI.kt (yükler); ANDROID_ID/AdvertisingId araması: 0
C4 Sitenin sunucusu IP, user-agent veya erişim tarihini kaydediyor mu? Ne saklanıyor ve ne kadar süreyle? Bu, gizlilik politikasında beyan edilmiş mi ve politika kodla karşılaştırıldığında doğru mu? Site yalnızca engellemeleri kaydeder (olay, ülke, bölge, rota, saat; IP yok) ve Cloudflare üzerinden sunulur. Politika bunu v7'den beri beyan eder: 6. sürüm aksini iddia ediyordu ve bu sürümde düzeltildi — kodla çelişen politika bulgudur, yazım ayrıntısı değil website/src/worker.js:15-17; privacy.html §4 (v7)
C5 Gizlilik politikası, kodun yerine getirmediği bir şey vaat ediyor mu? (beyan edilmemiş toplama, beyan edilmemiş saklama, listelenmemiş üçüncü taraf) HAYIR (v7 düzeltmesinden sonra yeniden kontrol edildi). Politika ve kod doğrulanabilir noktalarda örtüşür: veriler cihazda, hesap yok, analitik yok, IP'siz engelleme günlüğü, Hyperliquid/Arbitrum/Cloudflare dışında hiçbir üçüncü taraf yok privacy.html v7; C1–C4'te anılan kod

Grup D — Özgünlük ve bütünlük

# Soru Yanıt Kanıt
D1 Dağıtılan APK imzalı mı? Sertifika nedir (SHA-256 parmak izi), sitede yayımlananla aynı mı ve dosyanın SHA-256'sı beyan edilenle eşleşiyor mu? EVET. APK v2+v3 ile imzalanmış, RSA-4096, sertifika 53dac6cb…42c1 — sitede yayımlananla aynı; dosyanın SHA-256'sı eşleşiyor apksigner verify --print-certs; sha256sum
D2 Denetlenen kaynak kod, dağıtılan APK'ya karşılık geliyor mu? Kullanıcı bunu kendi başına nasıl doğrulayabilir? Yeniden üretilebilir bir derleme ya da en azından raporla birlikte yayımlanmış APK ve sertifika hash'i var mı? Kaynak↔APK eşleşmesi ikili dosyanın incelenmesiyle doğrulandı (sürüm, izinler, sınıflar, ana bilgisayarlar ve sözleşme adresleri) — yeniden üretilebilir derleme değildir ve bu, sınırlamalarda beyan edilmiştir aapt2 dump badging; DEX uzlaştırması
D3 Uygulama, APK'yı paylaşmadan (P2P dağıtım) veya güncellenmeden önce kendi imzasını doğruluyor mu? EVET. P2P paylaşım, sertifika beklenen değilse iptal eder ShareAppHelper.kt:33,42
D4 Denetim raporunun yayımlanmış bir hash'i var mı? Kullanıcı, okuduğu metnin denetlenen metinle aynı olduğunu ve sonradan düzenlenmediğini nasıl doğrular? EVET. Her dosyanın yayımlanmış SHA-256'sı ve OpenTimestamps tarih kanıtı vardır audit.json; .ots dosyaları

Grup E — Arıza, kayıp ve kurtarma

# Soru Yanıt Kanıt
E1 Kullanıcı, borsada açık pozisyon varken uygulamayı kaldırırsa ne olur? Para başka bir yoldan (seed, borsanın sitesi) erişilebilir kalır mı, yoksa kaybolur mu? Para, seed aracılığıyla (başka bir cüzdan veya uygulamada içe aktarma) ve borsanın kendisi aracılığıyla erişilebilir kalır; açık pozisyonlar yeniden kurulumda borsadan okunur fill/pozisyon uzlaştırması; MultiWalletManager
E2 Cihaz çalınırsa hırsız ne yapabilir? Seed, cihazın biyometrisi/kimlik bilgisiyle korunuyor mu? Ekran ekran görüntüsüne karşı korumalı mı? Seed Keystore ile şifrelenir, ekran görüntü almaya karşı korunur; saklama eylemleri varlık gerektirir. Root, seed'i açığa çıkarır (D2) — 1.0.21'den beri uygulama açılışta uyarır ve işaretli cihazda para yatırmayı engeller MainActivity.kt:68-71; MainActivity.kt:159-181 içinde DeviceIntegrityGate; DashboardScreen.kt:586-696 içinde AppLockManager.requirePresence
E3 Uygulamanın hâlâ bakiyesi olan bir cüzdanı sildiği veya bakiyeli bir cüzdanı (bakiye okuma hatası nedeniyle) "boş" saydığı bir yol var mı? Silme ve offboard, herhangi bir yıkıcı eylemden önce bakiyeyi tüm katmanlarda (zincir üstü USDC, ETH ve borsadaki bakiye) doğrular; bakiye yoksa = yalnızca onayla silinebilir toz RageQuitController; katmanlar arası kontroller
E4 Borsa hizmet dışıysa, bağlantı bir emrin ortasında koparsa veya yanıt kaybolursa ne olur? Uygulama bir emri çiftleyebilir, bir tahsilatı çiftleyebilir veya tutarsız bir durumda kalabilir mi? İşlemlerin dayanıklı günlüğü ve idempotent kimliği vardır; belirsiz durum ücreti veya çekimi çiftlemez PaymentOperationStore.kt; HyperliquidOperationStore; PaymentManager.kt:70-76,198
E5 Açık pozisyon varken süreç sistem tarafından sonlandırılırsa stop loss borsada geçerli olmaya devam eder mi? Uygulama geri döndüğünde uzlaştırma yapıyor mu? Stop'lar borsada yaşar ve uygulama kapalıyken geçerli kalır; uygulama geri döndüğünde uzlaştırır ve eksik stop'u yeniden oluşturur reconcileStopWithExchange (checkPositions, 2 dakikalık döngü)

2b. Beyan edilmiş tasarım kararları

ID Beyan Doğrulandı mı? Kullanıcı için etki Kabul edilen risk
DD1 Ücret adresi yayımlanmaz EVET — değiştirilemez sabit (AppConfiguration.kt:32), setter yok; değer uygulamada ve sitede yok (arama = 0) Varış yeri kamuya açık metinle doğrulanamaz Varış yeri okuma yoluyla doğrulanamaz
DD2 Keystore anahtarı özerk EVET — setUserAuthenticationRequired(false) (MultiWalletManager.kt:422) ve elle yapılan eylemlerde varlık kapısı Robot cihaz kilitliyken çalışır; elle eylemler varlık gerektirir Root'lu cihaz seed'leri açığa çıkarır; uzaktan vektör değildir
DD3 Otomatik kâr çekimi (D12) EVET — olay başına US$ 22 tetikleyici (ProfitTracker.kt:46) ve %50 oran (:52) Tetikleyici üzerindeki gerçekleşmiş kâr kısmen kullanıcının kendi adresine çekilir Özerk saklamaya bağlıdır (D2)
DD4 Varlığın %100'ü ile pozisyon boyutu, 10–50x kaldıraç EVET — varlık fail-closed okunur (TradingBot.kt:1252-1258), %100 pozisyon (:1270), varlığın azami kaldıracı (:1192-1202) Uzak hedefli büyük pozisyonlar; güçlü bir dönüşte toplam kayıp mümkün Sermayenin tamamının veya bir kısmının kaybı

Dördü de kapsam uyarınca bulgu olarak sınıflandırılmadı. Doğrulanan şey, her birinin beyan edildiği gibi uygulandığıdır; uygulanmayan biri bulgu olurdu.


3. Bulgular

0 açık bulgu (kritik, yüksek, orta veya düşük).

Zorunlu eylem gerektirmeyen bilgilendirici notlar:

  1. P2P dağıtımında yeniden paketleme. APK'yı paylaşım yoluyla alan kişi, üçüncü bir tarafça yeniden imzalanmış bir dosya alabilir. Savunma vardır (uygulamada sertifika parmak izi, sitede ve paylaşımda doğrulama), ancak kullanıcının değeri karşılaştırmasına bağlıdır.
  2. D1 kamuya açık metinle doğrulanamaz. Bu, tasarım kararının kabul edilmiş sonucudur.
  3. v7.0'ın 3. notu çözüldü. 0x2all.xyz alan adı 20/10/2026'dan beri kayıtlı ve yayında; politika bağlantısı ve özgünlük kartı gerçek bir varış yeri açar ve sayfa sertifika parmak izini ve APK SHA-256'sını yayımlar.
  4. Önceki sürümün kayıt düzeltmesi. v7.0'ın 4. notu, eski T5 bloğunun ulaşılamaz kod hâline geldiğini ve stillOpen testinin iki kopyası olduğunu söylüyordu. 1.0.19 (0c96c95) ve 1.0.20 (6814b8b) ağaçlarında yeniden kontrol edildi: tek bir geçiş vardır (TradingBot.kt:2121-2123) ve bu önceki sürümde de böyleydi. Kopya 1.0.19'dan önce kaldırılmış ve not geri çekilmiştir — kullanıcı için hiçbir etkisi yoktur.

  5. Root tespiti bir uyarıdır, garanti değil. 1.0.21'in kontrolü (DeviceIntegrity) sezgiseldir ve cihazda çalışır: Magisk DenyList/Shamiko, yeniden yamalanmış bir APK veya bir hook (Frida) saldırganın istediği sonucu döndürür. Dürüst kullanıcı ve ilk para yatırmadan önceki an için geçerlidir; root'suz, ekran kilidi olan adanmış bir cihazın yerini tutmaz. Cihazdan hiçbir veri çıkmaz ve hiçbir tanımlayıcı okunmaz.


4. Sınırlamalar


5. Nasıl yeniden üretilir

  1. APK'yı indirme sayfasından indirin; SHA-256'yı ve sertifika parmak izini doğrulayın (bu sayfadaki tablo ve version.json).
  2. Promptu indirin (/audit/prompt-pt.md veya prompt-en.md) ve imzalı APK'ya uygulayın: apksigner verify --print-certs, aapt2 dump badging/xmltree, DEX derlemesini geri alma (jadx veya baksmali) ve DEX içindeki host ile 0x adreslerinin taranması.
  3. Bu sayfadaki her dosyanın SHA-256'sını yayımlanmış tabloyla ve audit.json ile karşılaştırın.
  4. .ots dosyalarında ots verify ile tarih kanıtını doğrulayın.
  5. Yanıtları yukarıdaki tablolarla karşılaştırın. Farklılık bir bulgudur.

Depo özeldir ve gerekmez: dosya:satır referansları, anılan commit'in kaynak kodunu gösterir; yalnızca APK denetlenirken doğrulanan şey davranış ve DEX dizeleridir.


6. İncelenen ikili dosya ve kaynak

Kalem Değer
Commit 9f69edc (73fe94d ve 19209cf = docs/site, aynı uygulama ağacı)
Sürüm 1.0.21 (code 21)
İncelenen APK 0x2ALL-1.0.21-9f69edc-release.apk
APK SHA-256 325245a6542212f0227eb7616f9a550bcd0053e5d7c613a66d080c60698bf830
Boyut 6.677.553 bayt
Sertifika (SHA-256) 53dac6cbe7edd6894b9377c4bbdc302a883abbe18a01ad2bd87d0a0fafa142c1
İmza v2 + v3, RSA-4096, CN=0x2ALL
İzinler APK'da 13, 1.0.20 ile aynı (boş diff)
DEX'teki ana bilgisayarlar 12, 1.0.20 ile aynı küme (boş diff)
DEX'teki 0x… adresleri 7, 1.0.20 ile aynı (boş diff)
DEX'teki yeni sınıflar Toplam 83; etki alanına ait olanlar: DeviceIntegrity, DeviceIntegrity$Finding, MainActivityKt$DeviceIntegrityGate* — geri kalanı yeniden numaralanmış Compose lambda'larıdır (66 eşdeğer eski sınıf çıkmıştır)
Çalıştırma tarihi 21/10/2026