Durva SGS3 sebezhetőség?

2012.09.26. 09:01 decoati

A tegnapi nap folyamán a Slashgear jóvoltából napvilágot látott egy két nappal ezelőtti, az Ekoparty bizonsági konferencián készült lent látható felvétel, amin egy Samsung Galaxy S III típusú készüléken hajtanak végre factory resetet úgy, hogy a telefon stock böngészőjével egy preparált weboldalt nyitnak meg. A készülék az oldal megnyitásának pillanatában gyári alaphelyzetbe állt anélkül, hogy a felhasználónak lehetősége lett volna a beavatkozásra, vagy a factory reset lefutásának meggátolására. A támadás működhet NFC-n, és QR kódon keresztül is.


A videó érthető módon nagy port vert fel, neves portálok is felültek annak a tévhitnek hogy ez egy SGS3, vagy TouchWiz-specifikus sebezhetőség. Ezt arra alapozták hogy egyéb böngészőket használva az oldal megnyitásakor nem történt semmi, a factory reset nem futott le.

A támadásban valójában egy trükkösen elhelyezett USSD kód (eszközspecifikus kód, amit a tárcsázóba beütve a telefon speciális, általában diagnosztikai funkcióit tudjuk aktiválni, valamint a készülék extra információit érjük el) a főszereplő, amit a böngésző a megnyitás pillanatában automatikusan továbbít a tárcsázónak, ami végrehajtja azt. A módszer ezen a videón is jól látszik.

A működési elvből több dolog is következik:

  • a sebezhetőség nem Samsung-specifikus, egy pillanat alatt át lehet írni HTC-specifikussá a megfelelő USSD kóddal (mint ahogy meg is tették)
  • azok a böngészők amik nem továbbítják ezeket a kódokat a tárcsázónak, biztonságot jelentenek (Chrome, Dolphin, stb.)
  • third-party tárcsázók (pl. Dialer One, exDialer) szintén biztonságot jelentenek, főként ha nem állítjuk be őket alapértelmezettnek, így az eljárás az automata kimenő hívások előtt is meg fog állni hogy kiválasszuk a tárcsázót, tehát van lehetőségünk kilépni a folyamatból.


A Slashgear cikke alapján további veszélyben lévő készülékek: Galaxy Beam, Galaxy S Advance, Galaxy Ace, Galaxy S II.


A sebezhetőség a firmwaretől függ, a támadás különböző szolgáltatók különböző verzióin eltérő hatékonysággal működik. Az AT&T pl. már ki is adta a patchet a saját verzióira, a független euópai firmware verzió szintén nem támadható. A hazai verziók támadhatóságáról egyelőre nincs információnk, de a JB upgrade garantáltan foltozza ezt a biztonsági rést.

Legyetek résen.

Android-Alert_01.png

update1: A probléma komolyabb mint gondoltuk, a sebezhetőség olyannyira széleskörű, hogy a HTC-k stock böngészővel rendre megbuknak, valamint az eredeti exploitban található USSD kód már a legelső SGS-ben is a factory reset kódja. Tesztelésre Samsung tulajoknak itt egy megbízható oldal (via), ha az oldal megnyitása után a telefon automatikusan kiírja a saját IMEI kódját, akkor a készülékünk sebezhető. (gyors házi teszt: az SGS Telenoros 2.3.4 stock böngészővel megbukik, az Opera és a Firefox böngésző biztonságot jelent.)

update2: Gabking kolléga egyik mobilers!-es kapcsolata, Sebastian Mauer közzétett egy workaroundot, íme: 

"This is my attempt at fixing the USSD vulnerability. It should intercept the Intent to launch/dial an USSD code. Just install the apk and choose it ("Dial Proxy") as default handler when Android asks you to select an App to handle the intent.

I've prepared a website with the vulnerability (e.g. embedded tel: iframe) but replaced the dangerous code with an invalid code with the same prefix. So you should be safe even if my fix doesn't work. http://maui.at/s3/test2.html

