mobile

Maaaring hindi na maitago ni Magisk ang bootloader na mai-unlock mula sa mga app

XDA Kinikilala Developer topjohnwu's "Magisk"Proyekto ay mahalagang naging magkasingkahulugan na may" ugat "sa komunidad ng Android. Isa sa mga pangunahing dahilan na napakapopular nito ay dahil maitatago nito ang katotohanan na binago ng gumagamit ang kanilang aparato. Gayunpaman, maaaring masira ang Google sa kakayahan ng Magisk upang itago ang katayuan ng pag-unlock ng bootloader mula sa mga application.

Upang ma-root ang iyong telepono, karaniwang kailangan mong i-unlock ang bootloader, na nagbibigay-daan sa iyo upang mag-flash ng mga nabagong imahe ng boot. Kinakailangan ito sapagkat binabago ng Magisk ang imahe ng boot upang makamit ang katayuan ng bootloader at / o mga tseke na na-verify na Boot status. Google's KaligtasanNet Ang Attestation API, na bahagi ng Mga Serbisyo ng Google Play, ay ginagamit upang sabihin sa isang app kung tumatakbo ito sa isang tampered device; kung nakita ng SafetyNet API na ang bootloader ay nai-lock, pagkatapos ito ay magbabalik ng isang katayuan sa pagkabigo para sa tseke na "Basic Integrity". Ang mga aparato na nabigo ang tseke na ito ay maaaring mai-lock mula sa mga app na gumagamit ng SafetyNet API upang matukoy ang integridad ng aparato; karaniwang kasama ang mga naturang apps ng banking apps, apps ng pagbabayad (tulad ng Google Pay), at maraming mga online games (tulad ng Pokémon Go). Gayunpaman, dahil sa SafetyNet API na ngayon ay nagamit lamang ang mga tseke ng software upang matukoy kung ang aparato ay na-tampered, maaaring sakupin ng Magisk ang bootloader at / o Katunayan na Boot na katayuan mula nang mai-install ito sa isang mas mababang antas at may mas mataas na pribilehiyo kaysa sa Google Play Mga serbisyo at iba pang applicationpace. Tulad ng ipinaliwanag ng topjohnwu, ang MagiskHide "ay lumilikha ng isang nakahiwalay na 'ligtas na kapaligiran' para sa proseso ng pagtuklas, at dumadaan ito sa API ng Google upang lumikha ng isang legit Ang resulta ng SafetyNet na hindi sumasalamin sa totoong katayuan ng aparato. "

Gayunman, kamakailan lamang, napansin ng mga gumagamit na ang kanilang mga aparato na hindi naka-lock ang bootloader ay hindi nagtagumpay sa pagsusuri ng Basic Integrity ng SafetyNet kahit na ginamit nila ang Magisk upang i-patch ang imahe ng boot. Ayon kay topjohnwu, ito ay dahil maaaring ipinatupad ng Google ang key-level key attestation upang mapatunayan na ang imahe ng boot ay hindi nai-tampered. Partikular, nangangahulugan ito ng Mga Serbisyo sa Play ng Google "[nagpapadala] ng hindi binagong sertipiko ng keystore sa mga server ng SafetyNet, i-verify ang pagiging lehitimo nito, at suriin ang data ng extension ng sertipiko upang malaman kung ang iyong aparato ay nagpatunay na pinagana ang boot (katayuan ng bootloader)." Nangangahulugan ito na hindi na posible na maitago ang katotohanan na ang bootloader ay na-lock, na magreresulta sa mga aplikasyon tulad ng Google Pay at Pokémon Go na hindi na gumana nang normal.

Kaya't napupunta tayo, pagkalipas ng maraming taon na nakakatuwang gumugulo sa paligid ng paggamit ng Magisk, tila nagpasya ang Google na WAG na nagpasya na "ayusin" ang SafeNet sa isang bagay na kapaki-pakinabang, at iyon ay ang paggamit ng pangunahing patotoo upang mapatunayan ang katayuan ng aparato (pagkatapos ng 3 taon mula nang ipinakilala sa platform ng Android! )

- John Wu (@topjohnwu) Marso 11, 2020

Tulad ng nabanggit ni topjohnwu, ang pagbabagong ito sa paraan na sinusuri ng SafetyNet ang katayuan ng pag-unlock ng bootloader ay nagmumula sa pamamagitan ng isang pag-update ng server sa SafetyNet API na nilalaman ng Google Play Services. Gayunpaman, hindi lahat ng gumagamit ay hindi nabigo ang mga na-update na mga tseke sa SafetyNet, kaya't ang bagong hardware-level key attestation ay hindi pa malawak na ipinatupad.

Nakita namin ang topjohnwu na pagtagumpayan ang mga teknikal na hurdles muli at oras. Madalas na inilalabas ng Google ang mga bagong tseke sa SafetyNet na topjohnwu pagkatapos ay natuklasan at bypasses sa Magisk. Ang bawat bagong bersyon ng Android ay nagdudulot ng mga pagbabago sa istraktura ng pagkahati o imahe ng boot, na hinihiling ng topjohnwu na pag-aralan ang mga pagbabago at pagkatapos ay ipatupad ang isang bagong pamamaraan ng patching. Gayunpaman, kahit na ang topjohnwu ay maaaring magpumilit upang makahanap ng isang bypass sa oras na ito sa paligid.

