beveiligingsvraag bij vergeten password

Status
Niet open voor verdere reacties.

fsasfsas

Gebruiker
Lid geworden
11 sep 2006
Berichten
429
Dag

Ik ben een website aan het maken waar een inlog-procedure aan komt te hangen (MySQL database). Nu wordt vaak een optie geboden om een nieuw password aan te vragen/maken als het oude vergeten is. Een van de manieren om te verifiëren dat de aanvrager daadwerkelijk daartoe gerechtigd is, is via het stellen van beveiligingsvragen. Het is geen belangrijke site dus het is mijn bedoeling dit zo toegankelijk mogelijk te maken (vandaar beveiligingsvragen en geen pincodes of iets dergelijks) maar ik besef dat velen gelijke passwoorden gebruiken voor onbenullige sites maar ook belangrijke sites. Om die reden wil ik het wel goed dichttimmeren. Een groot lek kunnen de beveiligingsvragen vormen, heb ik begrepen. Veel van de antwoorden op dergelijke vragen zijn vrij eenvoudig via de social media te achterhalen. Ik heb met de autoriteit persoonsgegevens gebeld en het is toegestaan delen van het BSN nummer te gebruiken, zolang het echte nummer niet herleidbaar is. Ik had gedacht om bijvoorbeeld een vermenigvuldiging van de eerste twee en de laatste twee cijfers van het BSN als antwoord op een veiligheidsvraag te laten geven. Dit is bij mijn weten niet herleidbaar naar het BSN nummer, heeft duizenden antwoorden en is voor degene om wie het werkelijk gaat relatief eenvoudig te beantwoorden. Ziet iemand daar problemen mee of heeft iemand een beter idee?

groetjes, Anjo
 
Ik denk dat niemand zijn BSN-nummer zomaar invult, ook al geef je aan dit dit 'gehashed' wordt.

Misschien is een extra verificatie met SMS een idee?
Al dan wel optioneel per gebruiker.
 
Laatst bewerkt:
Ik denk dat niemand zijn BSN-nummer zomaar invult, ook al geef je aan dit dit 'gehashed' wordt.

Misschien is een extra verificatie met SMS een idee?

Uiteraard niet het volledige nummer. Delen daarvan, via een vermenigvuldiging. De gebruiker weet immers niet dat het gehashed wordt maar kan hier al aan zien dat het niet herleidbaar is tot het origineel.

Extra verificatie met SMS heb ik ook aan gedacht maar gaat dat niet mis als de smartphone waar ook de mail op binnen kan komen gestolen wordt? Nadeel van SMS vind ik ook weer dat telefoonnummer relatief eenvoudig wijzigt...BSN niet.

groetjes, Anjo
 
Op het moment dat ik iets in een veld type, kun jij er technisch gezien mee doen wat je wilt. Dat je vervolgens mijn een sommetje laat zien is niet spannend. In theorie zou je onzichtbaar allang een kopie hebben kunnen bewaren van mijn BSN.

Waarom niet via een e-mail een resetfunctie bieden. Werkt op de meeste sites prima.
 
Je moet de lat niet te hoog leggen voor de gebruiker. Weinig mensen zullen hun BSN-nummer kennen op opzoeken, ongeacht wat jij er mee doet.
En verder is een extra SMS i.c.m. met een mail echt we veilig hoor. Je geeft zelf wel aan dat een telefoon te stelen is, maar vaak worden die gestolen voor verkoop, en niet voor chantage of een gerichte wraakactie tegen iemand. Als een telefoon gestolen wordt is de kans groot dat deze binnen een dag gereset is en ge-exporterd is naar de oostblok-landen ;).

Ik zou zeggen: Kijk eens hoe Google en Yahoo dat bijvoorbeeld doen.
 
Je moet de lat niet te hoog leggen voor de gebruiker. Weinig mensen zullen hun BSN-nummer kennen op opzoeken, ongeacht wat jij er mee doet.
En verder is een extra SMS i.c.m. met een mail echt we veilig hoor. Je geeft zelf wel aan dat een telefoon te stelen is, maar vaak worden die gestolen voor verkoop, en niet voor chantage of een gerichte wraakactie tegen iemand. Als een telefoon gestolen wordt is de kans groot dat deze binnen een dag gereset is en ge-exporterd is naar de oostblok-landen ;).

Ik zou zeggen: Kijk eens hoe Google en Yahoo dat bijvoorbeeld doen.
Dag

Heb ik gedaan. Ik ben weliswaar een leek maar kom niet helemaal onbeslagen ten ijs. Ik zie de alternatieven, maar zoals ik hieronder ook schrijf zie ik het probleem niet bij gebruik van BSN. Ik heb niet het idee dat het BSN gebruik de lat hoog legt. Het lijkt me dat zo'n beetje iedereen dit nummer vrij eenvoudig kan vinden. het staat op rijbewijs, paspoord. ID en vast ook op van allerlei zorgpasjes. Daarom leek het me juist een laagdrempelige methode. Laagdrempeliger dan een SMS. Ik verwacht dat niet iedereen van de doelgroep SMS-jes kan ontvangen (slik. dat is echt zo). Wellicht een keuzemogelijkheid tussen deel van BSN of SMS?

groetjes, Anjo
 
Laatst bewerkt:
Op het moment dat ik iets in een veld type, kun jij er technisch gezien mee doen wat je wilt. Dat je vervolgens mijn een sommetje laat zien is niet spannend. In theorie zou je onzichtbaar allang een kopie hebben kunnen bewaren van mijn BSN..
ik vraag uiteraard niet het hele BSN nummer dus dat hoeft nergens ingevuld te worden. op geen enkel moment heb ik daar dus de beschikking over. ik vraag slechts om de uitkomst van die vermenigvuldiging, wat de gebruiker gewoon thuis kan uitvoeren met het BSN voor zijn/haar neus.

Waarom niet via een e-mail een resetfunctie bieden. Werkt op de meeste sites prima.
Een reset middels e-mail is voor zover ik begrepen heb ook niet erg veilig. Op het moment dat er een veiligheidsprobleem is, is vaak ook die mailfunctie gecompromitteerd.
En dat het kan met bijvoorbeeld een tweede kanaal zoals SMS of een ander email-adres (bv web-based, met een ander password) begrijp ik, maar ik vraag me oprecht af wat het probleem is met een deel van het BSN. Het lijkt me veilig, herhaalbaar, eenvoudig te reproduceren maar moeilijk te raden en ik zie het privacy-probleem niet want ik wil absoluut niet het hele nummer zien, slechts de uitkomst van een som die de gebruiker zelf kan maken met het BSN nummer voor zich. En de gebruiker ziet ook dat ik niet het BSN nummer krijg maar slechts een deel daarvan en dan nog gecodeerd ook. Uit een vermenigvuldigingsuitkomst die 3-4 digits beslaat zijn de factoren niet eenvoudig te herleiden. En dan nog is het slechts een deel van dat nummer, niet het hele nummer.
 
Wat voor site is het eigenlijk?
Een overheid-gerelateerde site? Want als ik mij zou registeren voor een site waarvoor ik geen BSN-code verwacht, en dat toch gevraagd wordt, dan klik ik snel weg, en ben je een klant kwijt. Hoe moet ik weten dat jij geen slechte dingen daarmee gaat doen? Dat jij het hashed weet jij, maar dat weet ik als bezoeker dus niet.
Ik ga tevens niet naar boven lopen op mijn portemonee te pakken en mijn ID-kaart op te zoeken.
En wat nu als iemand uit België komt?

Dat zijn de drempels waarmee je het gebruikers moeilijk maakt. Dus leg even uit wat voor site het is, en waarom je een BSN-nummer in dit opzicht zo belangrijk vindt.
 
