Beheer

Security

Apps maken ­bedrijfsspionage gevaarlijk simpel

2 november 2012

Het begon allemaal met een stage-onderzoek van de Groningse informaticastudent Daniël Kok. De bedoeling was na te gaan, hoe je zou kunnen testen wat apps doen. De vanzelfsprekende aanpak is uiteraard het bekijken van de broncode waarmee de programmeur aan zijn ontwikkelplatform duidelijk maakt wat de app moet doen. Het probleem is echter dat die broncode meestal niet openbaar is; de bouwer beschouwt het als zijn intellectueel eigendom. Terecht, want wat anders dan rottigheid zou een ander ermee uit kunnen halen? Maar Kok is niet voor één gat te vangen. Als een broncode normaliter wordt vertaald in een app (de objectcode), dan moet het omgekeerde toch ook kunnen? “Ja, en daarvoor bestaan hulpmiddelen, die bekend staan als decompilatie-tools.”

Kok haalde zo enkele tientallen populaire apps ‘door de decompilatie-molen’. Het belangrijkste wat de verkregen broncodes hem leerden was dat veel apps meer doen dan de productbeschrijvingen in de app­winkels doen vermoeden. Bijna alle apps versturen gegevens naar servers op internet. Meestal gaat het om unieke codes die het specifieke mobile device typeren, soms om andere informatie zoals de GPS-positie (bijvoorbeeld bij weer-apps of augmented reality-apps) of een lijstje van de gelezen nieuwsberichten (NU.nl). Ontvangers zijn doorgaans de servers van de dienstverlener achter de app, maar soms ook servers van adverteerders of van nog onduidelijke ‘zakelijke vrienden’ van de uitgever van de app.

“Niet echt netjes dat ze dat doen zonder dat aan de gebruiker te vertellen. Maar op zich nog tamelijk onschuldig. Het gaat vrijwel zeker om statistisch en dus niet-gepersonifieerd gebruik van deze gegevens”, zegt Koks stagebegeleider Rix Groenboom van testtoolingleverancier Parasoft. Maar er bleef iets knagen: “Als fatsoenlijke apps van fatsoenlijke dienstverleners dit ongemerkt kunnen doen, wat kunnen onfatsoenlijke apps van criminele appbouwers dan? Kwaadwillenden hoeven een officiële app maar te decompileren en ze hebben een Java-code die ze naar wens kunnen aanpassen. Zo’n aangepaste app werkt daarna als een Trojaans paard. Zo’n Trojan app kunnen ze verspreiden via honderden Android-dowloadsites of stores die zich, zoals Cydia, richten op mensen die hun iPhone hebben gehackt.”

Met die zorgen in het achterhoofd sparde Groenboom een middagje met Jan Tijmen Udding, de voormalig CIO van het Antwerpse Terminal-bedrijf PSA en ex-hoogleraar aan de TU Eindhoven. Hun conclusies zijn – zeker voor bedrijven die het gebruik van eigen mobiele hulpmiddelen op het werk toestaan – alarmerend te noemen:

  • Gemanipuleerde apps zijn het ideale gereedschap voor bedrijfsspionage en fraude.
  • Ze zijn functioneel veelzijdig en tamelijk eenvoudig in elkaar te draaien.
  • Ze zijn gemakkelijk te verspreiden, maar moeilijk te onderscheppen.

Staalkaart aan mogelijkheden

Groenboom en Udding hebben weinig fantasie nodig om een staalkaart van cybercriminele mogelijkheden met gemanipuleerde apps op te stellen. Een korte brainstorm leverde drie categorieën van denkbaar appbedrog op. Een gemanipuleerde app kan:

 De reguliere server van de dienstverlener achter de app misleiden met valse of toegevoegde opdrachten van de smartphone-gebruiker
Een zonneklare fraudemogelijkheid van dit type is het invoegen van frauduleuze overboekingen in de slipstream van reguliere mobiele bankopdrachten. Groenboom: “Niemand ziet het verschil tussen de echte banking-app en de gemanipuleerde variant. Ook de server van de bank niet. En die hele riedel van de authenticatie bij eerste aanmelding kan de fake app ook, want die doet precies hetzelfde als de echte, maar voegt alleen heimelijk iets extra’s toe.”

 App-eigen informatie doorgeven aan derden
Te denken valt aan een transactie-app of een ‘password-kluis’ die inloggegevens van de gebruiker aan de cybercriminelen doorspeelt. Met een gemanipuleerde app met informatie over files, flitsers of gratis parkeergelegenheid zouden kwaadwillenden locatie- en reisinformatie van de gebruiker kunnen bemachtigen. Interessant om door te geven aan bijvoorbeeld ondernemers die nieuwsgierig zijn naar de gangen van verkoopmedewerkers van hun concurrent. Ook aantekeningen of andere ongestructureerde data die de gebruiker in een verklikkende app vastlegt kan voor derden interessant zijn. Hoewel de meeste bij elkaar gegraaide ongestructureerde informatie voor de boeven irrelevant zal zijn, kan een boef door middel van datamining op zoek gaan naar de minieme fractie chantage-, media-, koers- of concurrentiegevoelige informatie die er ongetwijfeld tussen zit.

 Informatie uit andere apps doorgeven aan derden
