Does OWASP apply to mobile apps?

OWASP MASTG: Guiden til mobilappsikkerhed

21/09/2023

Rating: 4.68 (8687 votes)

OWASP MASTG: Guiden til Mobilappsikkerhedstest

I en verden hvor mobile applikationer er blevet en integreret del af vores dagligdag, er sikkerheden af disse applikationer afgørende. OWASP Mobile Application Security Testing Guide (MASTG) står som en fyrtårn for udviklere, sikkerhedsforskere og virksomheder, der ønsker at sikre deres mobile økosystem. Denne omfattende vejledning giver en dybdegående forståelse af processerne, teknikkerne og værktøjerne, der er nødvendige for at udføre grundig sikkerhedstest og reverse engineering af mobile apps.

What is OWASP Mas?
It provides a set of test cases that enables testers to deliver consistent and complete results. The OWASP MAS project provides both the Mobile Application Security Verification Standard (MASVS) for mobile applications and the Mobile Application Security Testing Guide (MASTG).
Indholdsfortegnelse

Hvad er OWASP MASTG?

OWASP MASTG er det officielle GitHub-repository for OWASP Mobile Application Security Testing Guide. Det er en komplet manual dedikeret til sikkerhedstest af mobile applikationer og reverse engineering. Dens primære formål er at beskrive de tekniske processer til at verificere de sikkerhedskontroller, der er angivet i OWASP Mobile Application Verification Standard (MASVS). MASTG er ikke blot en samling af testcases; det er en levende ressource, der løbende opdateres for at imødekomme de stadigt skiftende trusselslandskaber inden for mobilapplikationssikkerhed.

OWASP MASVS: Standarden for Sikkerhed

Før vi dykker dybere ned i MASTG, er det vigtigt at forstå dens ledsager, OWASP Mobile Application Security Verification Standard (MASVS). MASVS fungerer som en standard for sikkerhedskrav til mobile applikationer. Den definerer et sæt sikkerhedskontroller, som udviklere og sikkerhedstestører bør sigte efter. MASVS er opdelt i flere kategorier, der dækker alt fra datalagring og kryptografi til autentificering og netværkskommunikation. Ved at følge MASVS kan organisationer sikre, at deres applikationer lever op til et højt niveau af sikkerhed.

MASTG og MASVS i Praksis

MASTG er i bund og grund en vejledning til, hvordan man tester for at verificere, at MASVS-kontrollerne er implementeret korrekt. Den beskriver en række testcases, der dækker forskellige aspekter af mobilapplikationssikkerhed. Disse testcases er designet til at være både omfattende og praktiske og giver testere mulighed for at identificere sårbarheder, der kan udnyttes af ondsindede aktører.

Typer af Sikkerhedstest

MASTG omfatter en bred vifte af testmetoder, herunder:

  • Statisk Analyse (SAST): Undersøgelse af applikationens kode uden at køre den. Dette involverer typisk gennemgang af kildekode for at identificere potentielle sikkerhedsfejl.
  • Dynamisk Analyse (DAST): Test af applikationen under kørsel. Dette fokuserer på at identificere sårbarheder, der opstår under applikationens drift, f.eks. i netværkskommunikation eller brugerinputhåndtering.
  • Reverse Engineering: Processen med at analysere en applikation for at forstå dens interne funktionalitet, ofte for at identificere skjulte sårbarheder eller omgå sikkerhedsmekanismer.

Testmetodologier: White-box, Black-box og Gray-box

MASTG anerkender vigtigheden af forskellige testperspektiver:

  • Black-box Test: Udføres uden forudgående kendskab til applikationens interne struktur eller kildekode. Testeren agerer som en ekstern angriber.
  • White-box Test: Udføres med fuld adgang til kildekode, dokumentation og arkitektur. Dette giver en dybere og mere effektiv analyse.
  • Gray-box Test: En kombination af de to, hvor testeren har en vis grad af viden om applikationen, f.eks. brugeroplysninger, men ikke fuld adgang til kildekoden. Dette er ofte den mest realistiske tilgang.

Vigtigheden af Kildekodeadgang

Selvom black-box test er værdifuld for at simulere et eksternt angreb, anbefaler MASTG kraftigt at anmode om kildekoden til white-box test. Adgang til kildekoden gør det muligt for testere at identificere sårbarheder hurtigere og mere præcist ved at verificere fund direkte i koden. Dette er især vigtigt, da Android-kode kan være obfuskeret, hvilket gør dekompilering og analyse tidskrævende.

Sårbarhedsanalyse og Undgåelse af Falske Positiver

Sårbarhedsanalyse er kernen i sikkerhedstest. Mens automatiserede værktøjer kan identificere et bredt spektrum af potentielle problemer, er de ikke altid følsomme over for applikationens specifikke kontekst. Dette kan føre til falske positiver – altså identificerede sårbarheder, der i virkeligheden ikke er udnyttelige i den pågældende applikation. MASTG understreger vigtigheden af manuel analyse og en dybdegående forståelse af udnyttelsesscenarier for at undgå blind tillid til scanningsresultater.

What is OWASP Mobile Application Security (MAS)?
The OWASP Mobile Application Security (MAS) flagship project provides industry standards for mobile application security. The OWASP MAS project provides the Mobile Application Security Verification Standard (MASVS) for mobile applications and a comprehensive Mobile Application Security Testing Guide (MASTG).

Et klassisk eksempel er CSRF (Cross-Site Request Forgery) eller XSS (Cross-Site Scripting). Mens disse kan være reelle trusler i webapplikationer, er de sjældent direkte udnyttelige i mobile apps på samme måde, da mobilapps typisk ikke interagerer med webbrowsere på samme måde.

