default passwordMet tien miljard records van 522 websites is er een grote kans dat je weleens een melding hebt gekregen van Have I Been Pwned over een datalek waar je e-mailadres bij voor kwam. Tegenwoordig krijg je dergelijke waarschuwingen ook al snel als je betaalt voor een wachtwoordmanager, en het bedrijf waar je werkt heeft intern misschien een waarschuwingssysteem voor gestolen credentials. Er komen steeds meer databases die het internet checken op gestolen gebruikersnamen en wachtwoorden en die gebruikers daarvoor waarschuwen. Sommige zijn voor iedereen beschikbaar, maar achter de schermen zijn er ook veel diensten die zich op bedrijven richten en die je daarom vaker tegenkomt dan je denkt.

Wachtwoordmanagers

Een dienst om wachtwoorden te checken komt ook in toenemende mate voor bij wachtwoordmanagers. Het is een logische toevoeging voor zo'n dienst, die toch al al je wachtwoorden beheert en ze dan net zo goed meteen kan checken. Bij de meeste wachtwoordmanagers gaat het om een onderdeel van het premiumpakket, maar er zijn ook veel wachtwoordmanagers in de browser die een dergelijke functie hebben. Wachtwoordmanagers geven de diensten vaak omineuze namen. LastPass en Dashlane noemen het bijvoorbeeld dark web monitoring. 1Password kiest voor het iets neutralere Watchtower. Ook wachtwoordmanagers die in browsers voorkomen, zoals bij Firefox' Lockwise of in Chrome, waarschuwen bij zwakke of gelekte wachtwoorden. Daarover schreef Tweakers onlangs een Plus-artikel. In beginsel doen de credentialcheckers ongeveer hetzelfde; je krijgt een waarschuwing te zien als je e-mailadres, wachtwoord of combinatie van beide is gedecteerd bij een van de vele datalekken die in het verleden zijn voorgekomen. In de praktijk zit er wel een groot verschil tussen de checkers.

Chrome Security Check

Grote verschillen

Zo biedt LastPass met Dark Web Monitoring bijvoorbeeld alleen een check aan waarmee je kunt controleren of een e-mailadres in een databreach voorkomt. Wachtwoorden vallen daar niet onder. Dat maakt het heel moeilijk om het praktische risico in te schatten. Bij 1Passwords Watchtower-functie krijg je wel te zien of een wachtwoord ergens in een datalek voorkomt, maar dat is niet veel beter. 1Password controleert namelijk via Have I Been Pwneds Pwned Passwords alleen óf een wachtwoord in een datadump zit. Have I Been Pwned koppelt die gegevens echter niet aan elkaar, zoals we later in dit artikel nog uitleggen. Veel diensten waarschuwen ook wanneer ze merken dat een wachtwoord zwak is. Dat gebeurt simpelweg op basis van wachtwoordlengte en lijsten met veelvoorkomende wachtwoorden.

Uiteindelijk heb je niet zoveel aan zo'n melding of een e-mailadres wel of niet in een database voorkomt, betoogt Jeroen van Beek. De freelance pentester zette een paar jaar geleden de wachtwoordendatabase Scattered Secrets op, samen met ethisch hacker Rickey Gevers. Scattered Secrets verzamelt zelf gestolen credentials, maar richt zich voornamelijk op bedrijven. Daarmee heeft de dienst weliswaar een heel ander verdienmodel dan andere databases, maar de essentie blijft volgens Van Beek dat je er als gebruiker of klant nu eenmaal weinig aan hebt als je hoort dat je e-mailadres ergens is gestolen. "Daarmee weet je niet zoveel", zegt hij. Hij verwijst naar het merendeel van de wachtwoorddatabases dat niet zozeer credentials verzamelt, maar vooral e-mailadressen. Die kunnen ook van bijvoorbeeld spamlijsten komen. Ze zijn makkelijk te vinden op internet, meestal gratis en niet eens op het darkweb maar gewoon op Pastebin. Die lijsten zijn vaak omvangrijk: bij Have I Been Pwned bestaat de top drie van grootste 'datalekken' uit zulke spamlijsten die samen meer dan 2,2 miljard records tellen. Als je een dreigingsniveau gaat opstellen voor jezelf of je organisatie zegt dat echter niet zoveel.