Laatst bewerkt:
Het lijkt mij geen probleem als je bij de eerste aanmelding de naam koppelt aan de laatste 3 cijfers van het BSN nummer. Dit zie je wel vaker staan als *****123. Belangrijk hierbij is een limiet op het aantal foute inlogpogingen. Je zal in dit geval nooit de gehele BSN (8 of 9 cijfers) te weten komen. Ik zou met het invullen van deze 3 cijfers geen probleem hebben.
Laatste 3 cijfers van BSN: <input type="text" name="bsn" maxlength="3">

* ik zou geen vermenigvuldiging nemen want dan ontstaat de situatie dat aan anderen wordt gevraagd:
"jongens, hoeveel is 63 x 71".

** ik ben het met je eens dat iedereen (hoe dan ook) de BSN bij zich hoort te hebben.
 
Laatst bewerkt:
@php4u
Het is geen overheidsgerelateerde site en ik moet natuurlijk niet hebben dat mensen zich uit de voeten maken. Zouden mensen ook een site de rug toe keren die alleen maar om een deel van het BSN vraagt?
Van de andere kant wil ik ook niet dat gegevens op straat komen te liggen, gezien het feit dat velen hetzelfde wachtwoord gebruiken voor zowel onbenullige sites als belangrijke sites. Ook al beschouwt men deze site niet als erg belangrijk, met de gegevens kunnen wel andere wellicht belangrijkere dingen op straat komen te liggen. Ik snap dat je niet naar boven wilt lopen voor je ID kaart, maar ik wil juist niet naar boven lopen om mijn telefoon te halen (nee, die heb ik niet bij me). Overigens doet deze situatie zich alleen voor bij het aanmaken van het account en bij het wijzigen/resetten van password.
Ik heb overigens niet aan belgische inloggers gedacht maar ik veronderstel dat er ook in het buitenland een vergelijkbaar nummer is. Zou ik even op moeten zoeken. Maar ik zie het punt dat je maakt.

@bron
Ik dacht juist met een vermenigvuldiging mensen gerust te stellen maar ik zie nu inderdaad wat er dan kan gebeuren. En een limiet op inlogpogingen komt er zeker (en "trage reactie": om brute-force aanvallen af te slaan). Ik zou geen problemen hebben met het intikken van een deel van mijn BSN, jij ook niet begrijp ik uit je reactie maar wellicht anderen (PHP4u) wel.

Ik zal het nog eens laten bezinken allemaal. Misschien ben ik paranoïde en is SMS / email veiliger dan ik denk. Het verbaast me alleen echt dat er zo veel op internet rond gonst over het probleem fatsoenlijke beveiligingsvragen op te stellen terwijl ik het idee heb dat dat relatief eenvoudig kan met bv een BSN nummer (of in Amerika het SSN). Dat deed me vermoeden dat ik iets over het hoofd zag.
Ik heb echter nog steeds het idee dat ik niks over het hoofd zie.

met dank voor het meedenken

groetjes, Anjo
 
Ik durf te wedden dat je het te complex maakt, en en dat je er te complex over denkt.
In deze tijd van frauderen, phishingsites zijn veel mensen wantrouwig, en ik denk dat je met het vragen van een BSN-nummer het hun erg ongemakkelijk maakt, en dat veel mensen de boot afhouden, plus mijn eerder genoemde reden.
Dus a.u.b. geen BSN-nummer vragen, tenzij je minder gebruikers wilt hebben.

