Det er nu nemt at omgå MediaTeks SP Flash Tool-godkendelse

click fraud protection

En gruppe udviklere har lavet et Python-værktøj til at omgå godkendelsesrutinen i MediaTek SP Flash Tool. Tjek det ud nu!

Enheder med MediaTek-chipsæt har en BROM (boot read-only memory), som typisk indlæser preloaderen eksekverbar og efterfølgende starter Android-systemet, men rummer også en alternativ opstartstilstand kendt som Download-tilstand. Det er udelukkende beregnet til OEM-service og kan bruges til at fjerne mursten af ​​en enhed, ligesom Qualcomms Emergency Download Mode (EDL). Et MediaTek-fremstillet proprietært program kaldet "SP Flash Tool" kan bruge denne grænseflade til at tvinge systemsoftwaren på en enhed. Da download-tilstanden på lavt niveau effektivt har fuld kontrol over enhedens lager, har mange OEM'er inklusive Xiaomi og Realme begyndte at sløre blinkprocessen. På grund af denne praksis kan firmware-blinkning via downloadtilstand kun udføres af et signeret "Download Agent"-program, der er blevet godkendt af den tilsvarende OEM, hvilket i det væsentlige betyder, at

du kan ikke flashe eller frigøre din egen smartphone, medmindre du har tilladelse fra enhedsproducenten til at gøre det.

Nå, XDAs fantastiske udviklerfællesskab er igen kommet til undsætning. Baseret på en boot ROM-udnyttelse oprindeligt opdaget af XDA Senior Member xyz`, udviklere Dinolek og k4y0z er kommet med en generisk bypass-metode, som er kompatibel med en lang række MediaTek-drevne enheder, som ellers ville kræve godkendelse, mens de blinker. Metoden, som gør brug af SoC-specifikke udnyttelsesnyttelaster, opsnapper pre-flash-forespørgslerne lavet af SP Flash Tool og sætter kraftfuldt værdierne af to afgørende parametre ("Serial Link Authentication" og "Download Agent Authentication") som falsk for at fortsætte blinkprocessen uden nogen form for autorisation.


Det er vigtigt at bemærke, at udnyttelsesnyttelasterne kræver en specielt tilpasset USB-driver for en vellykket aflytning. Hvis du kører Windows, skal du installere en libusb-baseret filterdriver for at tilsidesætte standarddriversættet. Linux-brugere skal på den anden side påfør en specifik patch til kernen. I tilfælde af at du ikke ønsker at røre ved dit primære operativsystem, kan du gøre brug af FireISO – en startbar GNU/Linux ISO designet specielt til dette formål.

Når det kommer til at få adgang til MediaTek-downloadtilstanden, skal du bare slukke for målenheden, holde lydstyrke op-knappen nede (Lydstyrke ned for Xiaomi-telefoner) og tilslutte din telefon til din pc. Du bør se en ny seriel enhed opført under Enhedshåndtering (Windows) eller i outputtet af dmesg | grep usb (Linux).

På dette tidspunkt skal du følge denne enkle 5-trins proces for at deaktivere bootrom-beskyttelse:

  1. Download og installer Python. Windows-brugere skal vælge "Tilføj Python X.X til PATH", når du bliver bedt om det.
  2. Installer de nødvendige afhængigheder vha pip:
    pip install pyusb pyserial json5
  3. Download bypass-værktøjet.
  4. Udpak arkivet, kør værktøjet, og tilslut din telefon i MediaTek Download-tilstand. Du bør få "Beskyttelse deaktiveret" i slutningen af ​​loggen.
    • Windows:
      pythonmain.py
    • Linux:
      ./main.py
  5. Kør derefter SP Flash Tool i UART-forbindelsestilstand uden at afbryde din telefon.

Og det er det! Godkendelsesrutinen omgås, og du er nu klar til at flashe/afbryde din telefon. Hvis nogen mere erfarne ønsker at tage dette et skridt videre, kan de flashe en modificeret partitionsbackup til reparere en fejlagtig IMEI, men dette er uden for rammerne af denne artikel.

Listen over SoC'er, der i øjeblikket understøttes, kan findes nedenfor. Bypass-metoden er teoretiseret til at fungere på samme måde på andre MediaTek-chipsæt, men nogen skal først kode en passende nyttelast for at deaktivere bootrom-beskyttelsesrutinen.

Liste over understøttede SoC'er

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

Læs mere

Konklusion

Hvis du husker, blev MediaTek-chipsæt tidligere fundet at være modtagelige for et farligt rootkit for næsten et år siden, og det blev aktivt udnyttet af hackere til at få root-adgang. I betragtning af det er det uvist, hvorfor det taiwanske chipdesignfirma stadig ikke har rettet fejlen i sine chipsæt, der gør det muligt at besejre tillidskæden, mens den blinker. Selvom vi kun har set den gode side af situationen, er den endnu værre ud fra et sikkerhedsperspektiv, når man tænker på de hundredvis af mindre kendte enhedsmodeller, der bruger disse MediaTek-chips.

Der er et andet aspekt af situationen set fra det brugerdefinerede udviklingssamfund, hvis interesser vi repræsenterer. Et flertal af MediaTek-enheder befinder sig i en uholdbar kombination af let at mure og svært at genoplive. Oven i købet begrænser kravet om tvungen godkendelse virkelig potentialet for eftermarkedsudvikling på dem. Bypass-metoden er intet andet end et glimt af håb for MediaTek-enhedsejere, som bare ønsker at tage besværet med at slippe ud af modding-scenen.

De, der er interesseret i at udforske kodebasen for bypass-metoden, bør tage et kig på GitHub-linket nedenfor. Du kan også interagere med udviklerne ved at besøge diskussionstråd.

MediaTek SP Flash Tool Authentication Bypass GitHub Repo