Hva er en penetrasjonstest?
En penetrasjonstest er et kontrollert angrep der sikkerhetseksperter prøver å ta seg inn i et system før reelle angripere gjør det. I motsetning til en automatisk skanning utnytter de faktisk hullene, slik en angriper ville gjøre. Resultatet er en rapport med beviste sårbarheter rangert etter risiko, med forslag til tiltak: et innbrudd på bestilling for å finne svakhetene først.
Penetrasjonstest, ofte kalt pentest, høres dramatisk ut, og på en måte er det nettopp det: et innbrudd man bestiller selv. Men bak det spennende ordet finnes et av de mest håndfaste sikkerhetstiltakene en virksomhet kan ta i bruk. Her går vi gjennom hva en penetrasjonstest er, hvordan den skiller seg fra enklere kontroller, og når den bør gjøres.
Hva en penetrasjonstest er
En penetrasjonstest er et kontrollert angrep mot et system, utført av sikkerhetseksperter som bevisst prøver å ta seg inn, akkurat slik en reell angriper ville gjøre. Forskjellen er at de gjør det på oppdrag, innenfor avtalte rammer, for å finne svakhetene før noen med onde hensikter gjør det.
Bildet er et innbrudd på bestilling. I stedet for å vente på at en tyv skal finne det ulåste vinduet, engasjerer du noen som får i oppdrag å virkelig prøve å bryte seg inn og deretter fortelle nøyaktig hvor og hvordan innbruddet lyktes. Målet er ikke å gjøre skade, men å avdekke svakhetene mens de fortsatt kan rettes i ro og mak.
Testerne tenker og jobber som angripere: De leter etter hull, prøver seg frem og forsøker å koble sammen små svakheter til en vei helt inn. Det er den menneskelige oppfinnsomheten som gjør testen verdifull.
Forskjellen på pentest og automatisk sårbarhetsskanning
Dette er to ting som ofte blandes sammen. En sårbarhetsskanning er et automatisk verktøy som søker gjennom systemet etter kjente svakheter og lister opp det som ser mistenkelig ut. Det er raskt, billig og bredt, men det går ikke lenger enn å peke på hva som kan være feil. En penetrasjonstest går et steg videre: Mennesker prøver faktisk å utnytte hullene og bevise hva en angriper virkelig ville kunne få til. Skanningen gir en liste med mistanker, testen gir bevis og sammenheng. De to utfyller hverandre i stedet for å erstatte hverandre.
Hva rapporten gir deg
Verdien av en penetrasjonstest ligger i stor grad i det du får ut til slutt: en rapport som gjør sikkerhetssituasjonen forståelig og mulig å gjøre noe med. Den nøyer seg ikke med å liste opp mistenkte svakheter, men leverer beviste hull satt i sammenheng.
- Beviste sårbarheter. Hver svakhet beskrives med hvordan den ble utnyttet, ikke bare med at den kanskje finnes.
- Konsekvens. Hva det ville bety om en angriper tok seg inn akkurat der, altså hvilke opplysninger eller funksjoner som står på spill.
- Risikorangering. Hullene sorteres etter alvorlighetsgrad slik at det farligste havner øverst og dere vet hvor dere skal begynne.
- Forslag til tiltak. Konkrete råd om hvordan hver svakhet kan tettes.
Resultatet blir i praksis en prioritert gjøremålsliste for sikkerheten, der dere kan ta det mest alvorlige først i stedet for å gjette.
Et konkret scenario
La oss si at et selskap skal lansere en ny tjeneste der kundene logger inn og oppgir personopplysninger og kortopplysninger. Før lanseringen bestiller selskapet en penetrasjonstest.
Testerne finner ut at en tilsynelatende harmløs svakhet i innloggingen, kombinert med en feilkonfigurert tilgang, kan kobles sammen til en vei inn til andre brukeres opplysninger. En automatisk skanning ville kanskje ha markert de to forholdene hver for seg som lavt prioriterte, men det var kombinasjonen, som bare en tenkende angriper finner, som var farlig. Selskapet får dette svart på hvitt, med høy prioritet og forslag til tiltak, og rekker å tette hullet før lanseringen. Alternativet hadde vært at noen med onde hensikter hadde gjort den samme oppdagelsen etterpå, med reelle kundeopplysninger på spill.
Når den bør gjøres
Tidspunktet betyr noe. En penetrasjonstest er særlig viktig:
- Før lansering av tjenester som håndterer sensitive opplysninger, betalinger eller andre verdier det er verdt å beskytte. Det er bedre å finne hullene før tjenesten møter virkeligheten.
- Jevnlig etterpå. Et system står ikke stille: Ny funksjonalitet kommer til, avhengigheter oppdateres, og nye trusler oppstår. En test speiler situasjonen på et gitt tidspunkt og er derfor ferskvare, ikke et engangsstempel. Mange tar en ny test før større nye versjoner og med jevne mellomrom.
Slik forholder du deg til det
Se på penetrasjonstesten som en tilbakevendende helsesjekk av sikkerheten snarere enn en attest på at alt er trygt for godt. Den avdekker svakheter mens de kan rettes, men erstatter ikke det løpende sikkerhetsarbeidet med oppdateringer, tilganger og bevisste medarbeidere.
Planlegger dere å lansere noe som håndterer sensitive opplysninger, er det verdt å bygge inn sikkerheten og testingen av den fra begynnelsen. Vil dere ha hjelp til å gjøre det riktig, tar vi i Weapp gjerne med sikkerhetsarbeidet i systemarbeidet allerede fra start.
Ofte stilte spørsmål
Hva er forskjellen på en penetrasjonstest og en sårbarhetsskanning?
En sårbarhetsskanning er et automatisk verktøy som leter etter kjente svakheter og lister opp mistenkte hull. En penetrasjonstest utføres av mennesker som faktisk prøver å utnytte hullene, koble dem sammen og virkelig ta seg inn. Skanningen sier hva som kan være feil, mens testen beviser hva en angriper faktisk kan gjøre. De utfyller hverandre.
Hva inneholder en rapport fra en penetrasjonstest?
Beviste sårbarheter, ikke bare mistenkte. Hvert hull beskrives med hvordan det ble utnyttet og hva det ville bety om en angriper tok seg inn, og hullene rangeres etter risiko slik at det mest alvorlige havner øverst. I tillegg kommer konkrete forslag til tiltak. Rapporten blir dermed en prioritert gjøremålsliste for å tette svakhetene, ikke bare en liste med advarsler.
Når bør man gjøre en penetrasjonstest?
Fremfor alt før lansering av tjenester som håndterer sensitive opplysninger eller betalinger, og deretter jevnlig. Systemer endrer seg, ny funksjonalitet kommer til, og nye trusler dukker opp, så en test er ferskvare snarere enn et engangsstempel. Mange velger å teste før større nye versjoner og deretter med jevne mellomrom for å holde beskyttelsen oppdatert.
Er en penetrasjonstest farlig for systemet?
Den gjøres kontrollert og etter avtale, så risikoen holdes lav. Omfang, tidspunkt og grenser bestemmes på forhånd sammen med testerne, og de mest risikable delene planlegges slik at driften ikke tar skade. Poenget er å finne hullene under trygge forhold, med eksperter man selv har invitert, i stedet for å la reelle angripere finne dem på sin måte.
Er en penetrasjonstest nok til å være sikker?
Nei, den er en viktig del, men ikke hele bildet. En test viser situasjonen på et gitt tidspunkt; sikkerhet er et løpende arbeid med oppdateringer, tilganger, sikker innlogging og bevisste medarbeidere. Se på penetrasjonstesten som en tilbakevendende helsesjekk som avdekker svakheter, ikke som en attest på at alt er trygt for godt.