Lej en hacker: penetrationstest, sårbarhedstest og sikkerhedsscanninger

BLOG: Der findes mange forskellige typer sikkerhedstest, men hvordan adskiller de forskellige test sig - og hvorfor er der egentlig så stor forskel på priserne?
Skrevet i It-sikkerhed


Publiceret d. 24. marts 2008 kl. 22.20


 
ANNONCE:
Som nævnt mener jeg, at IT- og Telestyrelsens gratis sårbarhedscanner har værdi, også for private. Sikkerhedstest kan give konkret viden om sikkerhedsniveauet på systemer og netværk.
Men der findes mange forskellige produkter indenfor sikkerhedstest og det er meget vigtigt man på forhånd gør sig klart hvad man egentlig ønsker at opnå med en sikkerhedstest.

Jeg opdeler markedet i tre meget forskellige hovedgrupper:

- Automatiske sårbarhedsscanninger
- Manuelle sikkerhedstest
- Specialiserede test

1. Automatiske sårbarhedsscanninger

Automatiske sårbarhedsscanninger, som IT- og Telestyrelsens Nessus scanner, er ofte den første type test virksomheder møder.
Prisen på scanningerne er typisk lav og består af en lang række test udført af et computerprogram uden menneskelig indblanding. Testen resulterer typisk i en standard rapport på engelsk.

Styrker
De eneste udgifter til en automatisk scanner er licenser til kommercielle programmer og internet forbindelsen. Så da selve scanningen, udover indtastning af IP-adresser, ikke kræver nogen form for menneskelig intelligens eller tidsforbrug kan sikkerhedsfirmaer typisk holde prisen meget lav. Nogle sikkerhedsfirmaer tilbyder derudover at hjælpe med at tolke standard rapporterne.

De automatiske sårbarhedsscanninger er meget effektive til at skabe et overblik over sikkerhedsniveauet. Prisen er ofte lav nok til, at der kan laves regelmæssige scanninger, så man kan følge sikkerhedsniveauet over tid.

Hvis netværket er meget dynamisk, dvs der sker hyppige konfigurationsændringer, mange nye servere sættes op, eller mange forskellige personer arbejder på netværket, kan der være baggrund for hyppige automatiske scanninger. De hyppige scanninger kan fange de konfigurationsfejl der uværgeligt opstår på store dynamiske netværk og resultaterne kan bruges som intern og ekstern dokumentation, f.eks. i forhold til IT-revisionen.

Svagheder
Automatiske sårbarhedsscannere udfører typisk tusindvis af test efter kendte sårbarheder, f.eks. manglende sikkerhedsopdateringer.

Et eksempel på en automatisk test er Nessus testcase 10132.
Programmet checker først om TCP port 17300 er åben og om tekststrengen "YOK2" returneres når man forbinder sig til porten.
Hvis begge dele er sande kan sårbarhedsscanneren antage at maskinen er inficeret med "Kuang2".

Da automatiske scanninger udføres af et computerprogram uden menneskelig indblanding er scaningerne ikke bedre end de test der udføres. Hvis "Kuang2" virusen ovenfor installerer sin bagdør på port 17301 i stedet for port 17300 finder testcasen ovenfor ikke bagdøren. Og hvis scanneren forbinder sig til porten og teksten siger "Dette er en hemmelig hacker bagdør, indtast din kommando her:", vil testen heller ikke kunne identificere en sårbarhed.

Automatiske sårbarhedsscannere leder således efter almindelige, kendte sårbarheder, der stort set altid kan løses med sikkerhedsopdateringer. Scanningerne finder ikke avancerede sårbarheder og scanningerne bør ikke bruges som symptombehandling. Det er betydeligt bedre at etablere procedurer, der sikre, at systemerne holdes opdateret end at finde sårbarhederne med sikkerhedsscanninger. Hvis serverne holdes opdateret burde automatiske scanninger aldrig finde sårbarheder.

Automatiske scannere kan kun udføre effektive test imod kendte systemer. Jo mere udbredt et system er, jo flere test vil der typisk blive foretaget. Så snart systemerne begynder at afvige fra standarden, begynder effektiviteten af den automatiske scanner at falde. Derfor vil automatiske scannere sjældent finde fejl i egenudviklede applikationer, lige meget hvor tydelige sårbarhederne vil være for en angriber, netop fordi de ofte vil afvige fra standardsystemer.

Teknisk adskiller de forskellige automatiske sårbarhedsscannere sig ikke meget fra hinanden, den store forskel mellem forskellige produkter ligger i dag typisk i rapporteringen. Manuelle sikkerhedstests er derimod *meget* forskellige rent teknisk.

2. Manuelle sikkerhedstest
Manuelle sikkerhedstest udføres af mennesker, der udnytter deres erfaring og viden, til at udføre testen.

Menneskelig intelligens, kreativitet og erfaring kan mange gange finde en række sårbarheder der ikke bliver fundet af computerprogrammer. Det er dog vigtigt at være klar over at resultaterne af manuelle sikkerhedstest kan være meget forskellige. F.eks. udfører nogle sikkerhedsfirmaer meget strukturerede tests, andre tester mere kreativt, i nogle firmaer udføres testen af en enkelt person, i andre benyttes mere eller mindre specialiserede teams.
Resultatet kan også i høj grad påvirkes af testernes erfaring, dygtighed og den testmetodik der benyttes.