Threat model

In de meeste bedreigingsmodellen zegt enkel een gelekt e-mailadres nooit zoveel"De meeste mensen kennen Have I Been Pwned wel en vragen zich af wat het verschil is met andere diensten", zegt Van Beek. "Maar HIBP is eigenlijk alleen een e-mailnotificatiedienst. Het kan heel nuttig zijn om die informatie te krijgen, maar een waarschuwing kan net zo goed onschuldig zijn. De grootste bronnen zijn spamlijsten. Dat je daarop staat weet je vaak al, daarvoor hoef je alleen maar naar je spambox te kijken." Volgens Van Beek zijn met name zakelijke gebruikers niet geïnteresseerd óf ze in een datadump zitten, maar wel in hoe groot de impact is voor henzelf. "Je kunt in een organisatie niet honderden mensen een mail sturen met 'hey, je e-mailadres komt voor in een database, kijk maar wat je ermee doet'. Je hebt context nodig." Daarom verzamelt Scattered Secrets alleen maar credentials waarbij naast het e-mailadres ook het wachtwoord is buitgemaakt.

Troy Hunt van Have I Been Pwned is er altijd open over geweest dat hij geen wachtwoorden opslaat bij de e-mailadressen die hij verzamelt. Niet omdat dat wel of niet praktisch is voor gebruikers, maar omdat hij de dienst in zijn eentje draait en daarom de beveiliging ervan niet wil garanderen. "Je kunt niet kwijtraken wat je niet hebt", zei Hunt eerder in een interview met Tweakers. "Als Have I Been Pwned door iemand wordt gehackt, heeft de hacker alleen e-mailadressen." Hij geeft toe dat dat 'een klein deel is van alles wat er op straat ligt', maar om alle e-mailadressen en hun bijbehorende gegevens bij elkaar op te slaan is riskant, zegt hij. "Absolute beveiliging bestaat niet. Wie zegt dat dat wel zo is, is een idioot." Scattered Secrets doet dat anders. Van Beek is zelf IT'er van beroep en weet daarom wel het een en ander van de beveiliging van data. "Ik weet vooral wat je niet moet doen", zegt hij.

Pwnd Passwords

Desondanks begon Hunt in 2017 toch met een dienst waarbij hij wachtwoorden verzamelde: Pwned Passwords. De verzameling bestond aanvankelijk uit 306 miljoen wachtwoorden. Inmiddels staan er 613 miljoen wachtwoorden in de database, die hij aggregeerde uit verschillende datalekken die hij door de jaren heen verzamelde en die, net als de spamlijsten die Van Beek eerder noemde, gewoon in bulk op websites zijn te vinden. Het grote verschil met diensten als Scattered Secrets of de concurrenten is dat Pwned Passwords alleen de wachtwoorden toont en niet het bijbehorende e-mailadres. Het is iets nuttiger om te zien of een specifiek wachtwoorden is gestolen in een databreuk, zeker als het een uniek wachtwoord is. Context ontbreekt echter nog steeds, want je hebt geen idee of het om jouw wachtwoord gaat en bij welk account dat hoort.

Kwaliteit van databronnen

Waar Troy Hunt van HIBP in blogposts vaak uitgebreid en transparant vertelt over waar hij de gegevens uit de datalekken vandaan haalt, is bij van veel wachtwoorddatabases lastig te achterhalen waar die informatie vandaan komt. Sommige diensten verzamelen de informatie zelf. Neem Google, dat een lijst online heeft staan met bekende datalekken die het gebruikt in de ingebouwde Chrome-wachtwoordmanager. Daarin noemt het een handvol spamlijsten zoals 'de 1,4 miljard-lijst', en datalekken zoals die van Dropbox of MySpace. Hoe Google precies aan die data komt is niet duidelijk, maar wie de lijst goed bekijkt ziet daar vooral laaghangend fruit op staan. Het zijn lijsten die van bronnen komen die je met een beetje handig googelen en minimale internetkennis bij elkaar hebt. De lijsten staan gewoon op Pastebin of op Raidforums en kosten meestal geen geld meer. Dat betekent ook dat de data vaak flink verouderd zijn. De MySpace-hack vond bijvoorbeeld plaats in 2016, en zelfs toen was de data erin al verouderd. Voor e-mailadressen is dat irrelevant, maar een groot deel van de gebruikers heeft in de tussentijd wel ergens zijn wachtwoord veranderd.