Hierbij zou het kunnen gaan om het uploaden van contactgegevens uit de adresboek-app, maar een creatieve boef weet wellicht nog waardevoller informatie te vinden. Daarvoor is dan wel enige ‘social engineering’ vereist; de zogeheten sandbox-architectuur – die zowel iOS als Android hanteert – laat niet toe dat de ene app grabbelt in de ‘zandbak’ van een andere app. Maar het kan wel, als de app bij het installeren maar netjes toestemming van de gebruiker vraagt en krijgt. En gebruikers zijn slordig, zegt Udding: “Je zou eens een proefje moeten nemen. Zo’n gebruiker die een spelletje heeft gedownload wil scrabbelen en dan is het een kwestie van ‘klik-klik-klaar’. Zo’n zorgeloosheid komt mij in ieder geval stukken aannemelijker voor dan het ingaan op een phishing-mail, wat toch ook nog steeds gebeurt, en wel in een mate die voor cybercriminelen kennelijk voldoende is om door te gaan met hun phishing-acties.”

Doelwit verleiden

Natuurlijk vallen of staan deze scenario’s met de mogelijk om de gemanipuleerde apps ook daadwerkelijk op de smartphones van gebruikers te krijgen. “Serieuze appwinkels zoals die van Apple of Google zullen zich er misschien lastiger voor lenen, maar naast de App Store en Google Play, voorheen Android Market, zijn op internet tientallen minder precieze stores te vinden voor gebruikers van Android-toestellen of gejailbreakte iPhones en iPads. Daarnaast krijgen de lokale stores van bedrijven (voor BYOD) met dit fenomeen te maken”, schat Udding in.

De uitdaging voor de cybercrimineel is het aanbieden van een app die zodanig verleidelijk is dat gebruikers hem verkiezen boven de originele en betrouwbare app uit de store. Daartoe zou de cybercriminal zijn gemanipuleerde app onder meer kunnen vermommen als:

  • Een gratis bootleg van een hoog geprijsde app
  • Een functioneel verbeterd alternatief
    Dergelijke apps komen voor. Zo is naast de officiële NS-app de app Trein behoorlijk populair. Voor cloud-diensten als Evernote en Dropbox bijvoorbeeld, circuleren tal van alternatieve cliënt-apps, die uiteenlopende handigheidjes toevoegen, maar daarvoor wel gebruikersnaam en wachtwoord nodig hebben.
  • Een third party app voor online service die zelf nog geen officiële eigen app heeft
    Toen de banken nog geen apps aanboden, circuleerden er voor een aantal banken onafhankelijk ontwikkelde telebanking-apps. Iets vergelijkbaars was het geval met apps voor het checken van het saldo op de OV-chipkaart of van het beltegoed.
  • Een volkomen nieuwe app
    Bijvoorbeeld een spelletje of een ­wachtwoordenkluisje met dubieuze bijbedoelingen.

Udding is niet bevreesd dat hij met bovenstaande inventarisatie mensen op slechte gedachten zal brengen. “Maak je geen illusies. Deze scenario’s zijn ook al door anderen bedacht. Ga er maar van uit dat dit soort misbruik spoedig wijd verbreid zal zijn. Zwijgen helpt vooral de criminelen. Onze verantwoordelijkheid is veeleer het bedenken van tegenmaatregelen, maar dat wordt nog een hele uitdaging.”

Daniël Kokpresenteert zijn onderzoeksbevindingen op 27 november op de NL Testdag in Utrecht.

Maatregelen tegen misbruik

Integriteit
Zorg voor een certificering van apps en gebruik alleen gecertificeerde apps.
Ontwikkel richtlijnen, door de branche of afgedwongen door de overheid, die apps aan bepaalde eisen laat voldoen, ook al helpt dat niet tegen downloads van sites die deze regels in de wind slaan.

Distributie
Maak onderscheid tussen company approved apps en andere apps. Die laatste komen het bedrijfsnetwerk niet op. Een manier om dat te implementeren zou kunnen zijn dat company approved apps iedere keer bij aanloggen op het bedrijfsnetwerk opnieuw worden gedownload van de bedrijfsserver, met een ’identificatie van de dag’. Alleen zo weet je dat de app ‘jouw’ app is, tenzij gebruikers moedwillig fraude plegen via een geroot operating systeem. Maar daar is sowieso niks tegen te doen.

Controle
Monitor netwerkverkeer zorgvuldig en ontwikkel alerts voor bepaalde patronen. Intrusion detection en intrusion prevention zijn nu buzzwords, maar het omgekeerde – extrusion – gaat veel belangrijker worden.

Bewustwording
Confronteer werknemers met de gevaren van apps, zoals dat nu ook gebeurt met browsers en het internet.

“Sommige zaken, zoals certificering zijn waarschijnlijk des overheids. Distributie en monitoring des CIO’s. Bewustmaking van de gevaren zijn van beide, hoewel uiteindelijk de gebruiker de cruciale schakel is”, stelt Udding.

Samen met Groenboom werkt hij aan een service rond evaluatie en certificering van apps. Wie mee wil praten of denken kan hen benaderen via de redactie van AutomatiseringGids.

 
Lees het hele artikel
Je kunt dit artikel lezen nadat je bent ingelogd. Ben je nieuw bij AG Connect, registreer je dan gratis!

Registreren

  • Direct toegang tot AGConnect.nl
  • Dagelijks een AGConnect nieuwsbrief
  • 30 dagen onbeperkte toegang tot AGConnect.nl

Ben je abonnee, maar heb je nog geen account? Neem contact met ons op!