Een paar goede tips:
- Gebruik SSL (kan ook gratis met Let's Encryt)
- Vraag bij het aanmelden een sterk wachtwoord, en attendeer gebruiker erop dat deze uniek moet zijn met hun eigen gebruikte wachtwoorden. Jij kan hier verder geen invloed uit uitoefenen omdat je niet weet welke wachtwoorden iemand heeft
- Zorg dat je site goed beveiligd is tegen alle lekken, en laat het desnoods auditten door een externe partij.
- Beperk een inlog op account én IP op maximaal 3 inlogpogingen waarna je de boel blokkeert voor een tijdje
- Geef geen informatie of een wachtwoord of een gebruikersnaam fout is, maar toon gewoon een melding dat "één of beiden incorrect zijn"
- Bied gebruikers aan als optie om 2staps-autenticatie te gebruiken op hun account. Bijvoorbeeld met Google Authenticator.
- Laat gebruikers controle houden over hun inlogpogingen.
- Als je een telefoonnummer opslaat, vraag gebruikers regelmatig of dit nog klopt. Ze zullen je dankbaar zijn.
- Verstuur geen wachtwoorden per mail, en zorg ervoor dat bevestigings-URL's direct na het gebruiken inactief worden.
- Sla wachtwoorden niet op als md5() of sha1() maar gebruik password_hash() en password_verify(). Dat is zeer veilig te noemen tegenwoordig. Als je nog wel md5() of sha1() gebruikt. Verwijder deze hashes, en mail iedereen dat ze een nieuw wachtwoord moeten aanvragen welke jij dan via password_hash() omzet. Ga niet zomaar zelf de encryptie verbeteren door alles dubbel of vaker te hashen, want dan wordt het juist erg zwakker.

En onthoud dat 100% beveiliging niet bestaat!
 
Laatst bewerkt:
Ik durf te wedden dat je het te complex maakt, en en dat je er te complex over denkt.
Wellicht. Ik ben als vrijwilliger actief gewest bij een website die mensen helpt die het slachtoffer zijn geworden van malware. Dan word je vanzelf wel wat wantrouwend. Soms dacht ik echt bij mezelf: hoe dom kun je zijn. maar de realiteit is dus zo.

In deze tijd van frauderen, phishingsites zijn veel mensen wantrouwig, en ik denk dat je met het vragen van een BSN-nummer het hun erg ongemakkelijk maakt, en dat veel mensen de boot afhouden, plus mijn eerder genoemde reden.
Dus a.u.b. geen BSN-nummer vragen, tenzij je minder gebruikers wilt hebben.
ik zou dus juist een site die naar een deel van het BSN vraagt (expliciet: een DEEL) wel vertrouwen.

Ik heb uit je onderstaande tips om ruimte te besparen de punten niet herhaald die al gebeuren of gaan gebeuren (zoals SSL)

Een paar goede tips:
- Zorg dat je site goed beveiligd is tegen alle lekken, en laat het desnoods auditten door een externe partij.
Dat eerste probeer ik zoveel mogelijk met de (beperkte) kennis die ik heb. De hele code (php) is doorspekt met afvangen van mogelijke errors en vervolgens exit(); En dat tweede ben ik zeker van plan.

- Bied gebruikers aan als optie om 2staps-autenticatie te gebruiken op hun account. Bijvoorbeeld met Google Authenticator.
heb ik aan gedacht. Wist nog niet. Feit dat je het noemt maakt het wel belangrijker in mijn ogen

- Laat gebruikers controle houden over hun inlogpogingen.
deze snap ik niet

En onthoud dat 100% beveiliging niet bestaat!
Die illusie heb ik niet.

groetjes, Anjo
 
Wellicht. Ik ben als vrijwilliger actief gewest bij een website die mensen helpt die het slachtoffer zijn geworden van malware. Dan word je vanzelf wel wat wantrouwend. Soms dacht ik echt bij mezelf: hoe dom kun je zijn. maar de realiteit is dus zo.

ik zou dus juist een site die naar een deel van het BSN vraagt (expliciet: een DEEL) wel vertrouwen.
Het is gewoon te complex en onnodig, en je hebt altijd mensen die niet weten wat je ermee doet. Maak het gewoon NIET te moeilijk voor iedereen. Met inachtneming van mijn tips heb je al veiligheid zat!

Dat eerste probeer ik zoveel mogelijk met de (beperkte) kennis die ik heb. De hele code (php) is doorspekt met afvangen van mogelijke errors en vervolgens exit(); En dat tweede ben ik zeker van plan.
Waarom exit()? Zorg voor goede exceptions of mooie afhandelingen met if-else, maar een site moet nooit zomaar stoppen als er wat fout gaat.
Jij wordt op de zaak toch na een simpel foutje toch ook niet de deur gewezen? Zorg voor goede afhandeling in je code!

heb ik aan gedacht. Wist nog niet. Feit dat je het noemt maakt het wel belangrijker in mijn ogen
Mooi :)

deze snap ik niet
Geef je bezoekers een overzicht met openstaande inlogsessies op hun account. En laat hun die eventueel netjes afsluiten.
Het is vervelend als iemand op zijn werk is ingelogd op je site, en jij gaat naar huis, terwijl een collega opeens achter je werk-computer duikt en op die site gaat rommelen in jouw account, waarna jij je bedenkt dat je inlogsessie nog open staat en dus machteloos staat, tenzij je naar je werk terug wilt rijden om je daar uit te loggen.

Maar echt, geloof me! Een BSN-nummer vragen is echt onnodig. Er zijn veel gebruiksvriendelijke manieren.
Maka het gebruikers niet te lastig, maar juist makkelijk, maar niet té makkelijk!

Als iemand zijn wachtwoord wilt wijzigen kan je prima een mail sturen met een bevestigingscode die kort geldig is. Waarna je de gebruiker een nieuw wachtwoord laat bedenken. Als er een telefoonnummer is ingevuld, stuur je ook nog een code met SMS of ga je over op de 2traps-authenticatie om diegene te identificeren

Veilig zat, en de ID-kaart/paspoort kan in de portefeuille blijven omdat je nu een telefoonnummer hebt en een secret-key voor de 2traps-authenticatie als identificatie. :)
 
Laatst bewerkt:
Waarom exit()? Zorg voor goede exceptions of mooie afhandelingen met if-else, maar een site moet nooit zomaar stoppen als er wat fout gaat.
het is ook niet "zomaar" exit. De exit is een zekerheid voor mezelf die op het eind van de if. Ik doe het om een else te voorkomen omdat je na veel if-else zo ontzettend genest zit. functies maken. Ik weet het....
ik zal de code eens herzien. ik dacht netjes bezig te zijn maar blijkbaar is dat niet het geval.
De gebruiker wordt voorafgaand aan de exit naar de homepage gezet. Soms met een mededeling waarom maar soms ook niet juist om te voorkomen dat je teveel informatie weggeeft met de foutmeldingen.


Geef je bezoekers een overzicht met openstaande inlogsessies op hun account. En laat hun die eventueel netjes afsluiten.
daar had ik helemaal niet aan gedacht...


Veilig zat, en de ID-kaart/paspoort kan in de portefeulle blijven. :)
je zult ongetwijfeld gelijk hebben maar ik vind de hele inlog-password procedure eigenlijk gammel. Maar ja, zoals je ook noemt: een alternatief is al snel gebruikersonvriendelijker.
dank voor het meedenken.

groetjes, Anjo
 
Wat is er gammel aan dan?

Opsich is er zelfs niks met enkel een username en een password. De gebruiker moet gewoon zorgen dat hij veilig met die gegevens om gaat en daar kan je hem prima bij helpen:
- SMS-verificatie
- 2-traps authenticatie
- en als hij dat niet wilt, en het is een site met gevoelige data, dan kan je zelfs de sessietijd laag instellen zodat er snel weer automatisch uitgelogd is.


Maar zomaar een BSN-nummer vragen op een onbekende site is gewoon vragen om wantrouwigheid. Bij DigiD weet iedereen wat het is dankzij de duur betaalde informatiecampagnes en Postbus 51. Alleen mensen die het echt nodig hebben en dat kunnen uitleggen, die krijgen mijn BSN-nummer. En ik ben niet de enige die er zo over denkt.

Google, Yahoo, Microsoft, Facebook, Twitter hebben ook zeer veilige inlogsystemen en daar hoor ik ze ook niet over BSN-nummers. En waarom? Juist.......... :)
 