Er is dan ook een groot verschil in de kwaliteit van de bronnen van verschillende wachtwoorddatabases. Waar Google grotendeels oude data gebruikt die vaak semi-openbaar zijn, hebben gespecialiseerde bedrijven een andere aanpak. Neem Enzoic, dat de wachtwoorddatabase beheert die onder andere LastPass gebruikt. Enzoic gebruikt 'een mix van menselijke en geautomatiseerde bronnen' om breaches te vinden. Daarbij worden ook kleine datalekken gebruikt die niet prominent in het nieuws komen, en de inhoud wordt gecontroleerd en geverifieerd door het bedrijf. Hoe groot de omvang van Enzoics database is, is niet bekend, maar omdat de data ook gecureerd worden, geldt wel duidelijk een kwaliteit-over-kwantiteit-aanpak. De website benoemt dat zelf ook: men beheert de database om 'onnodige waarschuwingsvermoeidheid te voorkomen'.

Hackingforums en Pastebin

Jeroen van Beek van Scattered Secrets herkent dat wel. Hij zoekt voor de dienst online naar datalekken en vindt regelmatig grote spamlijsten vol e-mailadressen, recente en ook oudere datadumps. "Dat zijn soms dumps met honderd miljoen credentials, dat zijn grote jongens", zegt hij. Relatief nieuwe datalekken worden vaak voor veel geld aangeboden. "Laatst zag ik een dump van ParkMobile-gegevens voorbij komen voor zo'n 125.000 dollar. Dat lijkt me trouwens vrij veel voor wat je ervoor krijgt. We kopen die dumps niet, want dat mag wettelijk niet, maar wat je vaak ziet is dat zo'n dump een paar keer verkocht wordt en daarna alsnog kosteloos beschikbaar komt."

Scattered Secrets gebruikt volgens Van Beek twee methoden om datalekken op te sporen. "We houden hackingforums goed in de gaten. Daar zie je grote dumps al snel voorbijkomen, vaak als een kort levende download-link. De recente Facebook-scrape kwam bijvoorbeeld al vroeg voorbij, al hebben we daar niks mee gedaan omdat er geen wachtwoorden in stonden. De torrent kon iedereen echter binnen een uur of twee simpel binnenhalen." Een andere methode is om sites als Pastebin te monitoren, zegt hij. "We hebben daar een paar scrapers op draaien. Als je daar wat zoektermen op loslaat filtert dat bijvoorbeeld op bepaalde types hashes. De kans is groot dat daar een hashbestand uit komt. Vaak is dat een soort preview, bijvoorbeeld met honderd of duizend voorbeelden, maar soms gaat het om complete datadumps die je vanzelf tegenkomt."

En Have I Been Pwned, de bekendste lekdatabase? Troy Hunt heeft geen structurele aanpak voor het opsporen van datalekken. Hij krijgt ze regelmatig binnen van beveiligingsonderzoekers, waarbij hij profiteert van de bekende naam die hij inmiddels in de securitywereld is. Ook vindt hij ze regelmatig zelf op internet.

Authenticatie

Voor datalekdatabases maakt het niet per se uit of bronnen authentiek zijn, al proberen de diensten soms wel de authenticiteit te verifiëren. Troy Hunt vertelde al eerder dat hij daar verschillende methodes voor gebruikt. Hij vraagt het bijvoorbeeld na bij Have I Been Pwned-gebruikers, maar gebruikt ook tools zoals wachtwoordresetfuncties op websites of Mailinator. Van Beek erkent dat verificatie moeilijk is, maar het kan soms wel. Zo kunnen sommige gebruikers een specifiek e-mailadres gebruiken voor een bepaalde dienst. Dat gebeurde bij het datalek van AlleKabels, waarvan RTL Nieuws ontdekte dat aanvankelijk alleen gebruikers met een This email address is being protected from spambots. You need JavaScript enabled to view it. een waarschuwing hadden gekregen. Zulke gegevens zijn een goede indicatie waar een datalek vandaan komt.

