Penetration Test Tutorial: Hvad er PenTest?
Penetration Testing
Penetration Testing eller Pen Testing er en type Sikkerhedstest bruges til at dække sårbarheder, trusler og risici, som en angriber kan udnytte i softwareapplikationer, netværk eller webapplikationer. Formålet med penetrationstest er at identificere og teste alle mulige sikkerhedssårbarheder, der er til stede i softwareapplikationen. Penetrationstest kaldes også Pen Test.
Sårbarhed er risikoen for, at en hacker kan forstyrre eller få autoriseret adgang til systemet eller data indeholdt i det. Sårbarheder introduceres normalt ved et uheld under softwareudviklings- og implementeringsfasen. Almindelige sårbarheder omfatter designfejl, konfigurationsfejl, softwarefejl osv. Penetrationsanalyse afhænger af to mekanismer, nemlig Vulnerability Assessment og Penetration Testing (VAPT).
Hvorfor penetrationstest?
Penetration er afgørende i en virksomhed, fordi –
- Finansielle sektorer som banker, investeringsbanker, børser ønsker, at deres data skal være sikret, og penetrationstest er afgørende for at sikre sikkerhed
- I tilfælde af, at softwaresystemet allerede er hacket, og organisationen ønsker at afgøre, om der stadig er trusler i systemet for at undgå fremtidige hacks.
- Proaktiv penetrationstest er den bedste beskyttelse mod hackere
Typer af penetrationstest
Den valgte type penetrationstest afhænger normalt af omfanget og om organisationen ønsker at simulere et angreb fra en medarbejder, netværksadministrator (interne kilder) eller eksterne kilder. Der er tre typer penetrationstest, og det er de
- Sort Box Test
- Hvid Box Penetrationstest
- Grå Box Penetration Testing
I black-box penetrationstest har en tester ingen viden om de systemer, der skal testes. Han er ansvarlig for at indsamle oplysninger om målnetværket eller -systemet.
I en white-box penetrationstest forsynes testeren normalt med fuldstændig information om netværket eller systemerne, der skal testes, inklusive IP-adresseskema, kildekode, OS-detaljer osv. Dette kan betragtes som en simulering af et angreb fra evt. Interne kilder (medarbejdere i en organisation).
I en grå boks penetrationstest er en tester forsynet med delvist kendskab til systemet. Det kan betragtes som et angreb fra en ekstern hacker, der havde fået illegitim adgang til en organisations netværksinfrastrukturdokumenter.
Sådan laver du penetrationstest
Følgende er aktiviteter, der skal udføres for at udføre penetrationstest -
Trin 1) Planlægningsfase
- Opgavens omfang & strategi fastlægges
- Eksisterende sikkerhedspolitikker, standarder bruges til at definere omfanget
Trin 2) Opdagelsesfase
- Indsaml så meget information som muligt om systemet, herunder data i systemet, brugernavne og endda adgangskoder. Dette kaldes også som FINGERAFSKRIFT
- Scan og probe ind i portene
- Tjek for sårbarheder i systemet
Trin 3) Angrebsfase
- Find udnyttelser til forskellige sårbarheder Du har brug for de nødvendige sikkerhedsprivilegier for at udnytte systemet
Trin 4) Rapporteringsfase
- En rapport skal indeholde detaljerede resultater
- Risici for fundne sårbarheder og deres indvirkning på forretningen
- Eventuelle anbefalinger og løsninger
Den primære opgave i penetrationstest er at indsamle systemoplysninger. Der er to måder at indsamle information på –
- 'En til en'- eller 'en til mange'-model med hensyn til vært: En tester udfører teknikker på en lineær måde mod enten én målvært eller en logisk gruppering af målværter (f.eks. et undernet).
- 'Mange til én'- eller 'mange til mange'-model: Testeren bruger flere værter til at udføre informationsindsamlingsteknikker i en tilfældig, hastighedsbegrænset og ikke-lineær.
Eksempler på penetrationstestværktøjer
Der er en bred vifte af værktøjer, der bruges i penetrationstest og vigtige Pentest værktøjer er:
1) Teramind
Teramind leverer en omfattende suite til forebyggelse af insidertrusler og medarbejderovervågning. Det øger sikkerheden gennem adfærdsanalyse og forebyggelse af datatab, sikrer overholdelse og optimerer forretningsprocesser. Dens brugerdefinerbare platform passer til forskellige organisatoriske behov og giver praktisk indsigt, der fokuserer på at øge produktiviteten og beskytte dataintegriteten.
Funktioner:
- Insider-forebyggelse af trusler: Registrerer og forhindrer brugerhandlinger, der kan indikere insidertrusler mod data.
- Optimering af forretningsprocesser: Anvender datadrevet adfærdsanalyse til at omdefinere operationelle processer.
- Arbejdsstyrkens produktivitet: Overvåger arbejdsstyrkens produktivitet, sikkerhed og overholdelsesadfærd.
- Overholdelsesstyring: Hjælper med at administrere overholdelse med en enkelt, skalerbar løsning, der er egnet til små virksomheder, virksomheder og offentlige myndigheder.
- Hændelsesforensik: Leverer beviser for at berige hændelsesrespons, undersøgelser og trusselsefterretninger.
- Forebyggelse af datatab: Overvåger og beskytter mod potentielt tab af følsomme data.
- Medarbejderovervågning: Tilbyder kapacitet til at overvåge medarbejdernes præstationer og aktiviteter.
- Adfærdsanalyse: Analyserer detaljerede kundeappadfærdsdata for at få indsigt.
- Tilpasselige overvågningsindstillinger: Tillader tilpasning af overvågningsindstillinger, så de passer til specifikke brugstilfælde eller for at implementere foruddefinerede regler.
- Dashboard-indsigt: Giver synlighed og handlingsorienteret indsigt i arbejdsstyrkens aktiviteter gennem et omfattende dashboard.
- Nmap– Dette værktøj bruges til at udføre portscanning, OS-identifikation, spore ruten og til sårbarhedsscanning.
- Nessus– Dette er traditionelt netværksbaseret sårbarhedsværktøj.
- Pass-The-Hash – Dette værktøj bruges hovedsageligt til adgangskodeknækning.
Penetrationstesteres rolle og ansvar
Penetration Testers opgave er at:
- Testere bør indsamle nødvendige oplysninger fra organisationen for at muliggøre penetrationstest
- Find fejl, der kan tillade hackere at angribe en målmaskine
- Pentestere bør tænke og agere som rigtige hackere om end etisk.
- Arbejdet udført af penetrationstestere bør være reproducerbart, så det bliver nemt for udviklere at rette det
- Startdato og slutdato for testudførelse bør defineres på forhånd.
- En tester bør være ansvarlig for ethvert tab i systemet eller information under Software Testing
- En tester bør holde data og oplysninger fortrolige
Manuel penetration vs. automatiseret penetrationstest
Manuel penetrationstest | Automatiseret penetrationstest |
---|---|
Manuel testning kræver eksperter til at køre testene | Automatiserede testværktøjer giver klare rapporter med mindre erfarne fagfolk |
Manuel test kræver Excel og andre værktøjer til at spore det | Test af automatisering har centraliserede og standardværktøjer |
I manuel test varierer prøveresultaterne fra test til test | I tilfælde af automatiserede tests varierer resultaterne ikke fra test til test |
Hukommelsesrydning bør huskes af brugerne | Automatiseret test vil have omfattende oprydninger. |
Ulemper ved penetrationstest
Penetrationstest kan ikke finde alle sårbarheder i systemet. Der er begrænsninger af tid, budget, omfang og færdigheder hos Penetration Testers
Følgende vil være bivirkninger, når vi laver penetrationstest:
- Datatab og korruption
- Down tid
- Forøg omkostningerne
Konklusion
Testere bør opføre sig som en rigtig hacker og teste applikationen eller systemet og skal kontrollere, om en kode er sikkert skrevet. En penetrationstest vil være effektiv, hvis der er en velimplementeret sikkerhedspolitik. Penetrationstestpolitik og -metode bør være et sted, hvor man kan gøre penetrationstest mere effektiv. Dette er en komplet begyndervejledning til penetrationstestning.
Tjek vores Live penetrationstestprojekt