image

BBC waarschuwt gebruikers voor wachtwoorden afkomstig uit datalekken

vrijdag 28 augustus 2020, 11:02 door Redactie, 7 reacties

Wie bij de BBC een account aanmaakt wordt voortaan gewaarschuwd wanneer er een wachtwoord wordt gekozen dat uit een bekend datalek afkomstig is. De Britse omroep maakt hiervoor gebruik van een dienst van datalekzoekmachine Have I Been Pwned.

Zodra gebruikers een BBC-account aanmaken en een wachtwoord kiezen wordt er een sha-1-hash van het wachtwoord gemaakt. Een prefix van vijf karakters van deze hash wordt naar Have I Been Pwned gestuurd. Vervolgens stuurt Have I Been Pwned een lijst terug met alle wachtwoordhashes die met de betreffende prefix beginnen. Hierna wordt de sha-1-hash die de gebruiker had opgegeven door de BBC vergeleken met deze lijst. Is er een match, dan krijgt de gebruiker een waarschuwing te zien.

"Onze eerste aanbeveling is om het opgegeven wachtwoord te wijzigen, en iets anders te kiezen. Als je het wachtwoord al ergens anders gebruikt, adviseren we je om het ook daar te wijzigen en ervoor te zorgen dat je voor elke website een ander wachtwoord gebruikt", zegt Marc Burrows van de BBC. De gebruikte database bevat 572 miljoen wachtwoordhashes. De BBC hoopt met de maatregel te voorkomen dat aanvallers met gelekte en hergebruikte wachtwoorden toegang tot de accounts van gebruikers krijgen.

Image

Reacties (7)
28-08-2020, 11:28 door Anoniem
Gehashed of niet, dit is niet zinnig.

A-Z + 0-9 = 36 tekens.

36 tot de macht 5 = 605 miljoen verschillende combinaties op basis van de eerste 5 digits.

Als de database 500 miljoen hashes bevat is de kans op collision op basis van de eerste 5 digits erg groot.
28-08-2020, 13:26 door Anoniem
Dus je noemt het niet zinnig omdat er een zeer kleine kans is op een false positive.

Als hier een false positive komt dan heeft niemand daar enige schade van. Terwijl je wel veel schade kunt voorkomen bij mensen die niet weten dat hun wachtwoord bekend is.

Blijkbaar hebben wij een ander idee van wat "zinnig" is.
28-08-2020, 13:28 door Anoniem
Door Anoniem: Gehashed of niet, dit is niet zinnig.

A-Z + 0-9 = 36 tekens.

36 tot de macht 5 = 605 miljoen verschillende combinaties op basis van de eerste 5 digits.

Als de database 500 miljoen hashes bevat is de kans op collision op basis van de eerste 5 digits erg groot.

Goed lezen, de eerste 5 worden verstuurd, daarna worden alle matches teruggestuurd. Dus alle hashes waarvan die eerste 5 overeenkomen. De BBC server heeft de complete hash van het wachtwoord en vergelijkt die met wat HIBP terug heeft gestuurd. Als een hash daarvan overeen komt met de ingegeven hash, dan hebben we een collision. Dat gaat dus over de volledige hash van 40 karakters. Dan kan je alsnog een collision hebben maar dat is zeldzaam.
28-08-2020, 14:21 door Anoniem
Door Anoniem: Gehashed of niet, dit is niet zinnig.

A-Z + 0-9 = 36 tekens.

36 tot de macht 5 = 605 miljoen verschillende combinaties op basis van de eerste 5 digits.

Als de database 500 miljoen hashes bevat is de kans op collision op basis van de eerste 5 digits erg groot.

Leesvoer: https://www.troyhunt.com/ive-just-launched-pwned-passwords-version-2/
Daar staat ook de uitleg van k-anonymity en waarom de kans op colisions niet hoger is dan een normale sha1 hash.
28-08-2020, 14:43 door Anoniem
Door Anoniem: Gehashed of niet, dit is niet zinnig.

A-Z + 0-9 = 36 tekens.

36 tot de macht 5 = 605 miljoen verschillende combinaties op basis van de eerste 5 digits.

Als de database 500 miljoen hashes bevat is de kans op collision op basis van de eerste 5 digits erg groot.

iets doorlezen. de controle wordt door BBC uitgevoerd op de volledige hash. Er wordt op basis van de eerste vijf waarden alleen een - kleine - subset van hashes opgehaald. Op deze manier kan worden voorkomen dat buiten BBC bekend wordt at een bepaald wachtwoord/hash nog steeds actief gebruikt wordt.
28-08-2020, 15:58 door Erik van Straten
Door Anoniem: A-Z + 0-9 = 36 tekens
Gebruikelijk is de hexadecimale representatie van hashes zoals SHA-1.

Dus A-F + 0-9 = 16 tekens. Dus 16^5 = ca. 1miljoen mogelijkheden. Het doel is veel collisions; de kans op weinig of geen collission is, bij het aantal records van haveibeenpwned.com (bijna 600 miljoen), erg klein.
28-08-2020, 18:46 door Anoniem
Door Anoniem: Gehashed of niet, dit is niet zinnig.

A-Z + 0-9 = 36 tekens.

36 tot de macht 5 = 605 miljoen verschillende combinaties op basis van de eerste 5 digits.

Als de database 500 miljoen hashes bevat is de kans op collision op basis van de eerste 5 digits erg groot.

Inderdaad, zoals al gesteld - goed lezen.

Je zou zou het kunnen zien als een 'key-value' lookup , waarbij je een wildcard query doet met de eerste vijf hex-digits.

Dus ala "select from HBIP where hash like 'a9bbf*' ' .

En dan krijg je een behapbaar aantal records terug- en doe je zelf de vergelijking met de vollledige hash van het wachtwoord.

Je ziet toch in de flow chart dat er bij een match op de prefix de suffix ook (-maar intern bij de BBC) vergeleken wordt ?

Met deze methode lekt de BBC geen bruikbare informatie naar HBIP (ze sturen maar een klein deel van de hash van gekozen wachtwoord ).
Zouden ze de hele hash sturen , dan krijg je een 100% antwoord of er een match is. Maar heb je ook de (hash van) al je wachtwoorden naar HBIP gestuurd, en dat wil je ook niet doen.

Maar het is wel genoeg om het aantal records dat matched en nader vergeleken moet worden tot hanteerbare aantallen te beperken.
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.