Laatst bewerkt:
Google, Yahoo, Microsoft, Facebook, Twitter hebben ook zeer veilige inlogsystemen en daar hoor ik ze ook niet over BSN-nummers. En waarom? Juist.......... :)
met die vraag was ik dus deze post gestart. Waarom? Ik begrijp uit je antwoord dat niet iedereen er happig op is om (een deel van) zijn BSN af te staan. Ik begrijp dus niet waarom (met een deel van een BSN begin je helemaal niks) maar als dat mensen wegjaagt dan zie ik ook wel in dat dat niet de beste weg is. Overigens zijn de voorbeelden die je hier noemt erg internationaal georiënteerd, wat het een stuk complexer maakt om een uniek nummer te gebruiken. Als het wereldwijd moet werken dan acht ik de kans groot dat je niet zoiets kunt gebruiken want ik neem aan dat er wel meerdere landen zijn die een dergelijk (of vergelijkbaar) uniek nummer niet hebben.

Hoe dan ook, ik ben het met je eens dat de weerzin ertegen een goede reden is het niet te gebruiken maar ik begrijp die weerzin niet. velen geven zonder enig probleem hun paspoort voor een kopie aan een hotel. Zonder het BSN af te schermen. Maar als die weerzin er bij sommigen is heb ik m maar te accepteren en kan ik er beter niet mee werken. Dat zie ik. Maar ik zie echt nog steeds niet waarom het geen goede methode zou zijn.
Overigens is me ooit door een beveiliger de toegang tot een gebouw ontzegd omdat ik weigerde mijn paspoort af te geven...

groetjes, Anjo
 
Ik denk dat je het topic even helemaal door moet lezen, want ik heb toch echt wat goede argumenten gegeven waarom een BSN-nummer weinig zin heeft.
 
Ik heb je argumenten gelezen hoor. maar ik voel ze zelf niet. Maar ik begrijp dat je niet altijd zomaar van jezelf uit moet gaan.

Het belangrijkste argument (je hebt er meer gegeven maar die is bij mij als belangrijkste blijven hangen) is de weerzin die her en der bestaat. Ik heb die zelf niet maar dat is natuurlijk niet iets waar je mensen mee wilt opzadelen.
Ik zal zeker je tips meenemen en gebruiken.

groetjes, Anjo
 
De meest voorkomende mogelijkheden zijn denk ik wel genoemd. Mijn conclusie: alles heeft voor- en nadelen. Des te belangrijker en/of gevoeliger de informatie, des te zwaarder de beveiliging (denk aan online bankieren). Fraude is en zal blijven bestaan, dat haal je niet weg met sms, bsn of een andere vorm.

Er zit een frictie tussen goede beveiliging en gebruiksvriendelijke beveiliging (vergelijk met captcha).

Aangezien in bedrijven veel mensen een wachtwoorden lijstje in de bovenste lade hebben liggen (ervaring als systeembeheerder) heeft een ingewikkelde procedure geen nut. SMS is ook onveilig omdat veel mensen hun telefoon op het bureau laten liggen als ze even naar de plee gaan. Om eerlijk te zijn vind ik de BSN (deel ervan) een oplossing die ik nog niet eerder heb gehoord en zeker het overwegen waard. Omdat "wachtwoord vergeten" minder vaak voorkomt zou het een aardige procedure kunnen zijn. Bij het opgeven bij de aanmelding kan je tekstueel aangeven dat de 3 bsn cijfers alleen dienen voor het herstellen van het wachtwoord. Iemand die het niet invult heeft dan pech (maar dit geldt ook voor het telef.nr. bij de SMS oplossing)
 
Stof tot nadenken :)
Code:
--- Stap 1 ---------------------------------

Uw gebruikersnaam is NIET uw emailadres.

Uw gebruikersnaam  __________  [VOLGENDE]

--- Stap 2 ---------------------------------

Bevestig met minimaal 2 controle codes

Laatste 3 cijfers van uw BSN    _____
Code die u ontvangt per email   _____
Code die u ontvangt per SMS     _____

[BEVESTIGEN]

--- Stap 3 ---------------------------------

Wijzig uw wachtwoord. Gebruik minimaal
4 kleine letters, 2 hoofdletters en 2 cijfers

Uw nieuwe wachtwoord    ________
Herhaal dit wachtwoord  ________

[OPSLAAN]
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan