Exploit Targets Qualcomm EDL režīms ietekmē dažas Xiaomi, OnePlus, Nokia un citas ierīces

Qualcomm ierīcēm ir EDL režīms, kas, kā izrādās, ir izmantojams, ja jums ir pareizie rīki, ko izlaiduši oriģinālo iekārtu ražotāji.

Ierīcēm ar Qualcomm mikroshēmojumiem ir a Primārs Bootloader (PBL), kas parasti sāk Android sistēmu, taču tajā ir arī alternatīvs sāknēšanas režīms, kas pazīstams kā EDL režīms. EDL režīms ir Qualcomm Esaplūšana Dpašu ielāde Mode un ļauj an Ooriģināls Eaprīkojumu Mražotājs (OEM), lai piespiestu ierīcē ievietot zibatmiņas programmatūru. To nevar modificēt (tikai lasīšanas režīms), un tam ir pilnīga kontrole pār ierīces krātuvi. Daudzi oriģinālo iekārtu ražotāji, tostarp OnePlus un Xiaomi, ir izlaiduši rīkus (pazīstami kā programmētāji), kas izmanto EDL režīmu un protokols, kas pazīstams kā Firehose, lai atbloķētu ierīci, savukārt citi rīki no uzņēmumiem, piemēram, Nokia, ir noplūduši. Firehose var izmantot vairākas komandas, lai mirgotu ierīces, kā arī iespēju pārbaudīt datus ierīces atmiņā. Drošības pētnieki Roija Heja (@roeehay) un Noams Hadads no Aleph izpēte

ir atklājuši kritiskas ierīces ievainojamības, izmantojot šo režīmu, kas efektīvi nodrošina uzbrucēju pilna piekļuve ierīcei.

Ir svarīgi to atzīmēt šai izmantošanai ir nepieciešama fiziska piekļuve ierīcei, taču tas joprojām ir neticami bīstams un, visticamāk, to nevar salabot. Uzbrucēji izmantoja EDL režīmam piešķirto piekļuves līmeni, lai apietu Nokia 6 drošo sāknēšanu, uzvarot uzticības ķēde un pilnīga koda izpilde visās sāknēšanas secības daļās, tostarp Android OS pati par sevi. Tiek uzskatīts, ka tas darbojas tādā pašā veidā citās ierīcēs, un pētniekiem arī izdevās atbloķēt un sakņot vairākas Xiaomi ierīces, nezaudējot datus.

Kādas ierīces ietekmē šī izmantošana?

Pirmkārt, ierīces, kuras tiek ietekmētas.

Ietekmēto ierīču saraksts.

  • LG G4
  • Nokia 6 (d1c)
  • Nokia 5
  • Nexus 6 (shamu)
  • Nexus 6P (makšķernieks)
  • Moto G4 Plus
  • OnePlus 5 (sierburgers)
  • OnePlus 3T
  • OnePlus 3
  • OnePlus 2
  • OnePlus X
  • OnePlus One
  • ZTE Axon 7
  • ZUK Z1
  • ZUK Z2
  • Xiaomi Note 5A (uglite)
  • Xiaomi Note 5 Prime (ugg)
  • Xiaomi Note 4 (mido)
  • Xiaomi Note 3 (Jason)
  • Xiaomi Note 2 (skorpions)
  • Xiaomi Mix (litijs)
  • Xiaomi Mix 2 (chiron)
  • Xiaomi Mi 6 (sagit)
  • Xiaomi Mi 5s (mežāzis)
  • Xiaomi Mi 5s Plus (natrium)
  • Xiaomi Mi 5x (Tiffany)
  • Xiaomi Mi 5 (gemini)
  • Xiaomi Mi 3 (Cancro)
  • Xiaomi Mi A1 (tissot)
  • Xiaomi Mi Max2 (skābeklis)
  • Xiaomi Redmi Note 3 (kenzo)
  • Xiaomi Redmi 5A (riva)
  • Xiaomi Redmi 4A (rožains)

Lasīt vairāk

Android tālruņa izmantošana

Parasta Android Qualcomm tālruņa sāknēšanas secība

Pirms paskaidrot, kā to var izmantot, vispirms ir jāsaprot tipiskas Android ierīces sāknēšanas secība. The Sbieža programmatūra Bootloader (SBL) ir ar ciparparakstu parakstīts sāknēšanas ielādētājs, kura autentiskums tiek pārbaudīts, pirms tiek ielādēts imem. imem ir ātra atmiņa, ko izmanto atkļūdošanai un DMA (direkts matmiņa access) darījumiem un pieder Qualcomm mikroshēmojumiem.

Dažām ierīcēm ir eXstiepjams Bootloader (XBL), nevis SBL, taču sāknēšanas process ir gandrīz tāds pats. Pēc tam SBL vai XBL palaiž ABOOT, kas ievieš ātro sāknēšanu. Pēc tam tiek ielādēta arī TrustZone (uz aparatūru balstīta drošība). TrustZone pārbauda ABOOT autentiskumu, izmantojot uz aparatūru balstītu saknes sertifikātu. SBL (vai XBL, dažos gadījumos) ir paredzēts, lai noraidītu nepareizi parakstītu (vai neparakstītu) ABOOT.

Pēc autentifikācijas ABOOT pirms Linux kodola palaišanas pārbauda /boot un /recovery autentiskumu. Daži sistēmas sagatavošanas darbi tiek veikti, un pēc tam koda izpilde tiek pārsūtīta uz kodolu. ABOOT parasti sauc par Android sāknēšanas ielādētāju, un, atbloķējot ierīces sāknēšanas ielādētāju, šī autentiskuma pārbaude tiek atspējota pakalpojumā ABOOT.

Vizualizēta standarta Android ierīces sāknēšanas secība. // Avots: Aleph izpēte

Piekļuve EDL režīmam

Lai gan dažām ierīcēm ir vienkārša aparatūras kombinācija (vai, vēl ļaunāk, vienkārša patentēta ātrās sāknēšanas komanda, kas atrodas daudzās ierīcēs Xiaomi ierīcēm), citām, piemēram, Nokia ierīcēm, ir jāsaīsina tapas, kas pazīstamas kā “testa punkti”, kas atrodas ierīces galvenajā ekrānā. dēlis. Pirms 2017. gada decembra drošības ielāpa bija iespējams vienkārši palaist "adb reboot edl" daudzās ierīcēs (tostarp Nexus 6 un 6P) un pāriet EDL režīmā. Kopš tā laika tas ir labots.

Pārbaudes punkti ir parādīti uzzīmētā dzeltenā lodziņā ierīces pamatplates apakšā. // Avots: Aleph izpēte

Citas ierīces var izmantot arī tā saukto "dziļās zibspuldzes" kabeli, kas ir īpašs kabelis ar noteiktiem kontaktiem, kas ir īssavienoti, lai liktu sistēmai palaist EDL režīmā. Vecās Xiaomi ierīces var izmantot šo metodi kopā ar Nokia 5 un Nokia 6. Citas ierīces arī sāks darboties EDL režīmā, ja tām neizdosies pārbaudīt SBL.

Dziļais zibspuldzes kabelis

EDL režīma izmantošana, lai iegūtu pilnu piekļuvi OnePlus 3/3T

EDL režīmu ierīcē var izmantot vairākos veidos, galvenokārt ierīču atbloķēšanai, piespiežot tās mirgot. Kā paskaidrots iepriekš, teorētiski jebkuram vajadzētu būt drošam, lai piekļūtu šim režīmam, jo ​​sliktākajā gadījumā ABOOT noraidīs programmatūru, kuru ražotājs nav oficiāli parakstījis. Lai gan tā ir taisnība, patiesībā ir iespējams iegūt pilnīgu kontroli pār OnePlus 3 vai 3T un tā failiem, izmantojot pētnieku parādīto koncepcijas izmantošanas pierādījumu.

Tas tiks darīts, izmantojot divas ļoti bīstamas komandas, kuras OnePlus atstāja pieejamas vecākā ABOOT versijā (Android sāknēšanas ielādētājs), lai atbloķētu ierīces sāknēšanas ielādētāju (bez brīdinājuma lietotājam sāknēšanas laikā) un atspējotu dm_verity. dm_verity ir pazīstams arī kā verificēta sāknēšana, un tā ir daļa no drošas sāknēšanas secības Android ierīcē. Abas komandas ir šādas.

fastboot oem disable_dm_verity
fastboot oem 4F500301/2

Ievērojiet vienkāršo, 4 pakāpju procesu, kurā tiek izmantots Firehose protokols.

  1. Vispirms palaidiet ierīci EDL režīmā. To var izdarīt, izmantojot adb operētājsistēmā OxygenOS 5.0 vai vecāku versiju, vai arī izmantojot vienkāršu aparatūras taustiņu kombināciju.
  2. Lejupielādējiet veco sistēmas attēlu zemāk esošajai OxygenOS 4.0.2 versijai.
  3. Flash aboot.bin caur firehose (atcerieties, ka aboot.bin ievieš ātro sāknēšanu, kā jau minēts iepriekš)
  4. Tagad varēsit atspējot drošo sāknēšanu un atbloķēt sāknēšanas ielādētāju nenoslaukot ierīci vienkārši izmantojot divas iepriekš minētās ātrās sāknēšanas komandas.

Ja atceraties, iepriekš tika konstatēts, ka OnePlus gandrīz pirms gada atstāja divas bīstamas ātrās sāknēšanas komandas, no kurām viena atbloķēja sāknēšanas ielādētāju, bet otra atspējoja drošo sāknēšanu. Lai gan tā ir taisnība, ka uzbrucējs ierīcē nevar instalēt ļaunprātīgu programmatūru, viņi var pazemināt ierīces versiju piederēt vecāka, neaizsargāta pret uzbrukuma programmatūru. Vienkārši palaižot iepriekš minētās ātrās sāknēšanas komandas, uzbrucējs var iegūt pilna piekļuve uz ierīci.

Un tas arī viss, sāknēšanas ielādētājs ir atbloķēts, drošā sāknēšana ir izslēgta un nav absolūti nekādu datu zudumu. Ja uzbrucējs vēlētos spert soli tālāk, viņš varētu mirgot ar ļaunprātīgu pielāgotu kodolu, kas nodrošina root piekļuvi ierīcei, par ko lietotājs nekad nezinātu.

Firehose darbojas, izmantojot Qualcomm Sahara protokolu, kas pieņem ar OEM parakstītu programmētāju un tādējādi tiks veikts iepriekš minētais uzbrukums. Kad tas ir savienots ar ierīci, tas darbojas kā SBL, izmantojot USB. Lielākā daļa programmētāju izmanto Ugunsdzēsības šļūtene lai sazinātos ar tālruni EDL režīmā, ko pētnieki izmantoja, lai iegūtu pilnīgu ierīces vadību. Pētnieki to arī izmantoja atbloķējiet Xiaomi ierīci, vienkārši mirgojot modificētu attēlu kas atbloķēja sāknēšanas programmu. Pēc tam viņi aktivizēja pielāgotu kodolu, kas piešķīra root piekļuvi, un palaida SELinux atļaujā, kā arī izvilka no ierīces šifrēto lietotāja datu attēlu.

Secinājums

Nav zināms, kāpēc oriģinālo iekārtu ražotāji atbrīvo šos programmētājus no Qualcomm. Nokia, LG, Motorola un Google programmētāji drīzāk noplūda, nevis tika atbrīvoti, tomēr pētniekiem tas izdevās pārtrauciet visu Nokia 6 uzticības ķēdi un iegūstiet pilnīgu piekļuvi ierīcei, izmantojot līdzīgas metodes ekspluatācija. Viņi ir pārliecināti, ka uzbrukumu var pārnest uz jebkuru ierīci, kas atbalsta šos programmētājus. Ja iespējams, oriģinālo iekārtu ražotājiem ir jāizmanto aparatūras drošinātāji, kas novērš programmatūras atcelšanu, izpūšot, kad ierīces aparatūra tiek atvilkta, un var brīdināt lietotāju, ka tā ir notikusi. Tie, kas interesējas, var apskatīt pilnu tālāk sniegto pētījumu, kā arī izlasīt visu Nokia ekspluatāciju.


Avots: Aleph Research