Onderzoeker komt met app om hacks op telecomnetwerk te ontdekken

Beveiligingsonderzoeker Karsten Nohl heeft met collega-onderzoekers een Android-app ontwikkeld waarmee gebruikers kunnen zien of er wordt geknoeid met hun mobiele verbinding. Daartoe wordt de debug-informatie van Qualcomm-chipsets verwerkt.

De app SnoopSnitch, die inmiddels in de Play Store staat, heeft ondersteuning voor een aantal Galaxy-telefoons van Samsung, evenals de Sony Z1 en LG G2. Hacker Karsten Nohl presenteerde de tool op de CCC-hackersconferentie in Hamburg. "Je kunt natuurlijk wachten tot je telecomprovider problemen met het netwerk oplost, maar ik zie liever dat je zelf maatregelen treft", aldus Nohl.

De app werkt op Android 4.1 en nieuwer. "We hebben niet getest of de app op Android 5 werkt, maar ik zie niet in waarom het niet zou werken", aldus Nohl. Gebruikers moeten wel roottoegang hebben om de app te kunnen draaien; Cyanogenmod wordt niet ondersteund.

De app verwerkt de debug-informatie van een aantal ondersteunde Qualcomm-chipsets om beveiligingsproblemen met het netwerk te detecteren. Daarmee zouden bijvoorbeeld zogeheten imsi-catchers, nep-zendmasten, moeten worden gedetecteerd. "De telefoon weet het vaak als er iets mis met de verbinding, maar nu is die informatie nog ver weggestopt in de baseband", aldus Nohl.

SnoopsnitchSnoopsnitchSnoopsnitch

Als een telefoon wordt bestookt met lege pages over ss7, wat er op kan duiden dat iemand de locatie van de gebruiker wil achterhalen, zou de app dat eveneens moeten detecteren. Ook stille sms'jes, die telecomproviders gebruiken om een telefoon te configureren maar ook kunnen worden gebruikt door de politie om iemand te tracken, kunnen worden gedetecteerd. De tool wordt onder de opensource-gpl-licentie vrijgegeven. Gebruikers kunnen hun bevindingen weer delen met de onderzoekers, maar dat is niet verplicht.

Mobiele telefonie leunt voor een groot deel op protocollen met bekende beveiligingsproblemen, bijvoorbeeld het gsm-protocol, waarvan de encryptie is achterhaald. Ook het ss7-protocol, dat providers onder meer gebruiken voor communicatie met andere providers, bevat beveiligingsproblemen, waardoor een aanvaller telefoongesprekken kan onderscheppen of iemands locatie kan achterhalen, mits een telecomprovider daar geen maatregelen tegen neemt.

Volgens onderzoeker Nohl moeten providers actie ondernemen. "Er wordt vaak gezegd: ss7 is nu eenmaal oud en niet met beveiliging in het achterhoofd ontworpen", aldus Nohl. "Maar het internet is ook niet met beveiliging als uitgangspunt ontworpen, en dat hebben we ook weten op te lossen."

Door Joost Schellevis

Redacteur

27-12-2014 • 19:24

49

Lees meer

Reacties (49)

49
49
25
3
0
12
Wijzig sortering
Hopelijk krijgt de app ook ondersteuning voor andere chipsets. En Cyanogenmod want de jongste stock ROM van mijn Galaxy Nexus is hopeloos verouderd.

Ook vraag ik me af of het mogelijk zou zijn om die stille sms'jes te blokkeren. Ik heb zo'n gevoel dat we nog wel wat interessante software kunnen verwachten.

[Reactie gewijzigd door Anoniem: 55563 op 24 juli 2024 20:56]

Quote uit de Play store entry van SnoopSnitch:
Unfortunately, custom ROMs are unsupported at the moment as they lack necessary proprietary drivers.
Ik kan me ook wel voorstellen waarom ondersteuning van custom ROMs niet mogelijk zal zijn. Om de debug informatie uit de Qualcomm chipsets te krijgen, die nodig is voor het zoeken naar het misbruik van de veiligheidslekken (wat SnoopSnitch dus doet), zijn er proprietary drivers nodig die telefoonfabrikanten in de Linux kernel bakken van hun officiele Android distributies. Broncode daarvoor is niet aanwezig, tenzij je Qualcomm of Samsung heet, of zo. Die drivercode moet interfacen met de Linux kernel van jouw Android distributie. In het geval van die custom ROM, het liefst met een recente Linux kernel. Vooral bij oudere telefoons zal er geen originele ROM zijn met een recente kernel. Nog even afgezien of je de assembly code van de driver uit de originele ROM kan plukken (als het in de kernel gebakken zit en niet beschikbaar is als loadable .ko wordt het helemaal een heidenskarwij); het interfacen van een oude binary kernel driver met een nieuwere Linux kernel is bijna onbegonnen werk.
Waarom Linux geen stabiele kernel driver interface heeft? Hier wordt het een en ander benoemd over dat onderwerp:
https://www.kernel.org/do...n/stable_api_nonsense.txt

[Reactie gewijzigd door jiriw op 24 juli 2024 20:56]

Anoniem: 55563 @jiriw28 december 2014 08:59
Refereer je aan de zogenaamde 'blobs' waar developers het vaak over hebben? Die worden toch vaak gewoon in custom roms gebruikt? Zeker daar waar geen open source versie bestaat. Ik begrijp natuurlijk dat je niet alles in linux-land kunt ondersteunen; daarvoor is het landschap veel te divers. Echter zoveel android 'distros' zijn er nu ook weer niet en CM is wellicht de meest populaire. Ik heb het artikel terloops doorgenomen maar ik snap het allemaal maar half. Ik ben geen programmeur en heb slechts een oppervlakkig begrip van OS'en, kernels en drivers.

Ik hoop in ieder geval dat deze en soortgelijke software voor zoveel mogelijk chipsets en drivers beschikbaar komt. Er zijn enorm veel enthousiastelingen die in hun privé tijd custom roms schrijven voor telefoons die eigenlijk allang zijn afgeschreven. Gewoon omdat het kan. Ik hoop dat dit project ook door de community wordt opgepikt. Het is bijzonder interessant en als dergelijke software gemeengoed wordt dan kan het nog wel eens bepaalde zaken aan het licht brengen.
Als het om 'Blobs' zou gaan was het nog wel te doen... Blobs zijn stukjes firmware die bij het starten van een apparaat in de hardware geladen moeten worden. Bijvoorbeeld bij wireless netwerkkaarten maar ook bij GSM hardware. Door die ingeladen firmware worden allerlei instellingen actief. Bekend is dat daardoor bijvoorbeeld geselecteerd wordt op welke banden de hardware mag zenden (in Amerika mag je bijv. andere wifi/gsm kanalen gebruiken dan in Europa. De blob is anders, de hardware dezelfde.) Er is een reden dat die blobs 'gesloten' zijn. Anders kan iedereen met de radio's kloten en op banden komen waar andere belangrijke diensten zitten die je als GSM/WiFi gebruiker niet mag storen. Ik dacht (weet niet zeker) voor GSM modems is dat soort firmware onderdeel van de Baseband.

Echter, hier gaat het niet om blobs maar om drivers. Net als dat je een driver nodig hebt om bijvoorbeeld je SD kaartje uit te kunnen lezen (een driver voor de SD interface hardware, en een voor het bestandssysteem op de SD kaart om precies te zijn) heb je ook een driver nodig om die Qualcomm chipset in debug-modus te zetten en speciale geheugenplekken uit te lezen (vermoedelijk) waar dan die debuginformatie wordt gedumpt. Hoe dat allemaal moet staat in die driver. Maar er is geen broncode dus als dat in een custom rom gebouwd moet worden moet of die debug-modus reverse-engeneerd worden en dan daarvoor een open driver geschreven (veel werk en mogelijk voor ieder model telefoon weer anders), of de drivercode moet uit een bestaande stock kernel gehaald worden en op een nieuwe kernel worden geschoenlepeld (gekkenwerk), of er moet een recente kernel zijn met die code erin (als die er is, fijn), of Qualcomm moet de broncode vrijgeven (good luck with that)...

Hopelijk snap je nu een beetje waar het probleem zit. Ik weet er natuurlijk ook niet het fijne van maar heb wel eens met Linux kernel driver broncode gerommeld, ik ben (onder andere) Android app programmeur en vanwege mijn interesse in radio (en ook in digitale modi... ik ben gelicenseerd radioamateur) hoor/lees je nog wel eens iets... 1+1+1=3 zeg maar... maar voor hetzelfde geld zie ik hier dingen over het hoofd... er zijn vast mensen die er meer verstand van hebben.

[Reactie gewijzigd door jiriw op 24 juli 2024 20:56]

Anoniem: 55563 @jiriw29 december 2014 06:19
Thanx voor de info. Moeilijk dus, maar niet onmogelijk. Nu weet ik dat ze zo voor de Samsung Galaxy Nexus een nieuwe video-driver hebben weten samen te stellen om uiteindelijk Android Lollipop mogelijk te maken. Dat is een enorme klus geweest om dat uit weet ik hoeveel bronnen samen te stellen. Volgens mij is er geen reverse engineering aan te pas gekomen hoewel ik er het fijne niet van weet. Desondanks hebben ze het klaargespeeld. Als Galaxy Nexus eigenaar ben ik natuurlijk erg blij.

Als er maar genoeg draagvlak ontstaat voor een project dan pakt de community het wel op en blijkt er telkens wel een select groepje te zijn dat het voor elkaar krijgt, al dan niet met dirty hacks. Ik blijf verbaasd wat mensen voor elkaar kunnen krijgen.
Ik heb geen geroote Samsung, dus ik wil de 'm vast even saven ergens. is link verwijderd met de apk betrouwbaar? Ik weet niet eens of een virusscanner er iets mee kan, en op de playstore staat verder geen hash of zo..

Edit: Gezien de wiki-link van nopcode een totaal andere apk heeft en totaal andere grootte, neem ik aan dat mijn link bogus is en heb ik deze verwijderd.

