Video: Instruktionsvideo 2024
Många webbplatser kräver att användare loggar in innan de kan göra något med applikationen. Överraskande kan det vara en stor hjälp för hackare. Dessa inloggningsmekanismer hanterar ofta inte felaktiga användar-ID eller lösenord. De avslöjar ofta för mycket information som en angripare kan använda för att samla in giltiga användar-ID och lösenord.
För att testa för osäkrade inloggningsmekanismer, bläddra till din ansökan och logga in
-
Använda ett ogiltigt användar-ID med ett giltigt lösenord
-
Använda ett giltigt användarnamn med ett ogiltigt lösenord
-
Använda ett ogiltigt användarnamn och ogiltigt lösenord
När du har angett denna information, webbapplikationen kommer antagligen att svara med ett meddelande som liknar ditt användarnamn är ogiltigt eller ditt lösenord är ogiltigt. Webapplikationen kan returnera ett generiskt felmeddelande, till exempel att användarnamnet och lösenordskombinationen är ogiltig och samtidigt returnera olika felkoder i webbadressen för ogiltiga användar-ID och ogiltiga lösenord.
I båda fallen är det dåliga nyheter, eftersom programmet inte bara säger vilken parameter som är ogiltig, men också vilken som är giltig. Det betyder att skadliga angripare nu vet ett bra användarnamn eller lösenord - deras arbetsbelastning har skurits i hälften! Om de känner till användarnamnet kan de helt enkelt skriva ett skript för att automatisera lösenordsprickningsprocessen och vice versa.
Du bör också ta din inloggningstestning till nästa nivå genom att använda ett webinloggningsverktyg, till exempel Brutus. Brutus är ett mycket enkelt verktyg som kan användas för att spricka både HTTP och formulärbaserade autentiseringsmekanismer genom att använda både ordbok och brute-force attacker.
Som med någon typ av lösenordstestning kan detta vara en lång och svår uppgift, och du står risken att låsa ut användarkonton. Fortsätt med försiktighet.
Ett alternativ - och bättre underhållet - verktyg för att spricka webblösenord är THC-Hydra.
De flesta kommersiella webb sårbarhetsskannrar har anständiga ordboksbaserade webblösenkökare men ingen kan göra sann brute-force-testning som Brutus can. Din lösenordsmässiga framgång är mycket beroende av dina ordlistor. Här är några populära webbplatser som innehåller ordlistor och andra diverse ordlistor:
-
ftp: // ftp. cerias. purdue. edu / pub / dict
-
// packetstormsecurity. org / Kex / ordlistor
-
www. outpost9. com / filer / ordlistor. html
Du kanske inte behöver något verktyg för lösenordssprickning alls, eftersom många front-end-webbsystem, till exempel lagringssystem och IP-video och fysiska åtkomstkontrollsystem, helt enkelt har lösenord som kom på dem.Dessa standardlösenord är vanligtvis "lösenord", "admin" eller ingenting alls. Vissa lösenord är även inbäddade direkt i inloggningssidan källkod.
Du kan genomföra följande motåtgärder för att förhindra att människor angriper svaga inloggningssystem i dina webbapplikationer:
-
Eventuella inloggningsfel som returneras till slutanvändaren bör vara så generiska som möjligt och säga något som ligner Ditt användar-ID och lösenordskombinationen är ogiltig.
-
Programmet ska aldrig returnera felkoder i webbadressen som skiljer mellan ett ogiltigt användar-ID och ett ogiltigt lösenord.
Om ett URL-meddelande måste returneras, bör programmet hålla det så generellt som möjligt. Här är ett exempel:
www. your_web_app. se / inloggning. cgi? success = false
Det här URL-meddelandet kanske inte är bekvämt för användaren, men det hjälper till att gömma mekanismen och åtgärderna bakom kulisserna från angriparen.
-
Använd CAPTCHA (även reCAPTCHA) eller webbinloggningsformulär för att förhindra att lösenordsprickning försök.
-
Använd en inkräktarmekanism på din webbserver eller i dina webbapplikationer för att låsa användarkonton efter 10-15 misslyckade inloggningsförsök. Denna chore kan hanteras via sessionsspårning eller via en tredjeparts webbapplikations firewall add-on.
-
Kontrollera och byt standardleverantörer för leverantörer till något som är lätt att komma ihåg men ändå svårt att spricka.