NOTICE: Apparently the issue has already been fixed with devices running Android 4.0.4 but I'll be glad to hear if this works for anyone running earlier versions." 

(Fordítás: itt az én próbálkozásom az USSD sebezhetőség megoldására. A program elfogja az USSD kód tárcsázására tett kísérleteket. Installáld fel az .apk-t, és válaszd ki (Dial Proxy), amikor az Android rákérdez, milyen app-pal kezelje a tevékenységet. Készítettem egy weboldalt a sebezhetőséggel (pl. embedded tel: iframe) de a veszélyes kód helyére egy érvénytelen kódot helyeztem, azonos előtaggal. Biztonságos, még ha a fix nem is működne. http://maui.at/s3/test2.html

Megj: Úgy tűnik, az Android 4.0.4-et futtató készülékekben már megoldották a problémát, de remélem, a korábbi verzióknál még hasznos lesz")

Az ide tartozó .apk pedig itt elérhető.

update3: A Samsung közleményben jelezte, hogy már ki is toltak egy OTA frissítést a Galaxy S III-ra, ami orvosolja a problémát. S3 tulajok amint tehetik, frissítsenek, ha megérkezik hozzájuk a csomag!


· 1 trackback Címkék: biztonság android galaxy

A bejegyzés trackback címe:

https://androlib.blog.hu/api/trackback/id/tr294802973

Trackbackek, pingbackek:

Trackback: Újabb, rengeteg Android telefont érintő sebezhetőséget találtak 2014.07.08. 07:48:27

Az új hiba tetszőleges telefonszám felhívására ad lehetőséget erre nem jogosult alkalmazások számára is

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Yarner · http://androlib.blog.hu 2012.09.26. 10:27:39

Gyors ellenőrzés: Galaxy S1, Tsunami ICS ROM, Android 4.0.4 (!)- mind a gyári böngésző , mind a Boat Browser elindította a kódot gondolkodás nélkül. Ez tényleg ijesztő...
(A Chrome kompatibilitási hiba miatt nem is indult el a telefonon (WTF))

Sebastian proxyja viszont működni látszik, szépen megfogta.
Megyek, teszem fel az Operát...

lMichele 2012.09.26. 10:31:40

Galaxy nexus 4.1.1 nem produkált semmit se ;)

decoati 2012.09.26. 10:50:43

@lMichele: a GNex-eken nem tudták reprodukálni az biztonságban van

UFP P 2012.09.26. 11:02:00

SGS CM10 alatt látszólag gyári böngészővel sincs semmi gond.

meglivorn 2012.09.26. 11:03:04

Hát ez szép.
SGS1 CM9.1 stock és chrome is beszopja.
Csúnyadolog.

Yarner · http://androlib.blog.hu 2012.09.26. 11:10:32

Újabb update (ld. fent) S3-ra állítólag már kiküldték OTA-n át a javítást. A többieknek Dial Proxy vagy Opera...

InTheGajd 2012.09.26. 11:42:07

Akkor most mi van?

Alapfeltétel a tárcsázóban lévő kód, amit manuálisan kell bevinni?

Yarner · http://androlib.blog.hu 2012.09.26. 11:51:25

@Tickitucku: Igen, azokat a kódokat használja. A böngésző egy bizonyos utasítás hatására betolja az adott kódot a tárcsázóba, az meg kérdezés nélkül elindítja, nem kér jóváhagyást. És van ilyen kódja a factory resetnek is, ami nagy szívás.

decoati 2012.09.26. 12:06:38