Penetrationstest: En Struktureret Tilgang

En typisk penetrationstest, som beskrevet i MASTG, følger en struktureret proces:

  1. Forberedelse: Definition af omfang, identifikation af relevante sikkerhedskontroller, mål for test og følsomme data. Omfatter også juridisk beskyttelse af testeren.
  2. Efterretningsindsamling: Analyse af applikationens miljø og arkitektur for at opnå en generel kontekstuel forståelse.
  3. Kortlægning af Applikationen: Identifikation af applikationens indgangspunkter, funktioner, data og potentielle sårbarheder. Dette kan suppleres med automatiserede scanninger og manuel udforskning.
  4. Udnyttelse: Forsøg på at udnytte de identificerede sårbarheder for at bekræfte deres realitet og omfang.
  5. Rapportering: Detaljeret dokumentation af fund, herunder udnyttelsesprocessen, klassificering af sårbarheder, risikovurdering og anbefalinger til afhjælpning.

Sikkerhed og Softwareudviklingslivscyklus (SDLC)

MASTG integrerer sikkerhedstest i den bredere Softwareudviklingslivscyklus (SDLC). Mens traditionelle Waterfall-modeller placerede sikkerhedstest sent i processen, fremhæver moderne metoder som Agile og DevSecOps vigtigheden af at integrere sikkerhed fra starten.

I en Agile/DevSecOps-model automatiseres mange sikkerhedsopgaver og udføres løbende gennem CI/CD (Continuous Integration/Continuous Delivery) pipelines. Dette sikrer, at sikkerhedsproblemer identificeres og løses tidligt i udviklingsprocessen, hvilket reducerer omkostningerne og forbedrer den overordnede sikkerhedsposition.

Nøglefaser i en Sikker SDLC

  • Risikovurdering: Identifikation af applikationens risikoprofil baseret på faktorer som datahåndtering og tilgængelighed.
  • Sikkerhedskrav: Definition af specifikke sikkerhedskontroller, ofte baseret på MASVS.
  • Trusselsmodellering: Identifikation og prioritering af potentielle trusler mod applikationen.
  • Sikker Kodning: Implementering af sikkerhedspraksisser under udviklingen, herunder brug af SAST-værktøjer og kodeanmeldelser.
  • Test og Verifikation: Udførelse af SAST, DAST og penetrationstest for at validere sikkerhedskontrollerne.
  • Drift og Vedligeholdelse: Kontinuerlig overvågning og opdatering af sikkerhedstiltag.

Identifikation af Følsomme Data

En kritisk del af sikkerhedstest er at identificere og beskytte følsomme data. Dette inkluderer personligt identificerbare oplysninger (PII), brugeroplysninger, finansielle data og enhver information, hvis kompromittering kan medføre skade. MASTG guider testere i at identificere, hvor data opbevares (at rest), bruges (in use) og overføres (in transit), og hvordan disse data skal sikres i hver tilstand.

Udfordringer og Overvejelser

Testmiljøer kan være udfordrende at opsætte. Virksomhedspolitikker, netværksrestriktioner og specifikke sikkerhedskontroller i applikationen (f.eks. root detection, certificate pinning) kan hæmme testprocessen. MASTG foreslår løsninger som at anmode om både release- og debug-builds af applikationen for at opnå den mest effektive testdækning.

Konklusion

OWASP Mobile Application Security Testing Guide (MASTG) er et uundværligt redskab for alle, der arbejder med mobilapplikationssikkerhed. Ved at kombinere klare standarder (MASVS) med detaljerede testprocedurer giver MASTG den nødvendige vejledning til at identificere og afhjælpe sårbarheder. Ved at omfavne principperne i MASTG og integrere sikkerhed i hele SDLC kan organisationer bygge og vedligeholde robuste og sikre mobile applikationer, der beskytter både brugerdata og virksomhedens omdømme.

What is the OWASP mobile application security Weakness Enumeration?
It can be used by mobile software architects and developers seeking to develop secure mobile applications, as well as security testers to ensure completeness and consistency of test results. The OWASP Mobile Application Security Weakness Enumeration (MASWE) is a list of common security and privacy weaknesses in mobile applications.

Ofte Stillede Spørgsmål (FAQ)

Hvad er forskellen mellem MASTG og MASVS?
MVS (Mobile Application Security Verification Standard) definerer kravene til sikkerhed i mobile apps, mens MASTG (Mobile Application Security Testing Guide) beskriver, hvordan man tester for at verificere, at disse krav er opfyldt.

Er MASTG kun for sikkerhedseksperter?
Selvom MASTG er teknisk dybdegående, er den designet til at være en ressource for alle involverede i mobilapplikationsudvikling og -sikkerhed, herunder udviklere, QA-testere og sikkerhedsforskere.

Hvor ofte opdateres MASTG?
März 2025 er den seneste opdateringsdato angivet. OWASP-projekter opdateres løbende for at afspejle nye trusler og teknologier.

Hvordan kan jeg bidrage til MASTG?
Du kan bidrage via GitHub-repository'et, hvor du kan indsende issues, foreslå ændringer eller deltage i diskussioner. Projektet er en fælles indsats.

Hvilke typer sårbarheder dækker MASTG?
MASTG dækker et bredt spektrum af sårbarheder, herunder usikker datalagring, svag kryptografi, usikker netværkskommunikation, problemer med autentificering og autorisation, samt sårbarheder relateret til UI/UX og platformsspecifikke funktioner.

Hvis du vil læse andre artikler, der ligner OWASP MASTG: Guiden til mobilappsikkerhed, kan du besøge kategorien Teknologi.

Go up