Is een maximale wachtwoordlengte in strijd met de AVG?

Een lezer vroeg me:

Ik kom nog geregeld bedrijven en verenigingen tegen die wachtwoorden van maximaal 12 karakters accepteren. Als je ze hierop aanspreekt zeggen ze dat dit voldoende is of het later zal worden aangepast. Maar de AVG verplicht dat er “passende technische én organisatorische maatregelen” worden genomen om een adequaat beveiligingsniveau te waarborgen. Twaalf karakters is tegenwoordige echt niet meer adequaat. Handelen de instanties die wachtwoorden van maximaal 12 karakters accepteren in strijd met de AVG?

Daar lijkt het wel op. Een goed wachtwoord is een van de belangrijkste technische beveiligingsmaatregelen die je kunt nemen. In de praktijk wordt vaak binnengedrongen met een geraden wachtwoord, dus hoe sterker je dat wachtwoord tegen gokken kunt maken, hoe beter.

De AVG zegt zelf niet precies aan welke eisen een wachtwoord moet voldoen, alleen dus dat de maatregelen die je neemt “passend” moeten zijn gezien de risico’s, de stand der techniek en andere relevante factoren. Kort gezegd: je moet kunnen verantwoorden waarom je de keuzes maakte die je maakte, en waarom het niet sterker hoefde dan het was.

In mijn ervaring wordt zelden echt nagedacht over wachtwoordbeleid, met name als het gaat om de lengte van wachtwoorden. Er is het nodige onderzoek gedaan naar bijvoorbeeld hoe vaak een wachtwoord gewijzigd moet worden (nooit, als het maar sterk is) of hoe sterk ze moeten zijn (12 karakters is wel het minimum inderdaad) maar je ziet dat niet snel terug in bestaande implementaties van password-based access control. En dat is jammer.

Ik zou dus zelf geneigd zijn om te zeggen, wie een maximale lengte op wachtwoorden afdwingt zit fout onder de AVG, tenzij hij een heel goed verhaal heeft waarom het nódig is dat het wachtwoord niet langer is. Ik kan me dat verhaal niet voorstellen, maar goed, ik probeer een open mind te houden hierbij. “Onze software werkt nu eenmaal zo” of “Wij zijn nog nooit gehackt” is natuurlijk géén goed verhaal.

Arnoud

