[Deneme] Xiaomi Çift Imeı Denemesi Sonucları (1 Viewer)

37berat37

Yeni Üye
Yeni Üye
Kayıtlı Kullanıcı
İyi günler arkadaşlar.

Uzun zamandır xiaomi telefonum da dual imei repair üzerinde uğraşıyorum. Bazı şeyler keşfetsem de daha çözümü bulamadım.Sizlere bu keşfettiğim şeylerden bahsedeciğim belki benim bulduklarımı ileri götürecek arkadaşlar çıkar.Şuan bildiğiniz üzere sim2 ye bile yeni çıkan modeller de imei atmayı kapatıyorlar.Para için açgözlülüğü bir kenara bırakıp bu sorunu çözmeye uğraşmalıyız.Sorun çözülürse zaten para kazanılır onda herkes hemfikir.Şuan da mühendislik öğrencisiyim ve hobi olarak kendi yurtdışı cihazım üzerinden deniyorum :) .

İlk olarak telefonum mi note 10 lite xiaomi.eu 12.5.1 Android 11 custom romlu bir cihaz.(İlk araştırma yaptıgım sırada kullandığım sürüm xiaomi.eu 12.0.3 Android 10 custom rom)

check_nv:
İlk olarak imei yazınca veren nv data corrupted hatası buna neyin sebep olduğunu buldum uzun araştırmalarım sonucunda.Bu hata yazılımsal olarak oluşturuluyor sanırım RSA protect dedikleri de bu.Öncelikle bu hataya sebebiyet veren dosya Android 10 cihazlarda system/bin içerisindeki check_nv adındaki dosya.Android 11 de bu dosyayı system/product/bin içerisine taşımışlar. Bu dosya açılışta telefon boot edildikten hemen sonra late_start yani geç başlatma olarak telefon tarafından başlatılıyor.Bu cihazdaki modem dosyalarını ( modem,modemst1,modemst2,fsg,fsc) kontrol ediyor.Eğer eksik veya corrupted oldugunu görürse telefonu stock recoverye yönlendiriyor ve nv data corrupted hatası vermesini sağlıyor.--Ekran görüntüsü ekliyorum dosyanın içeriğini aşağı*1--. Tabiki düşündüm bu dosyayı eğer rom içerisinden çıkartırsam imei atabilir miyim diye.Şimdi geldik başka bir soruna, eski android sürümlerinde rootla çok kolay şekilde system dosyasının içini düzenleyebiliyordunuz ama android 10 ile birlikte telefon rootlu olsa bile partitionlar genelde ro olarak yani read olarak mount edilmiş halde. rw olarak mount edemiyorsunuz.Bunun çözümüde rom'u baştan derlemek lazım.Ubuntu üzerinden romdaki system.img yi ayrıştırıp check_nv yi silip yeniden decode edip fastbootd üzerinden(fastboot ve fastbootd modu farklı) system.img yi tekrardan cihaza flashladım(Bazen system.img yanında vendor.img de flashlamak gerekebiliyor deneyecek olursaa)(*Altta güncel twrp den android 10 ve 11 için daha bu ay çıkıp xda da paylaşılan bir dosya paylaşacagım bunu twrp üzerinden flashlayınca cihaz içinden cihazı rw olarak düzenleyebiliyorsunuz bu yeni çıktı ben rom oluşturup çözüyordum şimdi direk rw olabiliyor bu dosyayı flashlayınca twrpden android 10 ve 11 de çalışıyor benim cihazım için). Sonuç olarak qfil üzerinden tekrardan düzenlenmiş çift imeili qcn yi flashlayınca ve telefonu yeniden başlatınca imei yazılıyor nv data hatası verilmiyor ama bu seferde şebeke gelmiyor.Burada tıkandım.Qualcomm QPST çalışma mantığını anlamadım QFIL uygulaması ve download uygulaması var neden ikisinden de yazmak gerekiyor cihaza.Sanırım biri fsg ye yazıyor biri normal modemst1 e yazıyor tek mantıklı açıklaması bu.(Bilenler yorum atarlarsa iyi olur anlamakta zorlanıyorum).Buna ek olarak düşündüğüm,cihazda partitionlar öncelikle boot edilirken başka bir yere kopyası yazılıyor yani cihazda aynı dosyadan 2 adet var buna android 10 ve üzeri sürümlerde geçtiler ve mirroring partition diyorlar yani aynalama bölümü.

Deneyecekler için konumlar:
Android 10: system/bin/check_nv , system/etc/init/check_nv.rc silebilirsiniz , Ek olarak system/etc/selinux/ dosyalarını açıp içerisinde check_nv arayabilirsiniz oluyor bazen

Android 11 : system/product/bin/check_nv , system/product/etc/init/check_nv.rc silebilirsiniz. Ek olarak system/product/etc/selinux/product_file_contexts içerisini açıp içerisindeki check_nv li kısmı silebilirsiniz.

Elinde mi note 10 lite eng rom olan arkadaşlar varsa benimle paylaşabilirse çok iyi olur. Mail adresim: bdikmen37@hotmail.com


Cihazın orijinal imeilerini uçurdugumda elimdeki qcn yedeği ile qfil veya download üzerinden kurduğumda çalışmıyordu ama eğer dd komutu ile önceden aldıgınız modemst1.img modemst2.img ve fsg yi cihaza flashlarsanız ilginç şeyler oluyor hemen anlatıyorum.

Mi note 10 lite için adb shell su yaptıktan sonra hafızaya yedek alma kodları:
dd if=dev/block/sdf5 of=/sdcard/modemst1.img
dd if=dev/block/sdf6 of=/sdcard/modemst2.img
dd if=dev/block/sdf1 of=/sdcard/fsg.img

Alınan Yedekleri Geri Yükleme Kodları:
dd if=/sdcard/modemst1.img of=/dev/block/sdf5
dd if=/sdcard/modemst2.img of=/dev/block/sdf6
dd if=/sdcard/fsg.img of=/dev/block/sdf1
dd if=/sdcard/modemst1.img of=/dev/block/platform/soc/1d84000.ufshc/sdf5
dd if=/sdcard/modemst2.img of=/dev/block/platform/soc/1d84000.ufshc/sdf6
dd if=/sdcard/fsg.img of=/dev/block/platform/soc/1d84000.ufshc/sdf1
dd if=/sdcard/modemst1.img of=/dev/block/bootdevice/sdf5
dd if=/sdcard/modemst2.img of=/dev/block/bootdevice/sdf6
dd if=/sdcard/fsg.img of=/dev/block/bootdevice/sdf1

Şimdi ilginç olan eğer sadece dev/block koduyla geri yedeğimi yüklersem imei gelmiyor veya yüklemiyor.Burdan anladığım cihazda bir kayıtlı olan bide o kayıtın kopyası olan var cihaz açılırken kopyalıyor orijinali ve ondan çalıştırıyor yani bootdevice olan kodlar (Emin değilim yorumlarınızı bekliyorum).Şimdi eğer orijinal yedekleri geri yüklerken yukardaki 9 kodu aynı anda cmd ye yapıştırıp cihazı zorlarsam anında orijinal yedeklerim yükleniyor. Sanırım kernel panic yaşıyor cihaz ve yeniden başlattığımda hafızaya ramdump dosyası atıyor yaklasık 5-10 gblık :D Yani anlıyacağınız araba vurdurur gibi telefon vurduruyorum ve o şekilde orijinal yedegi geri yüklüyorum.

2.olarak system/build.prop içerisinde ki ro.miui.restrict_imei=1 kodu:

İmei yazmayı ne engelliyor diye aradığımda kesinlikle alakalı olduğunu düşündüğüm bir kodla karşılaştım.System/build.prop un içerisinde ro.miui.restrict_imei=1 adlı kod gördüm ilginç olan bu kod çift imei yazılan cihazların build.propunda yok bu cihazlar android 9 ve altı yani bu kod android 10 dan sonra eklenmiş.Bu kodu kaldırıp veya ro.miui.restrict_imei=0 olarak değiştirince birkaç farklı kombinasyonlarla denedim sanırım ama sonuca ulaşamadım ulaşşam 2 imei repair edebilirdim.Sonrada bakmadım açıkcası

3.olarak Data/property/persistant_properties dosyası

