Rooted - Jailbreak Tespiti
Aşağıdaki Type ID'ler ile Android ve iOS'teki kurallardan bakabiliyorsunuz. Tek bir kriter veya yöntem her zaman rooted veya jailbreak yapılmış bir cihazı tespit etmek için yeterli olmayabilir. Root veya jailbreak işlemi farklı yöntemlerle yapılabileceği için birden fazla kontrol aynı anda yapılır. Bu kontrollerin kombinasyonu cihazın rootlu olup olmadığını tespit etmede daha güvenilir bir sonuç sağlar. Kontrollerin açıklamalarını da aşağıda belirttim.
- check for testKeys
- check for binaries (magisk, busybox, su)
- check for dangerous props
- check for writable system paths
- executable command which su, which can detect if such user available in system
| Platform | Type ID | Enabled | Visible | Active | OS | Risk Score | Description |
|---|---|---|---|---|---|---|---|
| iOS | 116 | true | true | true | ios | 75 | iOS device used for sign in has super-user rights (rooted device) |
| iOS | 2503 | true | true | true | ios | 90 | iOS device has super-user rights (rooted device) |
| Android | 209 | true | true | true | android | 75 | Android: Rooted device |
1. Check for testKeys
Android cihazlar geliştiriciler tarafından test edilmek üzere “test-keys” adı verilen özel bir imza ile derlenmiş olabilir.
Bu durum genellikle root edilmiş ya da custom ROM yüklenmiş cihazlarda görülür.
- Rooted cihazlarda görülme ihtimali yüksektir.
2. Check for binaries (magisk, busybox, su)
Root erişimini sağlayan uygulamalar ve binary’ler (Magisk, BusyBox, su gibi) cihazda bulunabilir.
Bu dosyaların varlığı, cihazın root edilmiş olduğuna dair güçlü bir göstergedir.
- Rooted cihazlarda bu dosyalar genellikle bulunur.
3. Check for dangerous props
Bazı “dangerous” (tehlikeli) kabul edilen sistem özellikleri (system properties / props), root işlemi sırasında değiştirilmiş olabilir.
Bu değişiklikler genellikle güvenlik mekanizmalarını atlatmak amacıyla yapılır.
- Rooted cihazlarda bu tür sistem özellikleri değişmiş olabilir.
4. Check for writable system paths
Normal Android cihazlarda sistem dosya yolları sadece okunabilir (read-only) durumdadır.
Root edilmiş cihazlarda bu yollar yazılabilir (read-write) hale getirilebilir ve sistem dosyaları üzerinde değişiklik yapılabilir.
- Rooted cihazlarda sistem yolları genellikle yazılabilir durumdadır.
5. Execute which su command
su komutu, cihazda superuser (root) erişimi olup olmadığını kontrol etmek için kullanılır.
Bu komutun çalıştırılabilmesi, sistemde root yetkisine sahip bir kullanıcı bulunduğunu gösterir.
- Rooted cihazlarda bu komut genellikle çalışır ve bu sayede root erişimi tespit edilebilir.