Iyon ay dahil sa workaround sa oras na ito ay kasangkot sa pag-hack ng Trusted Execution Environment (TEE) firmware ng mga aparato upang makuha ang pribadong key. Gayunpaman, ito ay hindi kapani-paniwalang mahirap gawin dahil nangangailangan ito ng paghahanap ng kahinaan sa firmware na idinisenyo upang maging hindi mapaniniwalaan o kapani-paniwala. Sa katunayan, maraming mga kumpanya ang nag-aalok ng mga pagbabayad sa daan-daang libong dolyar kung ang nasabing kahinaan ay matatagpuan. Halimbawa, ang Google, ay nagbabayad ng $ 250,000 para sa mga kahinaan sa pagpapatupad ng remote na code sa Pixel's Trusted Execution Environment, at hanggang sa $ 1,000,000 para sa kahinaan sa Titan M security chip. Kahit na ang isang pribadong susi ay kahit papaano ay maikalat, malamang na hindi ito gagamitin mula pa Maaari nang malayuan ng Google ang susi kaya hindi ito magamit upang mapatunayan ang integridad ng mga aparato.

Oo, babawiin natin sila. Kung ang mga susi ay may leak, babawiin namin ang mga ito. Kung ang firmware ay may hindi mababago na kapintasan, babawiin namin sila. Kung ang firmware ay may isang kapintasan na maaaring maiayos sa pamamagitan ng OTA, susuriin namin ang sitwasyon upang magpasya kung sapat na iyon.

- Shawn Willden (@shawnwillden) Marso 11, 2020

Kapag ang key-level key attestation ay malawak na ipinatupad para sa SafetyNet, karamihan sa mga aparato na may mga naka-lock na bootloader ay tumatakbo Android 8.0 Ang Oreo o mas mataas ay mabibigo na ipasa ang pagsusuri sa Basic Integrity ng SafetyNet. Ito ay dahil ang lahat ng mga aparato na inilunsad sa Android 8.0 Oreo o mas mataas ay kinakailangan upang maipatupad ang isang hardware keystore sa isang TEE. Ang ilang mga aparato sa ngayon kahit na may nakalaang mga module ng seguridad sa hardware (HSM) na ginagawang mas mahirap ang pagsasamantala sa pamamagitan ng paglayo sa TEE sa pangunahing processor; ang Titan M sa Pixel 4 at Ang bagong security chip ng Samsung sa Galaxy S20 ang mga halimbawa nito.

Topjohnwu nagpapaliwanag din na ang iba pang mga potensyal na workarounds ay imposible o lubos na mapaghamong. Gamit ang Xposed Framework upang baguhin ang SafetyNet Attestation API sa Google Play Services ay malamang na hindi gagana mula sa "wastong mga tseke ng SafetyNet ay mapatunayan ang mga resulta sa isang malaywang server, hindi sa [aparato] na maaaring mai-manipulate ng mga code ng injection ng code." Bukod dito, ang Google Play Services ay lubos na napukaw, na ginagawa ang paglikha ng naturang Xposed Modyul hindi mapaniniwalaan o kapani-paniwala hamon sa unang lugar. Ang pagsamsam ng isang resulta ng pagsubok sa SafetyNet ay hindi maaaring gawin mula pa mula noong ang mga tugon ng SafetyNet "ay nagmula sa mga server ng Google at nilagdaan sa pribadong key ng Google."

May kakayahan ang Google na patigasin ang mga tseke ng SafetyNet gamit ang key-backed key attestation ng maraming taon ngayon. Ang katotohanan na pinigilan nilang gawin ito sa loob ng 3 taon ay pinapayagan ang mga gumagamit na masiyahan sa ugat at Magisk Module nang hindi sinasakripisyo ang kakayahang gumamit ng mga apps sa pagbabangko. Gayunpaman, tila ang kakayahang Magisk na epektibong maitago ang katayuan ng pag-unlock ng bootloader ay malapit nang matapos. Ito ay isang pagbabago na inaasahan namin ng maraming taon, ngunit malungkot kaming makita ito sa wakas magkabisa. Inaasahan namin na i-update ng Google ang SafetyNet Attestation API upang makabalik kung ang tseke ng katayuan ay ginamit na batay sa hardware na nakabatay sa hardware dahil papayagan nitong magpasya ang mga developer ng app kung nais nilang hadlangan ang lahat ng mga gumagamit na nag-lock ang bootloader.

Salamat kay Daniel Micay (@DanielMicay) para sa kanyang pag-input patungkol sa bagay na ito!

Ang post Maaaring hindi na maitago ni Magisk ang bootloader na mai-unlock mula sa mga app lumitaw ang unang sa Xda-developer.

Ipagkalat ang pag-ibig

Magdagdag ng Komento

Mag-click dito upang mag-post ng isang puna