[Reactie gewijzigd door Ramoncito op 24 juli 2024 20:56]

Dit is de officiële link van het (open source) project (er staat ook een precompiled apk).
https://opensource.srlabs.de/projects/snoopsnitch
Uitstekend, bedankt :-)
op nexus 5 android 5.0.1 komt er te staan "Dit item is niet compatibel met uw apparaat."
In de link van nopcode staat dat de nexus 5 niet ondersteund wordt, spijtig aangezien ik hem het proberen wel waard vond..

Kan het zijn dat de ontwikkeling voor de nexus 5 er in de toekomst alsnog kan komen?
Alles is mogelijk. Maar het lijkt me niet echt waarschijnlijk.

De wetenschapper heeft zijn proef afgerond en zijn bewijs klaar. Verdere ontwikkeling voegt niets toe aan wat hij wilde bewijzen. Hij heeft e.e.a. vrijgegeven, dus verdere ontwikkeling zal niet door hemzelf gebeuren.

Aangezien dit alleen voor tweakers interessant is verwacht ik niet dat een commerciële partij dit oppakt en verder ontwikkelt. Tenzij je zelf met de broncode aan de slag wilt/kunt gaan zal je moeten hopen dat de gemeenschap dit oppakt en ook nog allerlei telefoonmodellen gaat ondersteunen. Niet echt waarschijnlijk.
In de nexus zit dan ook geen Qualcomm maar een motorola chip gokkend, de meeste china toestellen zullen wel qualcomm gebruiken zoals een paar nieuwsberichten eerder gesteld werd.

[Reactie gewijzigd door analog_ op 24 juli 2024 20:56]

Ze hebben de app nog niet getest voor Android 5
Bull.

Melding: "/dev/diag niet beschikbaar"

Dat heeft evident niets met testen van doen, en de auteur heeft gesteld dat
het op Android 5 ook zou moeten werken.

[Reactie gewijzigd door coretx op 24 juli 2024 20:56]

Hmm, heb je wellicht een bron ? Als ik het artikel mag geloven:
De app werkt op Android 4.1 en nieuwer. "We hebben niet getest of de app op Android 5 werkt, maar ik zie niet in waarom het niet zou werken", aldus Nohl.
maar ik zie niet in waarom het niet zou werken", aldus Nohl.
Idem voor Nexus 4 (5.0.1)
Voor zover ik kan zien werkt deze app gewoon op mijn OnePlus One die Cyanogenmod draait.
Alleen weet je niet of de data die eruit kokt betrouwbaar is
Klopt, tijdens het draaien loopt het niet allemaal even soepel.
Op een Sony Ericsson Xperia Mini Pro (Qualcomm Snapdragon S2 MSM8255) met de laatste nightly van CyanogenMod 10 werkt hij niet. Als ik hem opstart reboot de telefoon.
Vreemd, bij mij werkt ie juist niet...
Werkt niet op mijn OPO
Hier wel op unlockte OPO, laatste CM nightly build (4.4.4).
Lijkt mij een super goede app als ik het zo lees.
jammer genoeg heb ik geen Qualcomm chip maar een Mediatech dus ik heb er niks aan. het was gewoon afwachten wanneer zoiets gemaakt zou worden. maar mijn vraag is als je er achter komt met die app dat er geknoeid word met je telefoon verbinding bijv dat je word getraced wat kan je daar dan aan doen? want het is leuk om te weten maar je hebt er volgensmij ook niet super veel aan.
Het is in ieder geval een begin van een bewustwordingsproces.
Je kan je telefoon afzetten. ;-)
Anoniem: 428562 27 december 2014 20:14
Voor oudere toestellen als de Samsung G600 en sommige Nokia's is al enige jaren software in omloop die dit ook kan. Op Ebay worden ze verkocht als anti interception stealthphone
Samsung SM-G850F...no
Samsung GT-S7390...yes
Samsung SM-N7505...no
Samsung GT-N7100...no

hmm, google play verteld me dat van 4 telefoons die ik heb / gehad er slechts 1 ondersteund wordt door deze app.
Is ook nog de meest crappy van alle 4, een galaxy trend lite.
Ligt in de la, wordt niet gebruikt, is echt een rommelding,
Kan hem wel installeren op mijn Note3 maar nog niet de moeite genomen deze te rooten.
Zonde dat OPO (vrijwel)niet ondersteund wordt gezien de populariteit hiervan.
Ik ben vooral benieuwd of er geen situaties zijn waar je een 'false positive' krijgt. Bijvoorbeeld bij het wisselen tussen een femto en een macro mast. Als daar een instelling niet goed is merkt dat niemand behalve, mogelijk, zo'n app. Leuk, ga ik testen.
Ik heb de HTC one (m7) met custom rom Android revolution. hij lijkt te werken. Alleen als ik netwerk test wil uitvoeren crasht de app. Iemand anders dit probleem ook?
Ik ook HTC One m7, HD Revolution, service start op, maar inderdaad ook geen test mogelijk. :Y)

Op dit item kan niet meer gereageerd worden.