Allekabels_lek

Maar volgens Van Beek is het helemaal niet altijd nodig om zeker te weten of een datalek authentiek is. "Ook als het niet klopt, kunnen de data nog steeds een risico zijn voor klanten. Als je kijkt naar het dreigingsmodel is het grootste gevaar voor de meeste bedrijven credential stuffing, dus het hergebruiken van veel wachtwoorden. Als de data op straat liggen en iemand kan ze kraken, dan zal hij dat proberen. Als het werkt, werkt het, en of de bron dan authentiek is of niet is voor een klant niet zo belangrijk." In sommige gevallen, zegt Van Beek, is het duidelijk dat er een datalek heeft plaatsgevonden. Zoals bij LinkedIn, dat zelf toegaf dat het in 2016 was gehackt. "Maar kijk naar zo'n geval als het datalek bij Allekabels: daarbij was lange tijd onduidelijk wat er nou precies was gebeurd."

Zoals Jeroen van Beek van Scattered Secrets al eerder zei, bieden e-mailadressen zonder context, of in ieder geval zonder bijbehorende wachtwoorden, niet zoveel informatie. Daarom zoeken veel breachdatabases ook naar de bijbehorende wachtwoorden bij datalekken. Dat is niet altijd even makkelijk. Het gebeurt slechts in zeldzame gevallen dat wachtwoorden in plaintext zijn te vinden. De meeste wachtwoorden moeten eerst worden achterhaald. Of zoals Van Beek het zegt: "Je moet wachtwoorden vinden, maar ook kijken of ze kraakbaar zijn."

Hashes kraken

De meeste wachtwoorden in databases worden gehasht, en daarom is het nodig ze eerst te kunnen kraken. Scattered Secrets kwam twee jaar geleden in de bekendheid toen het de wachtwoorden van een sekswerkersforum wist te kraken. Het ging om wachtwoorden die met MD5 waren gehasht, een algoritme dat al jaren als zwak wordt beschouwd.

'In een set van duizend wachtwoorden zit altijd wel een 123456'De eerste stap is om te kijken of er überhaupt wel e-mailadressen in een dump zitten. Van Beek: "Dat is vaak het geval, maar soms ook niet. Dan gaat het om gebruikersnamen waarmee iemand niet uniek is te identificeren." Daarna checkt Van Beek of er een hash in zit, en de belangrijkste stap is dat je moet uitzoeken welke vorm van welk hashalgoritme in de eerste plaats is gebruikt. Dat is direct een uitdaging, zegt Van Beek. "Je hebt veel verschillende soorten hashes. Neem MD5, daar komt een hash van 32 hexidecimale tekens uit rollen. Maar als je iets twee of drie of tien keer hasht met MD5, blijft die hash zo groot. Daarnaast kun je te maken hebben met salts, of met peppers waarmee het wachtwoord langer kan worden gemaakt vóór het werd gehasht ... Er zijn veel opties."

De manier om te achterhalen met welke hash wachtwoorden in een datadump zijn versleuteld, is aannames doen. Van Beek pakt daarvoor een dataset van bijvoorbeeld een paar duizend hashes uit de dump, en veelgebruikte wachtwoorden zoals 'password' of '123456'. "Vervolgens laat je die wachtwoorden met verschillende smaken van potentieel gebruikte hash-algortimes los op de aangetroffen hashes en kijk je of er iets wordt gekraakt. Zo ja, dan weet je exact welk algoritme gebruikt is en kun je aan de slag met de volledige dataset."

Servercode online

Als websites een salt toevoegen aan een wachtwoordhash kan het lastig zijn die te ontdekken. "Soms heb je geluk en zie je dat het om een sql-database gaat waar dan bijvoorbeeld een kolom met 'salts' in zit", zegt Van Beek. "Maar vaak weet je zoiets niet. Bij de Dropbox-hack bijvoorbeeld, was een groot gedeelte van de wachtwoorden gehasht met SHA-1, maar omdat de salt er niet bij zat, waren deze niet te kraken. Bcrypt kraken verloopt, in tegenstelling tot veel oudere algoritmes, traag op videokaarten." In sommige gevallen is tijd de vriend van de kraker. "Soms zijn er aanvallers die naast data ook de applicatiecode van de server hebben gehackt. Als je forums in de gaten houdt zie je soms een paar maanden later die code opduiken. Je kunt daarmee reverse-engineeren wat het gebruikte algoritme en de salt is."

Voor het kraken zelf gebruikt Scattered Secrets eigen hardware. Die maakt deels gebruik van cpu's en gpu's, met software zoals John the Ripper of Hashcat, maar unieker is dat de dienst vooral fpga's gebruikt. "De laatste jaren wordt bcrypt steeds populairder als hashingalgoritme voor wachtwoorden", zegt hij. Bcrypt beschermt vooral goed tegen bruteforce-aanvallen, en dat werkt dus niet zo goed op videokaarten. "Met field-programmable gate arrays kunnen we dat toch op een redelijk tempo doen." Bcrypt, maar ook andere moderne hashingalgoritmes zoals scrypt en Argon2, zijn er bewust op gemaakt om aanvallen met gpu's moeilijker te maken. Fpga's zijn volgens Van Beek veel beter om Bcrypt-hashes te draaien. "De grap is dat er ooit een paar Russen waren die code hebben gemaakt om fpga's te gebruiken voor het kraken van wachtwoorden op Bitcoin mining-hardware. Inmiddels gebruiken miners andere hardware en komen hun fpga's daardoor beschikbaar op de markt. We hebben een paar jaar geleden een hoop van die bordjes gekocht."

Scattered Secrets fpga
De eigen hardware met fpga's die Scattered Secrets gebruikt om wachtwoordhashes te kraken.

Het nadeel ervan is dat de machines van Scattered Secrets behoorlijk groot zijn. "Als ik iets nieuws bouw, staat het een maandje of twee in m'n huis om te testen of het goed werkt. Daarna gaat het naar een aparte locatie. Dat moet ook wel, want sommige van onze rigs wegen wel veertig kilo en zijn lompe apparaten die flink in de weg staan." Daarnaast vreten ze ook stroom, zeker als ze dag en nacht hashes lopen te kraken, ondanks dat ze een stuk energiezuiniger zijn dan gpu's. Van Beek: "Het is een dure hobby, inderdaad."

Doorlopend proces

Het blijft een doorlopend proces om gestolen credentials in een database bij te houden. Een bedrijf dat zo'n dienst beheert kan er moeilijk een keer een paar miljoen wachtwoorden in inladen en het daarbij laten. Jeroen van Beek zegt dat ook Scattered Secrets daarom constant wordt bijgewerkt. "Ons doel is om die informatie zo actueel mogelijk te houden. Dat doen we op twee manieren. De meest voor de hand liggende is uiteraard om steeds nieuwe data te verzamelen. Wat ook interessant is, is dat oude data niet per definitie oninteressant zijn. Ook jarenoude datasets kunnen nog steeds nuttige informatie bevatten. Hij verwijst naar de LinkedIn-hack waarin wachtwoorden uit 2012 stonden. Van Beek kraakt er nog dagelijks wachtwoorden uit. "Veel mensen weten inmiddels wel dat 123456 geen goed wachtwoord is. Maar in plaats daarvan kiezen ze nu één ingewikkeld wachtwoord voor alle diensten die ze gebruiken. Die proberen we alsnog nog te kraken omdat dergelijke wachtwoorden vaak meer waarde hebben voor onze klanten." Veel wachtwoorden in de LinkedIn-database werden met SHA1 gehasht. Ruim 95% daarvan is door de jaren heen al gekraakt. "Dat is een hoog percentage, maar op meer dan 110 miljoen gelekte accounts betekent het dat er steeds vele miljoenen wachtwoorden zijn te kraken", zegt Van Beek. "En daar vinden we er elke maand nog duizenden tot tienduizenden van."

Bron: Tweaker.net