Manuelle sikkerhedstest kan opdeles i to hovedgrupper: system test og intrusiontest.

I systemtest udvælges et antal kritiske eller repræsentative servere til test. Testerne forsøger at finde alle kendte sårbarheder på de udvalgte servere under testen. Testen går i dybden og der rapporteres om alle fundne sårbarheder på alle systemer. Afhængigt af hvad der er aftalt med virksomheden kan testeren udnytte fundne sårbarheder til at nå dybere ind i netværket, men i mange tilfælde standses testen når kritiske sårbarheder er identificeret.
Denne type test omfatter kun de udvalgte systemer og sikkerhedsniveauet kan derfor påvirkes af alle andre systemer på netværket med anden konfiguration eller opsætning. Testserveren på Internettet, som alle har glemt, findes ikke i denne type test.

I intrusiontest kender testeren alle virksomhedens IP-adresser og alle adresser kan angribes på lige fod med hinanden. Når en sårbarhed findes bliver den udnyttet til at nå dybere ind i netværket. Denne type test minder mere om hvordan en hacker angriber, men giver ikke information om alle potentielle sårbarheder på systemerne: når første sårbarhed findes bliver den udnyttet og testeren går med det samme videre til andre systemer. Typisk sættes et mål for testen på forhånd, f.eks. at opnå adgang til bestemte systemer eller netværk.

3. Specialiserede test
Specialiserede test omfatter alle variationer af sikkerhedstest der tilbydes og ønskes af virksomhederne. Eksempler inkluderer "interne test" hvor testeren sidder bag firewallen med forskellige rettigheder, VoIP-test, test af sikkerheden fra samarbejdspartnere, VPN-test, test af Intrusion Detection Systemer, crash testing (DoS), applikationstest, sikkerhedstest af trådløse netværk, test af incident håndtering osv, osv.

Det er meget vigtigt man på forhånd gør sig klart hvad man egentlig ønsker at opnå med en sikkerhedstest. Det kræver helt forskellige typer test hvis det er overblik over kendte sårbarheder på hele netværket der er interessant, eller hvis det er en test af om en dygtig, målrettet hacker vil kunne gennembryde en webapplikation man har brug for.

Jeg regner med at vende tilbage til sikkerhedstest på et senere tidspunkt. Men hvad er dine erfaringer med sikkerhedstest og sårbarhedsscanninger?

Kommentarer til blogindlæg



Kommentér
Ytringer på debatten er afsenders eget ansvar - læs debatreglerne

Mere fra It-sikkerhed


På en række områder har dansk lovgivning et højt niveau for databeskyttelse. Når der lægges op til yderligere harmonisering i EU opfordrer Datatilsynet til, at man fra dansk side arbejder for et retsgrundlag, der ikke tvinger beskyttelsen af personoplysninger i Danmark ned på et lavere niveau.
3. februar 2011 kl. 13.30 | læs »



Stuxnet-ormen har lagt Mærsk og Siemens' fabrikssystemer ned, og den er blevet udråbt til en af de værste sikkerhedstrusler i 10 år. Her kan du få et indblik i, hvordan den virker.
15. november 2010 kl. 12.39 | læs »



Personers ret til privatliv og databeskyttelse er grundlæggende. Det fremgår nu også af It-politisk redegørelse, at beskyttelse af privatliv og personoplysninger bør være en integreret del af digitaliseringsprojekter. Men der er også brug for kompetencer og viden om beskyttelse af personoplysninger og privatliv. Som eksempel omtales en konkret sag fra Datatilsynets hverdag
5. maj 2010 kl. 13.15 | læs »



Kan man købe stjålne data til at bekæmpe skattesnyd? Det er der stor uenighed om.
10. februar 2010 kl. 15.10 | læs »



28. januar 2010 kl. 10.00 | læs »








Carsten Jørgensen (3)
Carsten Jørgensen er bl.a. CISSP, CISA og CISM. Han har beskæftiget sig med sikkerhed på fuld tid siden 1999 og arbejder i dag som it-sikkerhedschef i Falck.

I sin fritid driver han hjemmesiderne CloudSecurity.dk og ComputerForensics.dk. Carsten er facilitator for Dansk-IT's kompetancenetværk for Cloud Computing og virtualisering, han underviser i it-sikkerhed på DIKU.

 


Mest læste seneste uge

Kan gratis sikkerhedssoftware virkelig beskytte din pc? Svaret er ja, hvis du vælger det rette produkt. Læs her en test af de mest pålidelige gratis sikkerhedsprogrammer.

Næsten 200 IBM-ansatte får med få timers varsel sidste arbejdsdag i dag. Ingen var orienteret forud for dagens massefyring, som effektueres øjeblikkeligt.

Flyselskabet SAS har brugt op mod trekvart milliarder kroner og seks år på at udskifte sit bookingsystem. Undervejs har der været flere projekt-udfordringer, som kulminerede en vinternat med en big bang-migrering.

Her er forklaringen på, at IBM Danmark med direktør Lars Mikkelgaard-Jensen i spidsen fyrer 170 medarbejdere.

IBM Danmark lader hovederne rulle.