MediaTek'in SP Flash Aracı kimlik doğrulamasını atlamak artık çok kolay

click fraud protection

Bir grup geliştirici, MediaTek SP Flash Tool'un kimlik doğrulama rutinini atlamak için bir Python yardımcı programı oluşturdu. Şimdi kontrol et!

MediaTek yonga seti bulunan cihazlarda genellikle ön yükleyiciyi yükleyen bir BROM (önyükleme salt okunur belleği) bulunur yürütülebilir ve daha sonra Android sistemini önyükler, ancak aynı zamanda olarak bilinen alternatif bir önyükleme modunu da barındırır. İndirme modu. Kesinlikle OEM servisi için tasarlanmıştır ve tıpkı bir cihazın engelini kaldırmak için kullanılabilir. Qualcomm'un Acil Durum İndirme Modu (EDL). "SP Flash Tool" adı verilen MediaTek yapımı özel bir program, sistem yazılımını bir cihaza yüklemeye zorlamak için bu arayüzü kullanabilir. Düşük seviyeli indirme modu, cihazın depolama alanı üzerinde etkili bir şekilde tam kontrole sahip olduğundan, Xiaomi ve Realme dahil birçok OEM, yanıp sönme sürecini karıştırmaya başladı. Bu uygulama nedeniyle, indirme modu yoluyla bellenimin güncellenmesi yalnızca ilgili OEM tarafından yetkilendirilmiş imzalı bir "İndirme Aracısı" programı tarafından gerçekleştirilebilir; bu da esasen şu anlama gelir:

cihaz üreticisinden izin almadığınız sürece kendi akıllı telefonunuzu flaş edemez veya engellemesini kaldıramazsınız.

XDA'nın muhteşem geliştirici topluluğu bir kez daha imdada yetişti. Dayalı önyükleme ROM'undan yararlanma aslında keşfetti XDA Kıdemli Üyesi tarafından xyz', geliştiriciler Dinolek Ve k4y0z Flashlama sırasında kimlik doğrulama gerektiren çok çeşitli MediaTek destekli cihazlarla uyumlu genel bir bypass yöntemi geliştirdik. SoC'ye özgü istismar verilerinden yararlanan yöntem, SP Flash Aracı tarafından yapılan flash öncesi sorguları engelliyor ve iki önemli parametrenin değerlerini zorla ayarlıyor ("Seri Bağlantı Kimlik Doğrulaması" ve "Ajan Kimlik Doğrulamasını İndir") Herhangi bir yetkilendirme olmadan yanıp sönme işlemine devam etmek için false olarak işaretleyin.


Açıklardan yararlanma yüklerinin, başarılı bir müdahale için özel olarak ayarlanmış bir USB sürücüsü gerektirdiğini unutmamak önemlidir. Windows çalıştırıyorsanız, varsayılan sürücü setini geçersiz kılmak için libusb tabanlı bir filtre sürücüsü yüklemeniz gerekir. Öte yandan Linux kullanıcılarının belirli bir yama uygula çekirdeğe. Birincil işletim sisteminize dokunmak istemiyorsanız şunları kullanabilirsiniz: Ateş ISO'su – özellikle bu amaç için tasarlanmış önyüklenebilir bir GNU/Linux ISO.

MediaTek indirme moduna erişim söz konusu olduğunda, hedef cihazı kapatmanız, Sesi Açma düğmesini (Xiaomi telefonlar için Sesi Kısma) basılı tutmanız ve telefonunuzu PC'nize bağlamanız yeterlidir. Aygıt Yöneticisi (Windows) altında veya çıktısında yeni bir seri aygıtın listelendiğini görmelisiniz. dmesg | grep usb (Linux'ta).

Bu noktada, bootrom korumasını devre dışı bırakmak için bu basit, 5 adımlı işlemi izleyin:

  1. İndirin ve yükleyin Piton. Windows kullanıcıları istendiğinde "Python X.X'i PATH'e Ekle" seçeneğini seçmelidir.
  2. Gerekli bağımlılıkları kullanarak yükleyin pip:
    pip install pyusb pyserial json5
  3. Baypas yardımcı programını indirin.
  4. Arşivi çıkarın, yardımcı programı çalıştırın ve telefonunuzu MediaTek İndirme moduna bağlayın. Günlüğün sonunda "Koruma devre dışı" ifadesini görmelisiniz.
    • Pencereler:
      pythonmain.py
    • Linux:
      ./main.py
  5. Bundan sonra telefonunuzun bağlantısını kesmeden SP Flash Tool'u UART Bağlantı modunda çalıştırın.

Ve bu kadar! Kimlik doğrulama rutini atlanmıştır ve artık telefonunuzu flaşlamaya/tuğlayı kaldırmaya hazırsınız. Daha deneyimli biri bunu bir adım daha ileri götürmek isterse, değiştirilmiş bir bölüm yedeğini flashlayabilir. hatalı bir IMEI'yi onarınancak bu, bu makalenin kapsamı dışındadır.

Şu anda desteklenen SoC'lerin listesi aşağıda bulunabilir. Baypas yönteminin diğer MediaTek yonga setlerinde de aynı şekilde çalışacağı teorik olarak geliştirildi, ancak birisinin bootrom koruma rutinini devre dışı bırakmak için önce uygun bir yükü kodlaması gerekiyor.

Desteklenen SoC'lerin listesi

  • mt6261
  • mt6572
  • mt6580
  • mt6582
  • mt6735
  • mt6737
  • mt6739
  • mt6755
  • mt6757
  • mt6761
  • mt6763
  • mt6765
  • mt6768
  • mt6771
  • mt6785
  • mt6799
  • mt6873
  • mt8127
  • mt8163
  • mt8173
  • mt8695

devamını oku

Çözüm

Hatırlarsanız yaklaşık bir yıl önce MediaTek yonga setlerinin tehlikeli bir rootkit'e karşı hassas olduğu tespit edilmişti. ve bilgisayar korsanları tarafından root erişimi elde etmek için aktif olarak kullanıldı. Bunu göz önünde bulundurursak, Tayvanlı çip tasarım şirketinin yonga setlerinde, flaş yaparken güven zincirini bozmaya izin veren kusuru neden hala düzeltmediği bilinmiyor. Her ne kadar durumun sadece iyi tarafını görmüş olsak da, bu MediaTek yongalarını kullanan daha az bilinen yüzlerce cihaz modeli göz önüne alındığında, güvenlik açısından durum daha da kötü.

Çıkarlarını temsil ettiğimiz özel geliştirme topluluğu açısından durumun başka bir yönü daha var. MediaTek cihazlarının büyük çoğunluğu kendilerini, yıkılması kolay ve yeniden canlandırılması zor olanın sürdürülemez bir kombinasyonunun içinde buluyor. Bunun da ötesinde, zorunlu yetkilendirme gerekliliği, onlar üzerindeki satış sonrası geliştirme potansiyelini gerçekten sınırlıyor. Baypas yöntemi, modlama sahnesinin tuğlalarını kaldırma zahmetinden kurtulmak isteyen MediaTek cihaz sahipleri için bir umut ışığı olmaktan başka bir şey değil.

Baypas yönteminin kod tabanını keşfetmek isteyenler aşağıdaki GitHub bağlantısına göz atmalıdır. Ayrıca ziyaret ederek geliştiricilerle etkileşimde bulunabilirsiniz. tartışma konusu.

MediaTek SP Flash Aracı Kimlik Doğrulaması GitHub Repo'yu Atla