Websitetest giver dig mulighed for at finde sårbarheder og fejl, som kan udnyttes af angribere. Hvis du er webstedsadministrator, anbefaler vi, at du tilføjer penetrationstest til din liste over værktøjer og regelmæssigt søger efter sårbarheder for at sikre, at dine websteder er fuldt ud sikre. De opdagede problemer vil hjælpe dig med at rette svagheder.
Sikkerhedstest involverer så mange forskellige værktøjer og opgaver. I denne artikel gennemgår vi de grundlæggende aspekter af at finde sårbarheder på et website. Ved hjælp af denne instruktion vil du være i stand til at holde din ressource sikker.
Penetrationstest og søgning efter sårbarheder på et website involverer flere handlinger. Det er ikke nok at køre et værktøj og teste webstedet, du har brug for den rigtige tilgang til at hjælpe dig med at indsamle så mange oplysninger som muligt om dit systems sikkerhed.
De vigtigste trin er:
Lad os nu se på, hvad der skal gøres i hver af faserne, og hvilke værktøjer du skal bruge til at gøre det. Det er bedre ikke at installere alle disse programmer separat, men at bruge et færdigt miljø til penetrationstest - Kali Linux. Det er en specielt forberedt Linux-distribution, som allerede indeholder alle de nødvendige programmer. På den måde behøver du ikke at installere noget. Du kan køre systemet fra et flashdrev, eller du kan installere Kali Linux på din harddisk.
For at finde ud af, hvilke oplysninger andre kan finde ud af om dit system, skal du bruge flere værktøjer:
nmap
er et af de mest populære netværksscanningsværktøjer. Du kan bruge det til at se, hvilke tjenester der kører på en hjemmesideserver, hvilke porte de bruger, deres portversioner og endda versionen af operativsystemet. For at se de åbne porte på din maskine skal du køre denne kommando i Kali Linux-terminalen:
$ nmap -sS 192.168.91.249
192.168.91.249
er ressourcens ip-adresse. Denne kommando viser åbne porte og servicenavne. Du kan få mere detaljerede oplysninger, for eksempel kan du samle en masse oplysninger om systemet allerede på dette tidspunkt. Her kan du f.eks. se, at maskinen kører en SSH-server, en webserver, Samba-fildelingstjenester og en proxyserver på port 3128. Alle disse kan potentielt være sårbare.
Nmap-scanneren giver dig mulighed for at grave dybere med mere intensiv scanning. For at gøre dette skal du bruge indstillingen -A:
$ nmap -A 192.168.91.62
Her vil du allerede se mange flere oplysninger, f.eks. serviceversioner, systemtid, indholdsstyringssystem og endda operativsystemets version. Og hvis der findes simple sårbarheder som f.eks. en svag FTP-adgangskode, får du også besked om det. Du kan læse mere om, hvordan du bruger Nmap i en separat artikel. Du bør også bruge andre tilgængelige informationskilder. Det er vigtigt at forstå, hvilke oplysninger der er tilgængelige om dig på netværket, og om en angriber kan få oplysninger, som de ikke burde have adgang til.
Her er nogle tjenester:
Fuzzing bruges ofte til scanning. Ideen bag fuzzing er at sende en stor mængde tilfældige data til dit websted for at prøve at finde sårbarheder. De forskellige værktøjer, som vi ser på nedenfor, simulerer angreb for at teste en applikations sårbarhed.
Fuzzing-applikationer kan identificere sårbarheder, men for at få de bedste resultater er det værd at forstå, hvordan disse applikationer fungerer, og hvad fejlen er. Hvis du har adgang til projektets kildekode, kan du bruge fuzzing og manuel analyse parallelt for at finde problemer med større nøjagtighed. Fuzzing-angreb er meget højlydte, fordi de kræver overførsel af en masse data. Et system til beskyttelse mod indtrængen vil bemærke dem, så man skal være forsigtig. Lad os derefter se på de værktøjer, der kan bruges.
WPScan er et open source-projekt skrevet i Ruby specifikt til scanning af WordPress. Det er meget nemt at bruge og kan være nyttigt for websteder, der bruger mange plugins eller ikke er opdateret. Værktøjet har ikke brug for kildekode og udfører scanninger eksternt.
Nikto er en sårbarhedsscanner til hjemmesider. Den kører meget længere end WPSan, men er designet til mere end bare WordPress. Den indeholder en masse plugins, og den kører en masse forespørgsler under scanningen. For eksempel kan softwaren finde en fil, der udsender phpinfo-oplysninger. Men Nikto genererer mange falske positiver, så du skal analysere outputtet omhyggeligt.
Burp Suite er et meget kraftfuldt program til at finde sårbarheder på et websted eller i webapplikationer. Dette værktøj fungerer kun via en webbrowser. Værktøjet giver dig mulighed for at tjekke alle formularer på hjemmesiden, tjekke indsendelsen af forskellige headere, se browsersvar og -anmodninger, udføre aktiv URL-scanning, udføre statisk javascript-kodeanalyse og søge efter XSS-sårbarheder på hjemmesiden. Det er et godt værktøj, men det kan virke kompliceret.
SQLMap er et program til at finde SQL-sårbarheder på et website. Du kan finde alle mulige steder, hvor der kan udføres SQL-injektioner. Hvis du f.eks. antager, at der kan være en SQL-injektion i id-parameteren, skal du bruge denne kommando
$ sqlmap -u http://example.com/?id=1 -p id
Programmet vil teste for forskellige typer databaser, så du kan nøjes med at angive den rigtige:
$ sqlmap --dbms=MySQL -u http://example.com/?id=1 -p id
Med disse kommandoer kan du teste felter og angive forskellige parametre som f.eks. databaser, tabeller eller adgangskoder.
Exploitation afslutter søgningen efter sårbarheder på et websted og giver mulighed for at udnytte sårbarheder til at få adgang til et system eller data. Hvis du har været i stand til at finde huller i din sikkerhed og lukke dem, behøver du generelt ikke at gøre mere. Men nogle gange er man nødt til at bevise, at problemet virkelig er alvorligt.
Det anbefales ikke at bruge sårbarhedsudnyttelse på produktionssystemer, fordi det kan føre til problemer. Det er bedre at oprette en virtuel maskine og allerede i den vise alt, hvad du har brug for. Her er nogle værktøjer, du kan bruge:
Metasploit er et helt penetrationstestmiljø, der indeholder mange færdige exploits. Du kan finde exploits til installerede plugins eller tjenester, der blev opdaget i det første trin. Vi vil se nærmere på, hvordan man bruger Metasploit i en fremtidig artikel.
Dette er den sidste fase af sårbarhedssøgningen. Baseret på alt, hvad der blev fundet, skal du drage konklusioner og lukke alle hullerne. Når du har alle data om sårbarhederne. Prioriter og reparer alt, hvad du har fundet. Hvis du var i stand til at finde disse sårbarheder, så kan alle andre også finde dem.
I denne artikel har vi givet et lynkursus i at finde sårbarheder på hjemmesider og set på de vigtigste programmer til at finde sårbarheder på hjemmesider, som du kan bruge til at sikre, at din ressource eller infrastruktur er så sikker som muligt. Mange af disse værktøjer er industristandard. Nu kan du overveje din teststrategi og forsøge at eliminere alle sårbarheder.
Apply the discount by inserting the promo code in the special field at checkout: