Med hjälp av testning av webbplatser kan du hitta sårbarheter och buggar som kan utnyttjas av angripare. Om du är webbplatsadministratör rekommenderar vi att du lägger till penetrationstestning i din verktygslista och regelbundet söker efter sårbarheter för att säkerställa att dina webbplatser är helt säkra. De problem som upptäcks hjälper dig att åtgärda svagheter.
Säkerhetstestning omfattar så många olika verktyg och uppgifter. I den här artikeln ska vi gå igenom de grundläggande aspekterna av att hitta sårbarheter på en webbplats. Med hjälp av denna instruktion kommer du att kunna hålla din resurs säker.
Penetrationstestning och sökning efter sårbarheter på en webbplats innebär flera åtgärder. Det räcker inte att köra ett verktyg och testa webbplatsen, du behöver rätt tillvägagångssätt för att hjälpa dig att samla in så mycket information som möjligt om säkerheten i ditt system.
De viktigaste stegen är:
Låt oss sedan titta på vad som bör göras i vart och ett av stegen och vilka verktyg du bör använda för att göra det. Det är bättre att inte installera alla dessa program separat, utan att använda en färdig miljö för penetrationstestning - Kali Linux. Det här är en speciellt förberedd Linux-distribution som redan innehåller alla nödvändiga program. På så sätt behöver du inte installera någonting. Du kan köra systemet från ett USB-minne eller installera Kali Linux på din hårddisk.
För att ta reda på vilken information som andra kan få reda på om ditt system måste du använda flera verktyg:
nmap
är ett av de mest populära verktygen för nätverksskanning. Du kan använda det för att se vilka tjänster som körs på en webbplatsserver, vilka portar de använder, deras portversioner och till och med operativsystemets version. För att se de öppna portarna på din maskin kör du det här kommandot i Kali Linux-terminalen:
$ nmap -sS 192.168.91.249
192.168.91.249
är resursens ip-adress. Det här kommandot visar öppna portar och tjänstenamn. Du kan få mer detaljerad information, till exempel kan du samla in mycket information om systemet redan vid denna tidpunkt. Här kan du till exempel se att maskinen kör en SSH-server, en webbserver, Samba-fildelningstjänster och en proxyserver på port 3128. Alla dessa kan potentiellt vara sårbara.
Med Nmap-skannern kan du gräva djupare, med mer intensiv skanning. För att göra detta använder du alternativet -A:
$ nmap -A 192.168.91.62
Här ser du redan mycket mer information, till exempel serviceversioner, systemtid, innehållshanteringssystem och till och med operativsystemets version. Om enkla sårbarheter som t.ex. ett svagt FTP-lösenord hittas får du också veta det. Du kan läsa mer om hur du använder Nmap i en separat artikel. Du bör också använda andra tillgängliga informationskällor. Det är viktigt att förstå vilken information som finns tillgänglig om dig i nätverket och om en angripare kan få information som de inte borde ha tillgång till.
Här är några tjänster:
Fuzzing används ofta för att skanna. Tanken bakom fasning är att skicka en stor mängd slumpmässiga data till din webbplats för att försöka hitta sårbarheter. De olika verktygen som vi kommer att titta på nedan simulerar attacker för att testa sårbarheten i en applikation.
Fuzzing-applikationer kan identifiera sårbarheter, men för bästa resultat är det värt att förstå hur dessa applikationer fungerar och vad felet är. Om du har tillgång till källkoden för projektet kan du använda fuzzing och manuell analys parallellt för att hitta problem med större noggrannhet. Fuzzing-attacker är mycket högljudda eftersom de kräver överföring av mycket data. Ett intrångsskyddssystem kommer att märka dem, du måste vara försiktig. Låt oss sedan titta på de verktyg som kan användas.
WPScan är ett open source-projekt skrivet i Ruby som är särskilt avsett för att skanna WordPress. Det är mycket lätt att använda och kan vara användbart för webbplatser som använder många plugins eller inte uppdateras. Verktyget behöver inte källkod och utför skanningar på distans.
Nikto är en sårbarhetsskanner för webbplatser. Den är mycket längre än WPSan, men är utformad för mer än bara WordPress. Den innehåller många plugins och kör en hel del frågor under skanningen. Till exempel kan programvaran hitta en fil som matar ut phpinfo-information. Men Nikto genererar en hel del falska positiva resultat, så du måste analysera utdata noggrant.
Burp Suite är ett mycket kraftfullt program för att hitta sårbarheter på en webbplats eller i webbapplikationer. Det här verktyget fungerar bara via en webbläsare. Med verktyget kan du kontrollera alla formulär som finns på webbplatsen, kontrollera inlämningen av olika rubriker, se webbläsarsvar och förfrågningar, utföra aktiv URL-skanning, utföra statisk javascript-kodanalys och söka efter XSS-sårbarheter på webbplatsen. Det är ett bra verktyg, men det kan verka komplicerat.
SQLMap är ett program för att hitta SQL-sårbarheter på en webbplats. Du kan hitta alla möjliga ställen där SQL-injektioner kan utföras. Om du t.ex. antar att det kan finnas en SQL-injektion i id-parametern använder du det här kommandot
$ sqlmap -u http://example.com/?id=1 -p id
Programmet kommer att testa olika typer av databaser, så att du bara kan ange rätt databas:
$ sqlmap --dbms=MySQL -u http://example.com/?id=1 -p id
Med dessa kommandon kan du testa fält och ange olika parametrar, t.ex. databaser, tabeller eller lösenord.
Exploitation avslutar sökandet efter sårbarheter på webbplatsen och ger utnyttjande av sårbarheter för att få tillgång till systemet eller data. Om du har lyckats hitta och täppa till säkerhetshål behöver du i allmänhet inte göra något mer. Men ibland måste du bevisa att problemet verkligen är allvarligt.
Det rekommenderas att inte använda sårbarhetsutnyttjande på produktionssystem. eftersom det kan leda till problem. Det är bättre att skapa en virtuell maskin och redan i den visa allt du behöver. Här är några verktyg du kan använda:
Metasploit är en hel penetrationstestmiljö som innehåller många färdiga exploateringar. Du kan hitta exploateringar för installerade plugins eller tjänster som upptäcktes i det första steget. Vi kommer att ta en närmare titt på hur man använder Metasploit i en framtida artikel.
Detta är det sista steget i sårbarhetssökningen. Baserat på allt som hittades måste du dra slutsatser och stänga alla hål. När du har all data om sårbarheterna. Prioritera och åtgärda allt du har hittat. Om du kunde hitta dessa sårbarheter kan vem som helst hitta dem.
I den här artikeln har vi gjort en mycket snabbkurs i att hitta sårbarheter på webbplatsen och tittat på den viktigaste programvaran för att hitta sårbarheter på webbplatsen som du kan använda för att säkerställa att din resurs eller infrastruktur är så säker som möjligt. Många av dessa verktyg är branschstandard. Nu kan du fundera på din teststrategi och försöka eliminera alla sårbarheter.
Apply the discount by inserting the promo code in the special field at checkout: