Brute-force attack: zo verzet je je ertegen
Hackers maken niet alleen gebruik van bekende zwakke plekken en bugs in software, besturingssystemen of content management systemen om toegang te krijgen tot jouw data of jouw website binnen te dringen. Een andere veelgebruikte methode is brute-force. Wat is een brute-force attack, en hoe kan je je ertegen wapenen?
Brute-force valt de zwakste link aan: jou!
Kort samengevat komt een brute-force attack erop neer dat automatische software inlognamen en wachtwoorden uitprobeert tot de juiste combinatie gevonden is om toegang te krijgen tot jouw data of website.
Omdat veel mensen een bestaand woord als wachtwoord kiezen, dat ze dan lichtjes wijzigen, maakt dergelijke kraaksoftware vaak gebruik van woorden uit het woordenboek (dictionary attacks).
Geloof het of niet, ook combinaties zoals "admin" als inlog en "12345" als wachtwoord worden uitgetest. Er zijn nu eenmaal mensen die de meest elementaire regels van beveiliging in de wind slaan!
Lees ook: Hoe kies ik een veilig wachtwoord.
Tijd is alles wat de kraker nodig heeft
Zelfs lange of moeilijke wachtwoorden kunnen geraden worden, als de kraaksoftware maar genoeg tijd krijgt om zijn giswerk uit te voeren. Computers kunnen steeds sneller rekenen zodat zij sneller de juiste combinatie kunnen achterhalen.
Wanneer een hacker jouw data kan downloaden heeft hij dan ook alle tijd van de wereld om kraaksoftware aan het werk te zetten om de versleuteling te doorbreken. Bij data die online staan heb je gelukkig enkele afweermiddelen. Hieronder enkele tips.
Het afweren van brute-force aanvallen is niet alleen nodig om te verhinderen dat hackers jouw gegevens kunnen inkijken, maar ook om de performantie van je site niet in het gevaar te brengen. Een dergelijke aanval kan immers het geheugen van je server zwaar belasten, doordat het aantal http-requests enorm stijgt, d.w.z. het aantal keren dat iemand (in dit geval: het programma) jouw site bezoekt. Gevolg: het geheugen van de server raakt vol, met performantieproblemen tot gevolg.
7 tips om brute-force aanvallen te bestrijden
- Gebruik altijd een sterk wachtwoord
Een sterk wachtwoord is minstens 8 karakters lang en bevat letters (hoofdletters en kleine letters), cijfers en symbolen, zoals:
` ~ ! @ # $ % ^ & * ( ) _ - + = { } [ ] \ | : ; " ' < > , . ? /
Moedig je gebruikers aan om sterke wachtwoorden te hanteren. Sinds versie 4.3 van WordPress bijvoorbeeld wordt de gebruiker overduidelijk gewaarschuwd wanneer zijn wachtwoord te zwak is.
- Beperk het aantal logins tot bijvoorbeeld 3 waarna de account geblokkeerd wordt
De gebruiker moet dan de admin vragen de account te deblokkeren. Nadeel van deze methode is wel dat een leukerd verschillende accounts op deze manier kan blokkeren, wat extra werk betekent voor de systeembeheerder. Een alternatief: je blokkeert de account niet volledig, maar beperkt bijvoorbeeld de functionaliteiten bij een mislukte inlog.
- Werk met progressief oplopende tussentijden
Telkens wanneer de gebruiker een foute inlogpoging doet, zal hij steeds langer moeten wachten voordat hij een nieuwe poging kan doen.
- Laat de gebruiker bewijzen dat hij geen robot is
Werk met een reCAPTCHA waarbij de gebruiker een woord of een simpele rekensom moet invullen. Nadeel hierbij is wel dat het de gebruikerservaring iets minder vlot laat verlopen. Een alternatief is gebruik maken van two-factor autenticatie
- Vraag de geheime vraag na 2 of meer gefaalde login-pogingen
Dit remt niet alleen geautomatiseerde aanvallen af, maar houdt de hacker buiten de deur wanneer hij uiteindelijk toch de gebruikersnaam en het wachtwoord correct geraden heeft.
- Verleen of blokkeer toegang op basis van IP-adressen
Laat bijvoorbeeld enkel een login toe vanaf een of meerdere IP-adressen wanneer je met vaste medewerkers werkt binnen een bepaald netwerk. Denk er wel aan dat IP-adressen kunnen wijzigen, en dat hackers hun IP-adres kunnen maskeren.
- Geef bepaalde groepen elk een aparte login URL
Zo kan je het risico spreiden. En vermijd /my-admin of /admin als inlog-url!
- Wil je helemaal veilig zijn, werk dan met 2-factor authenticatie
Hiermee is zowel een wachtwoord vereist als een token (een code die als sms naar je telefoon gestuurd wordt). De tools Clef of Duo bijvoorbeeld zorgen voor 2factor authentication.
TIP: Lees meer over 2FA (tweestapsverificatie) en hoe je het op je Combell-account kan activeren.
Sta op de uitkijk voor verdachte incidenten!
Houd de logs van je server in de gaten. Elke mislukte login-poging geeft een HTTP 401-status code in de logs van jouw webserver. De volgende gebeurtenissen zouden alarmbellen moeten laten rinkelen:
- Verschillende mislukte login-pogingen vanaf eenzelfde IP-adres
- Logins met verschillende gebruikersnamen vanaf eenzelfde IP-adres
- Logins voor een bepaalde account maar vanaf vele verschillende IP-adressen
- Uitzonderlijk veel bandbreedte gebruikt door één bepaalde gebruiker
- Mislukte inlog-pogingen met gebruikersnamen of wachtwoorden in alfabetische volgorde
Wil je nog meer te weten komen? Een lijstje met veelgebruikte tools om brute force-aanvallen uit te voeren vind je bij Wikipedia en bij InfosecInstitute. Open Web Application Security Project heeft een tester om te zien of jouw website kwetsbaar is, en bevat code om verdediginsgordels tegen aanvallen in te bouwen zoals Password Authentication Delay bij VB.NET en C#. Werk je met WordPress, dan heeft de WordPress Codex goede tips om je tegen brute-force aanvallen te beschermen.
Speel op veilig met Combell en bescherm uw website op vier verschillende niveaus, van het datacenter tot en met uw applicatie. En dat gratis inbegrepen bij elk hosting pakket.
In de strijd tegen brute-force aanvallen is het belangrijkste: tijd winnen, en het de hacker niet te gemakkelijk maken!