iOS og Android

Penetrasjonstest av mobilapper for iOS og Android

En mobilapp kjører på en enhet du ikke kontrollerer. Vi tester den slik en angriper med full kontroll over telefonen ville gjort — og vi tester API-ene bak, der de virkelig alvorlige funnene som regel ligger.

Typisk 2–3 uker. Både klient og backend inngår i samme oppdrag.

Testområder

Det vi går gjennom i en mobilapp

Vi følger OWASP MASVS som struktur, og tester både det som skjer på enheten og det som skjer bak API-et.

Lokal lagring av data

Hva ligger igjen på enheten? Tokens, personopplysninger, mellomlagrede svar, loggfiler og skjermbilder i appbytteren. Vi undersøker filsystemet, databasene og nøkkelkjeden på en enhet vi kontrollerer fullt ut.

Kryptering og nøkkelhåndtering

Brukes plattformens nøkkellagring riktig, eller ligger nøkkelen hardkodet i appen? Vi ser på algoritmevalg, nøkkelutledning og om kryptering faktisk brukes der den burde — ikke bare der den er lett å legge inn.

Nettverkskommunikasjon

TLS-oppsett, sertifikatvalidering, sertifikatfesting og hvor enkelt det er å plassere seg mellom appen og serveren. Vi tester også hvordan appen oppfører seg når sertifikatvalideringen slår feil.

API-ene bak appen

Her ligger de alvorligste funnene. Vi tester autentisering, tilgangskontroll mellom brukere, ratebegrensning og forretningslogikk direkte mot API-et, uten å gå veien om appens eget grensesnitt.

Manipulering og motstandsdyktighet

Kan appen kjøres på en enhet med root eller jailbreak? Lar logikken seg endre ved kjøretid? Vi vurderer hvor mye beskyttelsesmekanismene faktisk er verdt, og hvilke kontroller som må ligge på serversiden uansett.

Plattformintegrasjoner

Dyplenker, delingsintervall, utklippstavle, varsler, biometri og bakgrunnsjobber. Mange norske apper integrerer også eID og betalingsflyter, og disse overgangene mellom apper er verdt egen oppmerksomhet.

Krav

Hva regelverket betyr for en mobilapp

En app som håndterer identitet eller betaling, treffer flere regelsett samtidig. Rapporten tar høyde for det.

Personopplysningsloven og dataminimering

Mobilapper samler ofte inn mer enn de trenger, og lagrer det lenger enn nødvendig. Vi dokumenterer hva som faktisk ligger på enheten og hva som sendes ut, slik at du kan kontrollere om praksis stemmer med personvernerklæringen og behandlingsprotokollen din.

PCI DSS for betaling i app

Håndterer appen kortdata eller betalingsflyter, gjelder de samme kravene til penetrasjonstesting som for web. Vi tester både klienten og betalings-API-et, og dokumenterer omfanget slik at det kan brukes i etterlevelsesarbeidet.

Finanstilsynet og DORA

For finansforetak stiller Finanstilsynet krav til styring av IKT-risiko, og DORA skjerper kravene til testing av digital motstandsdyktighet ytterligere. Kundevendte apper er blant de mest eksponerte komponentene, og rapporten er bygget for å kunne inngå i dokumentasjonen mot begge.

NSMs grunnprinsipper

Grunnprinsippene om sikker konfigurasjon, kontroll på dataflyt og beskyttelse av data gjelder like fullt på en mobil klient. Vi kobler funnene til prinsippene, slik at appen kan vurderes i samme modenhetsbilde som resten av virksomheten.

Gjennomføring

Slik gjennomføres en mobiltest

  1. 01

    Byggefiler og tilganger

    Vi trenger en installerbar byggefil for hver plattform, testbrukere for de aktuelle rollene og informasjon om hvilke miljøer appen peker mot.

  2. 02

    Statisk analyse

    Vi går gjennom pakken: hardkodede hemmeligheter, tredjepartsbiblioteker, konfigurasjon og hvor mye som kan leses ut uten å kjøre appen i det hele tatt.

  3. 03

    Dynamisk testing på enhet

    Appen kjøres på enheter vi kontrollerer, med full innsyn i trafikk, filsystem og kjøretid. Det er her det blir tydelig hva appen faktisk gjør, framfor hva den er ment å gjøre.

  4. 04

    Testing av API-laget

    Vi tester API-ene direkte, på tvers av brukere og roller. Dette steget avdekker som regel de funnene som får høyest alvorlighetsgrad i rapporten.

  5. 05

    Rapport og retest

    Funn med bevis og reproduksjonssteg, gjennomgang med utviklerne, og retest av utbedringene når ny versjon er klar. Retesten er inkludert.

Erfaring

Klienten er sjelden det største problemet

Vi finner nesten alltid noe på selve enheten: en token som ligger ukryptert, en logg som inneholder mer enn den burde, eller en sertifikatfesting som lar seg omgå. Det er verdt å rette opp, men det er sjelden det som havner øverst i rapporten.

De alvorlige funnene ligger nesten alltid i API-laget. En app er tross alt bare én av mange mulige klienter mot det samme grensesnittet, og kontroller som er implementert i appen, har null verdi mot noen som snakker direkte med serveren. Derfor tester vi alltid API-et som om appen ikke fantes.

Det praktiske rådet vi gir oftest: anta at enheten er kompromittert. Alt appen kan gjøre, kan en angriper også gjøre. Sikkerheten må derfor ligge i hva serveren tillater, ikke i hva grensesnittet gjør tilgjengelig.

Ofte stilte spørsmål

Om testing av mobilapper

Relaterte tjenester

Test appen før noen andre tar den fra hverandre

Fortell oss hvilke plattformer appen finnes på og hva den gjør, så får du et omfang og et fastpristilbud.

Be om tilbud