Öncelikle düşünebilirsiniz acaba data da imeiler nerde tutuluyor.uzun aramalarım sonucunda imeileri 2 farklı yerde rastladım bunlar ilk olarak Data/property/persistant_properties dosyası bu persistant_properties dosyasını text editorle açtığınızda içerisinde 2 imeinizi de görebilirsiniz(persist.radio.imei, persist.radio.imei1, persist.radio.imei2) .imei ve imei1 olan aynı ve ilk imei imei2 olan ise 2.imei.İlginç olan 2.sim repair yaptığım da bu dosyadaki imei2 değişti imei ve imei1 0 olması gerekirken orijinal imei olarak kaldı.Telefonu wipe data yapıp yeniden rom yüklediğimde dosyada sadece imei2 gözüküyor ve imei ve imei1 kodları silinmiş.Kendim kullandığım telefonu ikide bir brick ettiğim için bu dosyayı düzenlemeye üşendim belki bir arkadaş düzenler ve sonucu yazar kim bilir belki telefon içinden direk imei değiştirebiliriz.Yabancı kaynaklardan anladığım kadarıyla persistant_properties, build.prop ve default.prop cihazın cihaz açılırken kendi aralarında karşılaştırılıyor ve sonuçta oluşturulan ortak dosya cihazın ramine gönderiliyor ve cihazınız çalışıyor.Bu gönderilen konum dev/_properties_ içerisine orada da imeileri aradığımda imeimi u_object_r:deviceid_prop:s0 içerisinde buldum.Denemek isteyenler ordanda değiştirip deneyebilir belki çözüm bulur ben yine diyorum neden denemedim çünkü brick etmeden yoruldum ve kullandığım kendi telefonum gün içerisinde yogunum ve telefon her an lazım oluyor.(Terminalde su, getprop yazınca ulaştıgınız sonuçlar dev/_properties_ in sonuçları. )


Ek olarak Vendor'daki bin içerisinde ki dosyalara bakabilirsiniz:
Vendor bin de de dikkatimi çeken birkaç şey görmüştüm ama şuan hatırlamıyorum meraklısı içindeki dosyaları açar text editorde nv veya imei olarak aratıp bakabilir.Dikkatimi çekmesi demek bazı elimdeki farklı cihazdaki eng romlarda bin içerisinde ek dosyalar olmasıydı ve o ek dosyalar nv veya qualcomm ile alakalı veya diag ile alakalı olmasıydı.Şuan hatırlamıyorum dediğim gibi.Sanırım diag ile alakalıydı.


cihazınızı android 10 ve 11 de rw yapmak istiyorsanız linki inceleyin:

Redmi note 10 gibi yeni güncel imei atılmayan telefonlara daha bakamadım ama denemek isterim üzerinde yakın zamanda romunu indirip inceleyebilirsem güzel olur ama vaktim yok.


ŞİMDİLİK AKLIMA GELENLER BUNLAR, GECE YAZDIM BU YAZIYI KAFAM YORGUN OLARAK GÜNCEL BİR ŞEY GELİRSE EKLERİM.BANA ÜZERİNDE DENEYEBİLECEĞİM DENEMELİK CİHAZ GÖNDERMEK İSTEYEN OLURSA DA SEVE SEVE KABUL EDERİM KENDİ CİHAZIMI BOOTLOOPa sokmaktan yoruldum :)

LÜTFEN BİRYERLERDE PAYLAŞIYORSANIZ SAYGI ÇERÇEVESİNDE İSMİMİ VEREREK PAYLAŞIN Kİ ÇÖZÜM BULABİLELİM.Mail adresim:bdikmen37@hotmail.com



Inkednv_corrupted_LI.jpg
 

Ekli dosyalar

  • 74ec42e3-42fe-433a-8994-491511ae4ca8.jpg
    74ec42e3-42fe-433a-8994-491511ae4ca8.jpg
    28.4 KB · Görüntüleme: 6

37berat37

Yeni Üye
Yeni Üye
Kayıtlı Kullanıcı
Bu arada sonradan okuyunca gördüğüm nv data hatası alıyorsanız çözüm olarak fastboot üzerinden

fastboot erase modemst1
fastboot erase modemst2
fastboot erase fsg
yapıp yeniden açarsanız sorun çözülür umarım yardımcı olmuştur.
 

GSMŞ3R1F

Profesyonel Teknik Servis
Yönetici
Admin
Destek Ekibi
Onursal Yönetici
Elit Üye
Uzman Üye
Eline emeğine sağlık kardeşim ?
 

37berat37

Yeni Üye
Yeni Üye
Kayıtlı Kullanıcı
Ne demek elinde yeni imei atılmayan telefonları olan arkadaş varsa istanbul çevresinde deneyebiliriz birlikte.
 

GSMŞ3R1F

Profesyonel Teknik Servis
Yönetici
Admin
Destek Ekibi
Onursal Yönetici
Elit Üye
Uzman Üye
Bilgisi Olan Arkadaşlar var ama izlediğimiz yol ve yordam bu şekilde değil
yukarıda bahsettiğin konu itibari ile anladıgım şey
sistem dosyalarının içeirklerine göre
sım 1 rsa korumasından yükümlü dosyayı bulup
flash esnasında eksik yazarak
repair kısmında rsa yı devre dışı bırakmak
ama bizim veyahut gördüğümüz saygı değer ustaların
izlediği yol bu şekilde değil
Fakat
Her Delikanlının Bir Yoğurt Yiyiyşi Vardır Metaforundan yola çıkarak
sizin izlediğniiz uyguladıgınız yol ve yordama saygı duyarım :)
 

GSMŞ3R1F

Profesyonel Teknik Servis
Yönetici
Admin
Destek Ekibi
Onursal Yönetici
Elit Üye
Uzman Üye
Rsa Dediğimiz Şifreleme Mantığı epeyce Zor Olan
Çözmek İçin Baya Uğraş Gerektiren Bir iştir .

Bunun İzahını Bi kaynakta Buldum
Yazmak Yerine Ordaki Yazıyı Aynen Buraya Yapıştırıyorum


RSA mantığı, bir tam sayının çarpanlarına ayrılmasının onu yeni sayılarla çarpmaktan daha zor olduğu gerçeğine dayanmaktadır. Yeterince büyük ve birbirinden farklı olan iki asal sayının çarpımından oluşan bir base değer elde edilir. Ve diğer anahtar parametreleri de aynı iki asal sayıdan türetilir. Bu nedenle base değer çarpanlara ayrılabilirse, özel anahtar tehlikeye atılır. Bu nedenle anahtar boyutunu iki veya üçe katlarsak, şifreleme gücü katlanarak artar (2).

Çalışması ise şu şekilde olur,

İki adet asal sayı seçilir. Bu sayıların büyük olması güvenlik açısından önemlidir. Bu iki sayıya p ve q diyelim.

Anahtarlar için base değerinin hesaplanması gerekmektedir. Base değerine n dersek; n = p*q şeklinde bu değer hesaplanabilir.
n değeri için totient fonksiyonu hesaplanır. Her iki çarpanda asal olduğu için n değerinin totient fonksiyonu ; φ(n) = (p-1)(q-1) olarak bulunur.
Public key değerimize e dersek, e’yi bulmak için 1< e <φ(n) aralığından bir asal sayı seçilmelidir. e değerimiz artık bizim public key değerimizdir.
.Private key değerimize d dersek, d*e = 1 mod (n) olarak d değeri hesaplanır.

Şimdi java dilinde yazılan kodlara göz atalım.


Kodlarda yer alan isPrime() methodu basit bir asal sayı kontrolü sağlamaktadır. Public key olan e sayısının asal olmasının önemli olduğu unutulmamalı.



dCalculate() methodu ile (totient(n), e ) ikilisi kullanılarak d değeri hesaplanır. Tüm bunları hesapladıktan sonra gerekli parametreler hazırlanmış olur. Artık şifreleme kısmına geçebiliriz.

Şifreleme

Şifreleme işlemi için public key ve base değerleri kullanılır. (n,e) ikilisi kullanılarak şifreleme şu şekilde yapılır,

c = m^e mod (totient(n))
Burada e public key, n base değer, m karakterin ASCII kodudur. Elde edilen c değeri ise şifrelenmiş karakterin ASCII kodunu temsil eder.

Şifreleme işlemi için cryptoDualMethod() methoduna sırasıyla basee değer olan nBig değeri, mesaj karakterinin ASCII değeri ve public keyimiz olan e değeri gönderildiğinde crytoDualMethod() methodu şifrelenmiş ASCII kodunu return eder. Bu methodu şifreli metni çözerken de kullanacağız.


Şifreli Metnin Açılması

Şifrelenen mesaj artık c değeri ile temsil edilir ve c değerinin ASCII kodu gerçek mesajın ASCII kodundan farklı olduğu için aslında mesajın en olduğu bilinemez ve private key değerimiz olan d değeri ile mesajın çözülmesi gerekmektedir.

m = c^d mod (totient(n))
Bunun için cryptDualMethod() methoduna sırasıyla base değeri olan nBig, şifreli metnin ASCII kodu olan c değeri, ve private key değerimiz olan dBig değeri gönderilirse şifreli metin çözülmüş olur.







 

GSMŞ3R1F

Profesyonel Teknik Servis
Yönetici
Admin
Destek Ekibi
Onursal Yönetici
Elit Üye
Uzman Üye
Biribirmizden Çok Farklı Yollar İzliyoruz demi :)
Demek İstediğim Şu

Mi Account Sorunlarında

Remove Vardır
Birde Bypass Vardır

Sizinkisi Bypass Oluyor Bu durumda :)
 

37berat37

Yeni Üye
Yeni Üye
Kayıtlı Kullanıcı
algoritmanın çalışma mantıgını biliyorum ama bypass harici zaten rsa geçilemez key olmadığı sürece, ama siz dediniz ki başka yöntemlerle yapıyoruz biz yani buldunuz mu 2 imei repair
 

37berat37

Yeni Üye
Yeni Üye
Kayıtlı Kullanıcı
Ek olarak bulduklarım elimde mi note 10 lite yoktu bende mi note 10 eng romunu buldum siteden ve romun içini inceleyince modemst1 ve modemst2 ye dummy yani boş yazdırıyorlar eng romda ama fsg'ye factory_nv.img adında dosyayı yazıyorlar.Bunu da 7-zip ile # olarak açınca içindeki 2.gz dosyasını yine # olarak açınca nvm/context1 ve nvm/num un içerisindeki 550 imei dosyaları num'daki imei1 context1 deki imei2 dosyası. Ben kendi çektiğim yedek fsg, modemst1 ve modemst2 yi bu şekilde açamıyorum yedeği nerden aldılarsa artık.

2. olarak Redmi note 10 pro cihazını inceledim içinde check_nv adında dosya yok ondan dolayı imei atanlarda nv data corrupted hatası vermiyor ama şebekede gelmiyor elinde redmi note 10 pro olan arkadaş varsa deneyebiliriz birlikte.build.prop editleyip restrict_imei=1 kodunu silerse belki çift imei repair olur.
 

Ekli dosyalar

  • Screenshot_61.png
    Screenshot_61.png
    123.5 KB · Görüntüleme: 17
  • Screenshot_62.png
    Screenshot_62.png
    110.8 KB · Görüntüleme: 13
  • Screenshot_63.png
    Screenshot_63.png
    109.2 KB · Görüntüleme: 10
  • Screenshot_64.png
    Screenshot_64.png
    109.2 KB · Görüntüleme: 12
  • Screenshot_65.png
    Screenshot_65.png
    129.9 KB · Görüntüleme: 13
  • Screenshot_66.png
    Screenshot_66.png
    72.6 KB · Görüntüleme: 15

ninario

Acemi Üye
Acemi Üye
Kayıtlı Kullanıcı
Bu arada sonradan okuyunca gördüğüm nv data hatası alıyorsanız çözüm olarak fastboot üzerinden

fastboot erase modemst1
fastboot erase modemst2
fastboot erase fsg
yapıp yeniden açarsanız sorun çözülür umarım yardımcı olmuştur.
reis bana bi konuda yardımcı olurmusun
android 9 ve öncesinde ben build.prop dosyasını düzenleyip cihaz adını modelini değiştiriyordum şimdi note 10 var bende ve android 11 rw yaptım ve build.prop dosyasına girdim ro.product.model , ro.product.manufacturer gibi şeyleri kaldırmışlar bunları nasıl buluruz değiştiririz.
boot.img dosyasına filanmı enjeklediler xda forumunda baktımda anlamadım sen yardımcı olurmusun güzel kardeşine benim için systemi değiştirmek çok önemlide.
 

37berat37

Yeni Üye
Yeni Üye
Kayıtlı Kullanıcı
Neden değiştirmek istiyorsun öncelik olarak, terminalde adb shell ardından su yaptıktan sonra getprop yaz orda görürsen bulup değiştirebilirsin eğer görmezsen ki kesinlikle olması lazım o durumda tekrardan haberleşmek lazım.
 

ninario

Acemi Üye
Acemi Üye
Kayıtlı Kullanıcı
Neden değiştirmek istiyorsun öncelik olarak, terminalde adb shell ardından su yaptıktan sonra getprop yaz orda görürsen bulup değiştirebilirsin eğer görmezsen ki kesinlikle olması lazım o durumda tekrardan haberleşmek lazım.

orda gözüküyorda kalıcı roma yazmak için ne yapmalıyım kendi romumu oluşturmak istiyorumda lütfen yardım edersen sevinirim
 

bebaxt

Yeni Üye
Yeni Üye
Kayıtlı Kullanıcı
Bu yola henüz girmiş bir yolcu olaraktan yazıyı aydınlatıcı buldum. Bana yeni yollar deneme konusunda fikirler verdiniz. Teşekkürler. Imei Konusu bazı açık forumlarda yasadışı olması sebebi ile tartışılmıyor. Daha çok Hindu ve Türkiye sitelerinde konuşuluyor gibime geldi. 10 gün içinde forumlardan okuduklarım ile redmi note 10 telefonuma imei atmayı başardım ancak şebeke alamadım. NV corrupt hatası veriyor. Daha derine inmem gerektiğini düşündüm ancak terminal ve komutlara çok aşina olmadığımdan fazla ilerleyemedim. İlerleme kaydetmek açısından evdeki bilgisayarımdan birine linux kurmanın da faydası olacağını düşünüyorum. okulda c++ öğrenmediğime pişmanım.
 
Üst