32 reacties

  1. En als het antwoord is ‘dat is het maximale formaat van het veld in onze database’ zou ik heel hard wegrennen, want dan wordt de belangrijkste regel op het gebruik van wachtwoorden gebroken: sla het wachtwoord zelf nooit op, alleen maar de controle hash! Anders ligt dat wachtwoord open en bloot op straat als de partij in kwestie ooit gehacked wordt.

    1. Mee eens. Een hash heeft een vaste lengte en is dus handiger op te slaan. Dus een wachtwoord van 100 of meer tekens is nog steeds geen probleem als je alleen een hash opslaat…

      Het probleem is alleen dat je ook een goed hash algoritme moet gebruiken, omdat een hacker die de hash bemachtigt sowieso met een brute-force attack kan proberen uit te zoeken welk wachtwoord er nodig is om op die hash waarde uit te komen. Bij voorkeur dus een algoritme dat lekker traag is en veel CPU tijd nodig heeft omdat dit de tijd beïnvloedt die een brute-force aanval nodig heeft. Maar ja, teveel “experts” kiezen juist voor een snel algoritme, waardoor het weer makkelijker te kraken wordt.

      Wat velen daarnaast vergeten is hoeveel gebruikers een wachtwoord uiteindelijk hergebruiken voor honderden verschillende sites. Dan zit je b.v. op Facebook, Twitter en een hobby-forum en een hacker bemachtigd de database van dat hobby-forum. Geen nood, want alles is gehasht, toch? Tja, jammer alleen dat ze dan met een groot botnet aan de slag gaan om wachtwoorden te berekenen op basis van die hashes. En de wachtwoorden die ze vinden worden daarna gebruikt om te proberen in te loggen op de andere, beter beveiligde websites.

      Kortom, iedereen moet zich bewust zijn van de beveiliging…

      1. “Wat velen daarnaast vergeten is hoeveel gebruikers een wachtwoord uiteindelijk hergebruiken voor honderden verschillende sites. Dan zit je b.v. op Facebook, Twitter en een hobby-forum en een hacker bemachtigd de database van dat hobby-forum. Geen nood, want alles is gehasht, toch?”

        Hangt ook van de verdere maatregelen af die je als gebruiker neemt. Als ik een zwak Twitter-wachtwoord heb of dat ik hetzelfde wachtwoord gebruik als op Instagram, maar ik op beide platformen wel 2FA heb ingeschakeld, dan wordt het al een stuk moeilijker om toegang te krijgen als mijn wachtwoord wordt onderschept.

  2. Even buiten het avg verhaal om, puur technisch gezien hoeft een 24 delig wachtwoord helemaal niet sterker te zijn dan een 12 delig. Het is sterk afhankelijk van de karakterset die je gebruikt in het wachtwoord. x tot de macht y…

    1. Zelfs met alleen de kleine letters (26 tekens) heb je 4,7 bit entropie per teken, en in een wachtwoord van 12 tekens dus 56bits entropy. Maar dan moet je wel volledig random wachtwoorden gebruiken.

      In de praktijk gebruiken mensen wachtwoorden die ongeveer uitspreekbaar zijn, met een aantal voorspelbare aanpasssignen (gehe1m, pa$$w0rd). Dat beperkt het aantal mogelijke tekens per positie enorm, en dus is een langere wachtwoordlengte nodig om een sterkte te halen die vergelijkbaar is met 12 volledig random tekens.

      Volledig random tekens zijn niet bruikbaar omdat mensen die niet kunnen onthouden. En dan dus gaan opschrijven op een post-it naast de monitor. Of ze kunnen geen password manager gebruiken omdat ze te vaak op een andere machine inloggen. Of het gaat om het wachtwoord van de password manager.

      1. Ik denk eigenlijk dat als je echt wil dat je gebruikers sterke wachtwoorden hebben, je ze niet zelf moet laten kiezen. Maak een woordenlijst met, zeg, 1000 makkelijke en korte woorden, en plak er 4 of 5 aan elkaar, en vertel je gebruiker ‘dat is je wachtwoord. punt.’

      2. Wat is er fout aan het in een notitieboekje opschrijven van al die wachtwoorden voor al die websites waar je tegenwoordig een wachtwoord nodig hebt en dat boekje thuis in een bureaula hebben liggen? Ik neem aan dat je een slot op voor- en achterdeur hebt en niet zomaar iedereen binnen laat. (Ik zou wachtwoorden voor lokale inlog op je PC juist niet in het boekje zetten.)

        Bruce Schneier heeft (vrij vertaald) ooit gezegd: We zijn gewend om waardevolle stukjes papier in onze portemonnee mee te nemen, daar kan best een papiertje met wachtwoorden bij.

        1. Ik heb in de boekenkast een boek staan waarin een blaadje zit met al mijn wachtwoorden behalve die van mijn PC, NAS en wachtwoord manager. Het blaadje met die laatste wachtwoorden en de naam van het boek zit in mijn kluis, waar je zonder zowel een sleutel als de code niet in komt. Een aantal mensen in de familie kent de code van mijn kluis, maar heeft niet de sleutel.

          Mocht er met mij iets gebeuren, dan kunnen mijn nabestaanden overal bij. Na het overlijden van mijn vader zijn er zaken verloren gegaan omdat dit niet goed was geregeld, dat probleem wil ik mijn nabestaanden bsparen.

      3. “Of ze kunnen geen password manager gebruiken omdat ze te vaak op een andere machine inloggen.”

        Dan gebruik je toch de webinterface? Ik gebruik Bitwarden en als ik op een onbekende machine moet inloggen, kan ik altijd naar vault.bitwarden.com gaan en inloggen. Sommige mensen maken het moeilijker dan het is omdat ze gewoon te lui zijn…

    2. Het is misschien counter intuitive, maar het aantal mogelijke wachtwoorden neemt juist sneller toe met wachtwoordlengte dan met aantal symbolen in het alfabet: x^(n+1) > (x+1)^n (Bijvoorbeeld 26^11 > 27^10)

      Het heeft daarom meer zin een langer wachtwoord te maken dan uit meer symbolen te kunnen kiezen (al helemaal omdat de gemiddelde mens die extra moeilijke symbolen helemaal niet gebruikt, want je moet ze wel allemaal weten en kunnen typen natuurlijk). Daarnaast is het net zo belangrijk een wachtwoord makkelijk te kunnen onthouden.

      In praktijk zijn wachtwoordregels vaak ZO restrictief dat de gemiddelde gebruiker geen puf meer heeft om nog iets origineels te bedenken en dan wordt het vaak een woord met $ en 1 erachter of iets dergelijks. Werkt compleet averechts.

      De meest effectieve “strong password” rule die je kunt hebben is een minimum wachtwoordlengte afdwingen van ergens rond de 16, en geen maximum. De gebruiker kan dan het beste een reeks random woorden achter elkaar plakken, of indien gewenst een acronym van een rare zin, of iets anders dat lang is en makkelijk te onthouden.

      Zie ook xkcd “Password Strength”

      1. x^(n+1) > (x+1)^n geldt alleen voor n < x ln(x) (althans, dan is de afgeleide naar n groter dan die naar x); dus bij kleine alfabetten (kleine x) of heel lange wachtwoorden (grote n) kun je beter het alfabet verhogen. In de praktijk heb je natuurlijk wel gelijk, omdat praktisch altijd x>=26 en n<26 ln(26) =84.

  3. Ik mis context… Voor wat betreft de bedrijven: er staat niet expliciet dat het gaat om wachtwoorden waarmee data wordt beveiligd waar de AVG iets over heeft te zeggen. En als het gaat om een systeem wat alleen via een intranet bereikbaar is en in geen geval extern via ‘internet’, dan is mogelijk toch al per definitie aan de AVG voldaan ongeacht de sterkte van het wachtwoord?

  4. Op basis van alleen, “mag maar 12 karakters zijn” kun je hier niets over zeggen. Je zult ook moeten weten hoe het zit met detectie van mislukte pogingen en hoe snel de boel op slot gaat als het mis gaat. 12 random karakters en op slot na 3 mislukte pogingen dan heb je denk ik een afdoende beveiliging. 12 karakters en leef je tot in het oneindige uit dan niet. 12 karakters en detectie dat er ineens vanuit 68 plekken op de wereld pogingen worden gedaan en op slot is ook een vorm van beveiliging. Waarbij je bij het op slot zetten ook weer een uitdaging hebt want toegankelijkheid is ook een onderdeel van de puzzel. Maar is inderdaad niet meer van deze tijd dat 12 karakters het maximum is. 🙂

  5. Ik zou dus zelf geneigd zijn om te zeggen, wie een maximale lengte op wachtwoorden afdwingt zit fout onder de AVG, tenzij hij een heel goed verhaal heeft waarom het nódig is dat het wachtwoord niet langer is.

    Vrij veel sites hebben een maximaal aantal tekens voor een wachtwoord. Meestal ligt die echter vrij hoog. Dat heeft meestal dan een technische reden.

    Indien de hash uitlekt wil je het “ontsleutelen” daarvan nog steeds heel moeilijk te maken. De aanval die en dan moet tegenhouden zijn dan brute-force aanvallen. Als je het wachtwoord goed wil opslaan wil je een zware hash-methode gebruiken om het ontsleutelen van een wachtwoord ook heel zwaar te maken. Maar zo’n zware hash-methode wordt nog zwaarder hoe langer het wachtwoord. Dus meestal is het handig om er toch een limiet op te zetten. In dat soort gevallen zie je dan bijvoorbeeld maximaal 100 tekens of 1024 tekens.

    1. Vrij veel sites hebben een maximaal aantal tekens voor een wachtwoord. Meestal ligt die echter vrij hoog. Dat heeft meestal dan een technische reden.

      Er zijn zelfs sites die een maximum hebben, en niet eens zo’n slecht maximum (16 tekens), maar die dat niet melden en bij een langer wachtwoord geen foutmelding geven maar het ingevoerde wachtwoord keihard afkappen bij het maximum aantal tekens. Bij het inloggen wordt het wachtwoord vervolgens niet afgekapt en krijg je bij het inloggen de melding dat je zojuist bij het aanmaken van een account geaccepteerde wachtwoord niet correct.

      Daar sta je dan met je passwordmanager met een gegenereerd complex wachtwoord van 20 of meer tekens dat het niet doet en geen enkele indicatie waarom.

  6. Overdrijven we hier niet een beetje? Ik heb “passende technische én organisatorische maatregelen” altijd geinterpreteerd als redelijke wachtwoordbescherming en sloten op de deuren.

    Ik denk niet dat het doel van de AVG is om een beveiligingsniveau op te leggen dat kan weerstaan aan beroepskriminelen die met grof geweld willen binnenkomen, maar aan normale mensen die hun nieuwsgierigheid willen bevredigen.

    (Als mensen/klanten graag een zeer lang en complex wachtwoord willen hebben, is het inderdaad niet correct dat dat tot 12 tekens beperkt wordt, maar om nu te zeggen dat dat in strijd is met de AVG vind ik wat ver gaan)

    1. Wat ‘redelijk’ is voor je kantoordeur is niet hetzelfde als voor je datenbak die via het internet toegankelijk is. Bij de laatste moet je rekening houden met wat waarschijnlijk zal gebeuren, en je hebt 100% kans dat onbekenden over de hele wereld direct je website gaan benaderen om wachtwoorden lukraak uit te proberen (en die dat ook doen, kijk maar eens in je serverlog).

      1. Ja, enerzijds heb je een punt, maar anderzijds: die onbekenden van over de hele wereld zijn wel degelijk de beroepscriminelen waar ik het over had. Het is niet redelijk om van een [klein] bedrijf te verwachten een beveilingsniveau te hanteren dat dergelijke mensen buiten kan houden (en al helemaal niet ‘om AVG-redenen’, dan kan ik nog wel betere redenen bedenken).

        Er zijn limieten. Met ‘brute force’, als die maar groot genoeg is, komt men toch wel je kantoor binnen of je server. En als ze een geweer tegen mijn hoofd houden krijgen ze het wachtwoord ook, AVG of niet.

    2. Help

      Ga er maar vanuit dat “passend” heel wat verder gaat. Je zal script kiddies echt wel moeten buiten houden en ook de gemiddelde beroepscrimineel. Dat de NSA binnengeraakt, zal je wel mee wegkomen, maar die gaan het ook niet publiek maken 😉

      Bovendien zal het “passend” bekeken worden eens er een datalek is en bewijs dan maar dat de beveiliging “passend” was.

      Een andere optie is er een verzekering op nemen en aan de eisen van de verzekeraar voldoen, maar dat laatste kan tegenvallen.

  7. Als de toegang tot de server verder adequaat beveiligd is en het wachtwoordmechanisme geen brute forcing toelaat van het wachtwoord is een kort wachtwoord voldoende veilig. Een betaalpas wordt bijvoorbeeld maar met een 4-cijferige pin beveiligd maar dat is maar 1 onderdeel van de gelaagde bescherming van het pinbetalen in Nederland.

    1. “Ook leuk” is dat biometrische gegevens door politie en justitie niet hetzelfde behandeld worden als wachtwoorden. Kort gezegd mag de politie wel je telefoon voor je neus houden zodat deze ontgrendeld, maar niet jou dwingen je wachtwoord af te geven.

  8. Bedrijfstechnisch (en met de kanttekening dat lange wachtwoorden beter zijn):

    1) Er is een maximale lengte nodig, anders is een DoS mogelijk (een wachtwoord zou 500MB groot kunnen zijn) of raakt de server in de war en kapt de request af. Oneindig lange wachtwoorden is ook een security issue.

    2) Er is een trade-off tussen gebruiksvriendelijkheid en security. Stel je staat toe dat iemand een wachtwoord van 128 characters instelt, dan is deze persoon blij, maar ondertussen krijgt de helpdesk 10 mensen per dag die hun wachtwoord zijn vergeten omdat het niet op een post-it paste.

    3) Brute-forcing valt vaak buiten de scope van een security audit (en buiten de scope van een bug bounty). Paswoordlengte maakt niet zo veel uit, als je het account tijdelijk op non-actief zet, bij 3 keer foutief inloggen. Een beetje zoals de 4 cijfers van je pincode. Als je de database hebt, zeer gemakkelijk te kraken, heb je slechts de pas (vergelijk met gebruikersnaam), dan heb je 3/9999 kans de correcte pincode in te voeren, alvorens de pas geblokkeerd wordt.

    Dat gezegd hebbende, OWASP is de authoriteit op het gebied van web security, en ze verbiedt het instellen van een maximale lengte niet. Ze stelt slechts:

    Maximum password length should not be set too low, as it will prevent users from creating passphrases. Typical maximum length is 128 characters.

    Ik zou dan ook zeggen dat een maximale wachtwoordlengte niet in strijd is met de AVG, tenzij deze, marktgenomen, veels te laag is ingesteld (lager dan 20). Anders zijn de “passende” maatregelingen onder de AVG strenger dan de best practices van OWASP. Of OWASP is passend, of de AVG moet met heldere checklists komen en verduidelijken dat “passend” heel streng geinterpreteerd wordt.

    1. 3/9999 kans 0000 1111 … 9999 zijn niet mogelijk. Als men zelf de pincode mag kiezen, dan is de top 50 genoeg voor een ~50% inlogkans. Dan nog: een pincode is “passend” om geld op te nemen met een pas. En dat zijn slechts 4 lage entropie cijfers.

  9. Waarom is: “Zo werkt de software nu eenmaal”, geen goed verhaal?

    Voor het MKB of een vereniging lijkt het me verstandig om voor online diensten en de beveiliging daarvan, iets af te nemen van een bedrijf met expertise op dat gebied. En dan iets wat veilig genoeg is voor je toepassing. Als je een betrouwbare leverancier hebt, met een goede reputatie / certificering etc., die jou zwart-op-wit garandeert dat hun product veilig genoeg is voor je toepassing, moet je dan zelf nog naar je klanten toe kunnen onderbouwen waarom bepaalde keuzes, zoals wachtwoordlengte, gemaakt zijn?

    Max. 12 tekens slaat nu inderdaad nergens op, maar dat is met zoveel dingen in de wereld. Klagen daarover vind ik nogal muggenzifterij eigenlijk. Neem dan gewoon je eigen verantwoordelijkheid en verzin een sterk wachtwoord met 12 tekens of ga naar een concurrent als je je hier echt zo druk over maakt.

      1. Stel we nemen een gemiddelde webshopje, die gebruik maakt van een payment provider, dan ben ik van mening dat die zich aan de wet houdt als ze dit doen. Natuurlijk is het irritant als je password manager standaard langere wachtwoorden genereert en je voor die sites ze met de hand moet aanpassen. Erger ik me ook aan. Maar daarover klagen vind ik muggenzifterij en dat is zeker geen onzin.

        Ik denk dat Arnoud de AVG hierin teveel vanuit een technische invalshoek interpreteert en niet vanuit the big picture. De beveiliging moet adequaat zijn, staat in de AVG. Met 12 tekens kan een consument die dit belangrijk vindt, heus wel een zeer sterk wachtwoord bedenken. Uiteindelijk is het de keus voor het wachtwoord, die het sterk of zwak maakt en kan het maximum aantal tekens hoogstens een belemmering zijn als het erg laag ligt. Een maximum van twaalf is dat niet. Ik volg niet waarom bedrijven verplicht zouden zijn zich te verantwoorden over waarom ze niet voor een betere oplossing hebben gekozen. Dan had er wel iets gestaan als ”Zo veilig mogelijk, binnen ….”, toch?

        Met een knipoog: Natuurlijk heb je van die fanatiekelingen, die vinden dat ze verstand hebben van IT security en privacy en dat elk detail wat in hun ogen veiliger kan, direct aangepast moet worden. Wat ze niet onder ogen willen zien denk ik, is dat ze nogal een minderheid vormen, die een lange periode door niemand serieus zijn genomen. En door velen nog steeds niet. Dat was/is onterecht en daardoor is het goed dat ze in de AVG tegemoet zijn gekomen. Maar dat betekent niet dat ze nu ineens van iedereen kunnen verwachten, dat dit soort dingen direct de hoogste prioriteit hebben. Er zijn wat privacy betreft nog heel veel andere, vaak belangrijkere dingen, waar aan gewerkt moet worden. Vergeet niet dat het gewone werk ook nog door moet kunnen gaan… Of zullen we de toegang tot internet gaan verbieden voor alle bedrijven die nog niet alles op orde hebben. Ik hoop het niet, want dan zou alle communicatie met de belastingdienst ook weer via de post moeten…

        1. Bij “passende beveiligingsmaatregelen” hoort dat je bekijkt wat je te beveiligen hebt. Het is zo langzamerhand wel duidelijk dat een wachtwoordbeveiliging (ongeacht het maximaal toegestaan aantal tekens) maar een beperkte beveiliging biedt. Desondanks wordt het nog steeds gebruikt; en ik denk dat een correct geïmplementeerde wachtwoordbeveiliging voldoende is waar het gaat om de toegangsbescherming van normale persoonsgegevens van een persoon. (Inloggen bij een webwinkel om een factuur en bezorggegevens op te vragen.)

          Ik vind wachtwoordbeveiliging alleen onvoldoende is om personeel van de webwinkel toegang te geven tot alle gegevens van alle klanten of om bijzondere persoonsgegevens te beschermen. In deze gevallen zal er een extra controle moeten zijn; van toegang beperken tot specifieke PC’s (beheerstoegang alleen vanuit het bedrijf-LAN) tot gebruik van code generatoren, digitale sleutels of 2FA.

        2. De vraag is alleen: in hoeverre is “adequaat” ook adequaat?

          De AP vindt in ieder geval dat geen 2FA niet adequaat is: https://autoriteitpersoonsgegevens.nl/nl/nieuws/haga-beboet-voor-onvoldoende-interne-beveiliging-pati%C3%ABntendossiers “Bij een goede beveiliging hoort authenticatie waarbij ten minste twee factoren betrokken worden.”

          Dus de AP hanteert een strenge interpretatie van “adequaat” zoals genoemd in de AVG, zeker omdat men zegt dat 2FA vereist is om te spreken van “een goede beveiliging”.

          1. Het is contextafhankelijk. Voor medische dossiers vind ik 2FA ook wel zonder meer vereist om van “adequate beveiliging” te spreken, maar de administratie van een theatervereniging met 25 leden is volgens mij adequaat beveiligd met een wachtwoord van 12 tekens op een G-Suite account zonder 2FA.

Geef een reactie

Handige HTML: <a href=""> voor hyperlinks, <blockquote> om te citeren, <UL>/<OL> voor lijsten, en <em> en <strong> voor italics en vet.