@Tickitucku: nem
Ezek az USSD kódok a telefon szoftverének a részei, nagyon régóta léteznek, pl. szervizek ezeken keresztül tudnak funkciókat, teszteket futtatni a készüléken. Minden telefonban megtalálhatóak, de ugyanazt a funkciót eltérő készülékeken eltérő módon lehet előhívni. (pl. umitem.blogspot.hu/2010/10/samsung-galaxy-s-i9000-ussd-codes.html ) Ezeket egyszerűen bepötyögöd a tárcsázóba, és elindul a funkció.
Namost: van egy bizonyos kódcsoport ami nem vár a "hívás" gomb megnyomására, hanem az utolsó karakter bevitelekor elindul. Az általunk tárgyalt kód is ilyen.
Továbbá: az Android böngészőkben van egy olyan funkció, hogy az oldalon feltüntetett telefonszámokra elég ráklikkelni, és már tárcsáz is. Viszont a kódot megfelelően elhelyezve az oldalon nem is kell ráklikkelni, mert tárcsáz magától.
Jelen esetben a telefonszám nem telefonszám, hanem egy ilyen önmagától futó USSD kód, ami történetesen mindent kitöröl a telefonodról.
Kb. ennyi a történet.

decoati 2012.09.26. 12:09:39

@Tickitucku: szóval nem kell manuálisan bevinni semmit, mert a kódok már benne vannak a telefon (tárcsázó) szoftverében

Park Ádám 2012.09.26. 12:26:13

