Ora è facile bypassare l'autenticazione SP Flash Tool di MediaTek

Un gruppo di sviluppatori ha creato un'utilità Python per aggirare la routine di autenticazione di MediaTek SP Flash Tool. Controlla adesso!

I dispositivi con chipset MediaTek dispongono di una BROM (memoria di sola lettura di avvio), che in genere carica il preloader eseguibile e successivamente avvia il sistema Android, ma ospita anche una modalità di avvio alternativa nota come Modalità download. È strettamente destinato alla manutenzione OEM e può essere utilizzato per sbloccare un dispositivo, proprio come Modalità di download di emergenza (EDL) di Qualcomm. Un programma proprietario realizzato da MediaTek chiamato "SP Flash Tool" può utilizzare questa interfaccia per forzare il flashing del software di sistema su un dispositivo. Poiché la modalità di download di basso livello ha effettivamente il pieno controllo sullo spazio di archiviazione del dispositivo, molti OEM, tra cui Xiaomi e Realme, lo hanno fatto ha iniziato a offuscare il processo di flashing. A causa di questa pratica, il flashing del firmware tramite modalità download può essere eseguito solo da un programma firmato "Download Agent" che è stato autorizzato dall'OEM corrispondente, il che significa essenzialmente che

non puoi eseguire il flashing o sbloccare il tuo smartphone a meno che tu non abbia il permesso del produttore del dispositivo per farlo.

Bene, la fantastica comunità di sviluppatori di XDA è venuta ancora una volta in soccorso. Basato su un exploit della ROM di avvio originariamente scoperto dal membro senior di XDA xyz`, sviluppatori Dinolek E k4y0z hanno ideato un metodo di bypass generico, compatibile con un'ampia varietà di dispositivi basati su MediaTek che altrimenti richiederebbero l'autenticazione durante il flashing. Il metodo, che utilizza payload di exploit specifici del SoC, intercetta le query pre-flash effettuate da SP Flash Tool e imposta forzatamente i valori di due parametri cruciali ("Autenticazione collegamento seriale" e "Autenticazione agente di download") come false per continuare il processo di flashing senza alcun tipo di autorizzazione.


È importante notare che i payload dell’exploit richiedono un driver USB appositamente ottimizzato per un’intercettazione riuscita. Se utilizzi Windows, devi installare un driver di filtro basato su libusb per sovrascrivere il set di driver predefinito. Gli utenti Linux, invece, ne hanno bisogno applicare una patch specifica al nocciolo. Nel caso in cui non desideri toccare il tuo sistema operativo principale, puoi utilizzarlo FuocoISO – un ISO GNU/Linux avviabile progettato specificamente per questo scopo.

Quando si accede alla modalità download di MediaTek, è sufficiente spegnere il dispositivo di destinazione, tenere premuto il pulsante Volume su (Volume giù per i telefoni Xiaomi) e collegare il telefono al PC. Dovresti vedere un nuovo dispositivo seriale elencato in Gestione dispositivi (Windows) o nell'output di dmesg | grep usb (Linux).

A questo punto, segui questa semplice procedura in 5 passaggi per disattivare la protezione bootrom:

  1. Scarica e installa Pitone. Gli utenti Windows dovrebbero selezionare "Aggiungi Python X.X al PERCORSO" quando richiesto.
  2. Installa le dipendenze richieste utilizzando pip:
    pip install pyusb pyserial json5
  3. Scarica l'utilità di bypass.
  4. Estrai l'archivio, esegui l'utilità e collega il telefono in modalità Download MediaTek. Dovresti ottenere "Protezione disabilitata" alla fine del registro.
    • Finestre:
      pythonmain.py
    • Linux:
      ./main.py
  5. Successivamente, senza disconnettere il telefono, esegui SP Flash Tool in modalità Connessione UART.

E questo è tutto! La routine di autenticazione viene ignorata e ora sei pronto per eseguire il flashing/sbloccare il tuo telefono. Se qualcuno più esperto desidera fare un ulteriore passo avanti, può eseguire il flashing di un backup della partizione modificata riparare un IMEI difettoso, ma questo va oltre lo scopo di questo articolo.

L'elenco dei SoC attualmente supportati è disponibile di seguito. Si teorizza che il metodo di bypass funzioni allo stesso modo su altri chipset MediaTek, ma qualcuno deve prima codificare un carico utile adatto per disabilitare la routine di protezione bootrom.

Elenco dei SoC supportati

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

Per saperne di più

Conclusione

Se ricordate, quasi un anno fa si scoprì che i chipset MediaTek erano suscettibili a un pericoloso rootkit, ed è stato attivamente sfruttato dagli hacker per ottenere l'accesso come root. Considerando ciò, non è noto il motivo per cui l'azienda taiwanese di progettazione di chip non abbia ancora corretto il difetto nei suoi chipset che consente di sconfiggere la catena di fiducia durante il flashing. Anche se abbiamo visto solo il lato positivo della situazione, dal punto di vista della sicurezza è ancora peggio se si considerano le centinaia di modelli di dispositivi meno conosciuti che utilizzano questi chip MediaTek.

C'è un altro aspetto della situazione dal punto di vista della comunità dello sviluppo personalizzato, di cui rappresentiamo gli interessi. La maggior parte dei dispositivi MediaTek si trova in una combinazione insostenibile di facile installazione e difficile ripristino. Oltre a ciò, il requisito dell’autorizzazione forzata limita realmente il potenziale di sviluppo del mercato post-vendita su di essi. Il metodo di bypass non è altro che un barlume di speranza per i possessori di dispositivi MediaTek, che vogliono solo eliminare dalla scena del modding i problemi legati allo sblocco.

Coloro che sono interessati ad esplorare la base di codice del metodo di bypass dovrebbero dare un'occhiata al collegamento GitHub di seguito. Puoi anche interagire con gli sviluppatori visitando il sito Thread di discussione.

Autenticazione dello strumento Flash MediaTek SP Ignora il repository GitHub