Ez nem csak SAM hiba. Bármilyen 4.1-snél régebbi Androidon működik :(

Próbáljátok ki: www.nfllab.com/android/redirtel.php
Az IMEI kód fog megjelenni a tárcsázóban, de lehetne helyette factory reset is, vagy bármi. Kipróbáltam Sam Galaxy S-en, HTC-n, és Motorolán.

Park Ádám 2012.09.26. 12:28:12

(A küldött linket természetesen a telefon böngészőjével kell megnyitni, nem muszáj gyárival, én Operával teszteltem)

Park Ádám 2012.09.26. 12:36:50

Egyelőre szerintem úgy lehet védekezni ez ellen, hogy feltesztek egy másik tárcsázót, pl. ezt, mert nagyon kis helyet foglal:

play.google.com/store/apps/details?id=org.dnaq.dialer2&feature=search_result#?t=W251bGwsMSwxLDEsIm9yZy5kbmFxLmRpYWxlcjIiXQ..

Ettől független a gyárit használjátok tovább, csak ne tegyétek alapértelmezettre egyiket se! Így ha egy ilyen linkre kattintotok, mindig fel fog jönni a választó ablak, melyik tárcsázót akarjátok használni. Ilyenkor nyomtok egy back gombot, és elhúztok az oldalról jó messzire.

Park Ádám 2012.09.26. 12:44:52

Érdekelne, hogy szerintetek, hogy fogják ezt hibát tömegesen javítani? Ez kurva nagy botrány. Az tuti, hogy rom-ot updatelni csak az advanced user fog. Az átlagfelhasználó még csak a KIES-t se használja, nemhogy ODINt és társait. Vajon a PLAY store appnak vannak rendszerszintű jogai? Mert talán az lenne a legkézenfekvőbb ha maga a PLAY path-elné a bugot tömegesen. Tudom, hogy nem erre van, de ezt másképpen hogy?

Yoss 2012.09.26. 13:23:36

SGSIII, ICS 4.0.4, (stock firmware, többször Samsung által frissítve) rákérdezett a tárcsázóra, de amikor kiválasztottam, simán hozta az IMEI-t. Rákérdeztem frissítésre, nincs elérhető.
Szóval csak óvatosan.

Yarner · http://androlib.blog.hu 2012.09.26. 13:30:30

@Park Ádám: Alapvetően és elsősorban a böngészőknek/qr-olvasóknak kell megoldani a problémát, az meg nem gond, csak sürgősen ki kell nyomni a frissítéseket. A Market úgyis időnként szól, hogy sok frissítés van az átlag júzer szerintem a legtöbbet letölti szó nélkül.

Yarner · http://androlib.blog.hu 2012.09.26. 13:34:45

@Park Ádám: Annyi a "megnyugtató", hogy a kód más és más a különböző típusokban, így egy-egy támadásnak készülék(csoport)-specifikusnak kell a támadásnak is lenni, ugyanaz a weblap nem tud Samsungot és Motorolát is támadni. (Meg kérdés, mindegyik gyártónál van-e USSD kód a factory resetra, ha nincs, akkor nagy bajt nem lehet csinálni)

Jozsó_ 2012.09.26. 13:59:48

Samsung galaxy W. Operával (mobil) és Dolphinnal is beszopta.

Dontpanic 2012.09.26. 14:01:00

S3, ics 4.0.4, opera nem csinált semmit, stock browser megnyitotta a tárcsázót de nem ír ki semmit.

The Lost Soul (törölt) 2012.09.26. 14:04:36

kb egy hónapja ugyanez lehetett (független sony ericsson neo, voda előfizetés). újraindul, távol-keleti írásjelek, üdvözöl az első indításnál! mondom mivan, kiccsávó? 240 telefonszám, híváslista, tennivalók, beállítások, d1 matrica visszaigazolások, nyertes lottósms-ek, minden odalett! valódi factory default lett a készülékem, most már tudom is, hogy mitől.

Jozsó_ 2012.09.26. 14:11:11

Az a nagyon nem vicces, hogy korábban idegesített, hogy minden tárcsázás előtt megkérdezte, hogy akkor most a Viberrel, vagy a tárcsázóval tárcsázzon. Beállítottam a tárcsázót defaultnak. Most kiszedtem, inkább kérdezzen. Ennek hatására tárcsázás előtt valóban kérdez, de a böngészőből érkező számot kapásból megkajálja, kérdés nélkül. :(

AvgDvl 2012.09.26. 14:17:44

Galaxy S1, C-RoM BeaN (JB), beépített böngészővel: feljött a tárcsázó, beírta a kódot, de nem fut le. ( a Cyanogenmod tárcsázója szar - szerencsére )

csgeza 2012.09.26. 14:34:21

Stock SGS2 T-s ICSes simán benyeli a hibát Operával. :(

jobbos 2012.09.26. 14:53:11

Alcatel OT-995 a Dolphin böngészőből indítva a tesztoldalt simán bemegy a tárcsázóba, és feldobja az IMEI-t.

Jozsó_ 2012.09.26. 14:59:26

Telepítettem a dialer one-t, amég nem javítják a böngészőket. (mondjuk nekem a stock dialer is rendben volt). Így most kérdez, mielőtt tárcsázna.

ex-dr. vuk 2012.09.26. 15:06:48

Nekem S3 van, Android 4.0.4, a dialer feljott, de a kod nem indult el (ures maradt teljesen). Sem Chrome sem a beepitett bongeszovel nem jott a hiba.

tyberius 2012.09.26. 15:09:59

SGS1, AOSP ICS, Opera Mini párosítással megy az exploit.

Szyl 2012.09.26. 15:11:52

LG Optimus 2x-is gyári rom-mal szintén kiírja az imei-t

Szyl 2012.09.26. 15:14:13

Motorola Defy+ gyári szintén kiírja

RadyR 2012.09.26. 15:17:22

Motorola Atrix 2 gyári ICS 4.0.4 + stock browser: dialer feljön, imei nem (csak a tárcsázandó szám mezőben jelenik meg a *#06#)

Bambano 2012.09.26. 15:25:19

Jelentem a legelső galaxy tab veszélyeztetett.

Bambano 2012.09.26. 15:28:40

jelentem majdnem két éves sgs1 veszélyeztetett.

Harag atya 2012.09.26. 15:29:24

Friss, ropogos S3, GT-I9300, nem csinal semmit a dialer. Huhh... Ahh, az Android 4.0.4, semmi update nem volt hozza.

Translator +X+ · http://www.szabadzona.hu 2012.09.26. 16:02:00

@Park Ádám:

:: Próbáljátok ki: www.nfllab.com/android/redirtel.php

Annyira jó, hogy ZTE Blade-en is előjön...

kverti 2012.09.26. 16:20:16

A cím némileg hatásvadász..

MoxNox 2012.09.26. 16:37:58

Defy, CM10, azaz Jelly Bean, Opera Next Mini, és feljön az IMEI az nfllabos linken.

Xabinho87 2012.09.26. 17:07:38

Nem értem mi is van az SIII-mal. Én megnéztem a gyári böngészőn és chrome-on is de semmi. Előjön a tárcsázó, de nem ír ki semmit. Semmilyen frissítést nem töltöttem le a gyári 4.0.4-re.

Darkcomet 2012.09.26. 17:30:20

@Yarner: "Alapvetően és elsősorban a böngészőknek/
qr-olvasóknak kell megoldani a problémát."

Nem. Ez elsősorban android bug, ráadásul már 2 éve ismert, csak eddig nem kapott ekkora nyilvánosságot.

decoati 2012.09.26. 17:32:50

JB-re esélytelen teló tulajdonosok:
Nem vagyok programozó, nem tudom mi a pontos különbség az nfllab-os oldal és a posztban linkelt tesztoldal között technikai vagy metódusbeli szempontból (az nfllab-os forrását nem tudom megnézni), de a böngészők eltérően viselkednek a két oldalon.
A posztban lévő az eredeti exploitot követi, az nfllab-os pedig egyenértékű azzal, mintha a böngésző címsorába beírnánk: tel:*%2306%23
Az Opera az első esetben nálam megáll, a második esetben továbbítja a kódot a tárcsázónak.
Végső soron nincs különbség a két megoldás között (az ember klikkel egyet és helló az adatoknak), tehát sztem a böngésző oldali védelmet elfelejthetjük.
Első közelítésben tehát marad a Sebastian Mauer-féle dial proxy (ld. poszt), vagy @bianka69 által küldött linkben lévő app. Tehát: valami tárcsázó oldali védelem.

Rák Attantam 2012.09.26. 17:56:44

A post címét tényleg nem ártana "Durva Android sebezhetőség?" -re javítani, mielőtt még a HTC és egyéb tulajok fellélegezve hátradőlnének... Ez nem csak Samsung probléma.

Jozsó_ 2012.09.26. 18:04:59

SE Live with walkman ICS-szel rendben van, nem írja ki az IMEI-t.

pajav8 2012.09.26. 18:12:28

HTC Wildfire S-en(2.3.5) opera meg gyári alól is simán behozza a kódót a tárcsázóba:S

- Rendi - 2012.09.26. 18:49:12

Defy gyári 2.2, illetve Defy+ gyári 2.3 esetében benyalja a tesztoldalt :[

Gexxx_mz 2012.09.26. 18:56:01

Ace2, gyári 2.3.6, stock böngésző és Dolphin egyaránt sebezhető... gondolom nem meglepő módon...

Grafithuszar 2012.09.26. 19:43:55

HTC Desire Leedroid ROM-al szintén elbukott a teszten :(

Park Ádám 2012.09.26. 20:17:38

@Yarner: Ez nem böngésző hiba, ettől független javíthatják abban is. Ez olyan, mint amikor egy asztali OS, a protokollhoz valamilyen szoftvert rendel. Pl.: a mailto: levelező, news: rss olvasó. Pl a skype társítja a skype: prefixet protokollként, így egy ilyen linkre a skype fog előugrani.

hedgy 2012.10.03. 11:40:37

Nem tudom, más leírta-e, de nem csak az "újabb" telefonokon ez a factory reset kódja, hanem gyakorlatilag az összes Samsung okostelefonon. Mármint azokon, amelyek Androidot futtatnak. Az én régi Spica-m is kidobta az IMEI-t, mint a huzat...

blog.sancho.hu · http://blog.sancho.hu 2012.10.04. 09:43:36

Az Avast is alkalmas a védekezésre, ha esetleg valaki már használja, vagy belevágna: play.google.com/store/apps/details?id=com.avast.android.mobilesecurity

Google+
süti beállítások módosítása