Spørgsmål:
Hvilke metoder kan bruges til at forhindre forkert indtastede brugernavne?
ymar
2014-04-07 03:51:32 UTC
view on stackexchange narkive permalink

I wanted to log on to my account on my bank's website. The account is protected by a number of security checks. The first one is what really amounts to a username, a confidential one. It's an 8-digit numeric passcode (given to me by the bank), after entering which I need also to enter some personal data and a password. Today, I was notified by the system that my passcode was locked out and that I had to contact the bank by phone. I did, and I was informed, after giving a fair amount of personal data to the person on the phone in order to verify my identity, that my account was now all good and I could log on. They also told me that was probably because someone used my passcode by mistake and, being unable to enter the correct information later on, locked my passcode out. I'm quite confident that that was indeed the case -- it seems rather plausible, though my first reaction was, "Someone just tried to steal my money!"

If that's what happened, it was an inconvenience for all parties involved: the person who was mistaken about their passcode was not, obviously, informed that they were entering a wrong passcode, and they wasted their time trying to enter the correct information later on; the bank had to use their human resources on helping me out; I had to waste my time and money on calling the bank at 00:05 AM on a Monday.

Is anything being done by banks or other entities in order to prevent such situations? What is being done? It's them who provide the codes, and I see no reason not to make them dissimilar among the users. I've not tried to do any calculating, but it doesn't seem very complicated to make sure certain common mistakes are not going to happen.

EDIT: Thank you for all the answers given so far. The answers stress the fact that the inconvenience was minor and I should be happy that was all that happened. I'm certainly not unhappy my money didn't get stolen. :) However, could you please address the question of dissimilarity? Is there a good reason not to make sure the randomly generated passcodes are immune to transpositions of adjacent digits for example?

Tror du, det er dårligt? Prøv at tørre en vens smartphone efter at have skrevet 3 forkerte PIN-numre.
Tror du, det er dårligt? Prøv at få ** din ** smartphone ryddet efter dit barn ** som ikke havde nogen idé om hvad han lavede ** indtastede 3 forkerte PIN-numre.
Hvis jeg havde en dollar for hver gang jeg har indtastet min smarttelefons pinkode forkert flere gange, ikke rigtig opmærksomt .... Skulle jeg dog tørre efter 3 (i stedet for 10) gange, ville jeg sandsynligvis være mere opmærksom.
Seks svar:
Zeb
2014-04-07 05:48:00 UTC
view on stackexchange narkive permalink

Banker, der udsteder numeriske brugernavne, er ret irriterende. Og mens jeg er mere paranoid end de fleste, har du sandsynligvis ret i, at nogen bare fik fingre med deres ID og ikke klar over det, før de låste dig ude.

For at besvare spørgsmålet hjælper nogle banker med at sikre, at du forsøger at logge ind med den rigtige brugerkonto. Disse "sikkerhedsbilleder", du ser på nogle bankloginsider, ja bankerne fortæller dig, at disse billeder hjælper dig med at sikre, at du logger ind på deres hjemmeside. Men den virkelige fordel er at hjælpe brugerne med at indse, at de forsøger at logge ind på en andens konto. Websteder, der bruger denne proces, beder om dit brugernavn på hovedsiden til login og fører dig derefter til en ny side med dit 'sikkerhedsbillede' og adgangskodefeltet. De kan også bede om en anden form for godkendelse (sikkerhedsspørgsmål osv.), Før de beder om adgangskoden, hvis du logger ind fra en computer, de ikke har set dig logge ind fra før.

Hvis hver gang du logger ind, ser du det billede, du valgte ved tilmelding, er det mere sandsynligt (forudsat at du bruger webstedet ofte nok) til at bemærke, når billedet er anderledes. Dette kan betyde, at du logger ind på et phishing-websted, men mere sandsynligt har du fedt fingret på brugerkontoen.

REDIGER: - For at besvare din redigering -

Når du beskæftiger dig med numeriske bruger-id'er, er der kun 10 cifre, og de er proppet i et meget lille område på 10-taster og mobile enheder. I betragtning af mange titusinder (eller hundreder) tusinder brugere, manglen på cifre, og hvor tæt de er i to af de tre almindelige layouter, er der virkelig ingen måde at sikre tilstrækkeligt, at et ID er forskelligt nok fra et andet til at forhindre almindelige forkert indtastningsfejl .

Hvis du også tænker over det fra et præstationssynspunkt, er det en meget effektiv og hurtig proces at finde ud af, om et nyt ID er uniq, i de mest veldesignede systemer. At opdage, om et nyt ID er anderledes end andre, kræver dog iterering over hvert andet bruger-id og sammenligning af de to med hvad din algoritme er. Dette ville være en (relativt) langsom og smertefuld proces. Med nok tid og kræfter kan du cache ngrams og andre sammenligningspunkter for at hjælpe med at fremskynde det, men det vil stadig være langsomt.

Kort sagt, jeg er ikke opmærksom på, at nogen virksomhed gør dette på bruger-id'er, bestemt ikke på numeriske. (Men jeg vil med glæde læse en hvidbog eller ingeniørblog om nogen, der gør det)

Et par andre brugere (inklusive Philipp) har nævnt kontrolsifre, som jeg ikke diskuterede, da jeg oprindeligt fokuserede på det systemets side og de forskellige brugernavne fokuserer på spørgsmålet. Men i yderligere tanke har det en plads i denne samtale. Kontrolsummer bruges ofte til at forøge kontonumre, dvs. kreditkortnumre, som enhver programmeringsstuderende i første semester kan skrive et valideringsværktøj til. Dette eliminerer alt andet end forkert indtastning og kan kontrolleres på klientsiden uden at blive sendt til indtastningsformularen. Det er umuligt at sige (uden intern viden) om nogen bruger dette på numeriske brugerkonti ... Jeg ville vove mig at nogen er det, men jeg har ikke set det, og da det ikke ville gøre det interessant diskussion (eller dokumentation) inden for samfundet, har ikke hørt om nogen, der gør det. Jeg tror, ​​vi alle kan være enige, det er din bank ikke. :)

Tak for svaret. Jeg vidste ikke om disse billeder, og de virker som en god idé. Kunne du stadig tage et kig på min redigering?
Sikkerhedsbillederne kan tjene begge formål, men ikke begge dele. Når et sikkerhedsbillede er beregnet til at sikre, at det websted, du opretter forbindelse til, faktisk er banken, ser det ud, EFTER at du godkender. Hvis det dukkede op før, kunne en phisher blot indtaste dit brugernavn for at finde dit hemmelige billede. Hvis det vises før din adgangskode, hjælper det virkelig med at beskytte mod scenarierne "Ups, forkert brugernavn".
Aftalt, for det meste. Hvad de gør, og hvad banken vil have dig til at tro, det gør, er to forskellige ting. De fleste banker, der viser et sikkerhedsbillede, gør det, når du har indtastet et gyldigt brugernavn inden den endelige godkendelse. Nogle banker (dvs. en af ​​mine) viser et tilfældigt billede, hvis du indtaster et ugyldigt brugernavn.
Philipp
2014-04-07 12:30:32 UTC
view on stackexchange narkive permalink

You could generate the passcode by taking a consecutive number and append one or more additional digits to it which are a checksum of the actual number. You can check the validity of a passcode on the client-side by checking if the checksum-digits entered by the user match the actual part of the passcode.

One checksum-digit reduces the chance to accidentally enter a valid passcode of another user to one in ten, two to one in hundred and three to one in thousand.

The downside, however, is that the longer the passcode, the harder it is to memorize, which will in turn lead to people forgetting their passcodes and again consume human resources to recover it. That means that the designer of the system has to find the right balance between inconveniences generated by people entering passcodes of other people and people forgetting their passcodes.

John Deters
2014-04-07 04:34:33 UTC
view on stackexchange narkive permalink

De forhindrede et angreb på din konto. Dette er et ønsket resultat - havde de været i stand til at prøve ubegrænsede adgangskoder, ville de have gættet din. Angrebet blev stoppet i tide og kostede dig en mindre besvær. Hvis dette mønster blev gentaget for alvorligt at generer dig, kan banken blot udstede en ny tilfældig adgangskode.

De er ikke lige så interesserede i at forhindre billige ulemper som at forhindre dyre svindel.

EDIT :

Problemet med et tilfældigt tildelt 8-cifret nummer er, at du sandsynligvis ikke vil huske det, hvis du ikke behøver at bruge det regelmæssigt. Hvordan kan du huske, om dit nummer er 82640927 eller 82604927?

Noget, der længe har været brugt til at reducere skrivefejl, er Luhn-kontrolcifret algoritme. Det validerer nummeret og beder systemet om at bede en bruger om at indtaste nummeret igen, hvis et ciffer er forkert, eller hvis et par cifre ved et uheld transponeres. Kreditkort har brugt dette i årtier. Men Luhn-algoritmen forhindrer ikke alle utilsigtede problemer eller stopper bevidste forsøg.

Den bedste måde at reducere utilsigtede kollisioner er at øge det potentielle antal plads og tilfældigt tildele brugere på tværs af nummerområdet. Blot at have 10 cifrede tal stopper ikke kollisioner, hvis brugerne er nummereret 0000000001, 0000000002, 0000000003, ... En måde at opnå dette på er at bruge et sekventielt frø og derefter føde det ind i en hash-algoritme til at producere det ti-cifrede nummer at tage et usigneret int af de fire nederste byte er en måde at opnå dette på.) Det er tilstrækkeligt tilfældigt, at to tal ikke har et forhold til hinanden, hvilket gør utilsigtede typografier virkelig få og langt imellem. Et Luhn-ciffer kan også tjene som en høflighedskontrol for at hjælpe brugeren med ikke at spilde tid på at indtaste et kodeord på et åbenlyst defekt kontonummer.

Tak for svaret. Jeg har redigeret spørgsmålet; kan du tage et kig?
RyPeck
2014-04-07 06:48:20 UTC
view on stackexchange narkive permalink

Webtjenester kan tage hensyn til placeringen af, hvor login-anmodninger stammer fra, og korrelere med dine tidligere log-in-forsøg. Svarende til hvordan kreditkortselskaber kontakter dig, når de bemærker "usædvanlig aktivitet" på dit kreditkort. Dette er et stykke logik, som en organisation, der leverer en tjeneste på nettet, kan bruge til at tackle hændelser som denne. Hvis de med stor tillid kan sige, at det brugernavn, der er knyttet til forbindelsen, ikke er dig - kan de tage skridt til at isolere disse begivenheder fra at påvirke den rigtige konto.

I dit tilfælde kan banken have logik programmeret eller analytiker udlede, om personen, der forsøger at logge ind med dit konto-id, var fra det samme område som dig - eller hvis de er sikre på, at det var et helt andet geografisk område.

En anden rute, der kunne hjælpe give dem et billede ville være de logfiler, der er tilgængelige for dem fra begivenheden. Det lyder som om den kundeservicemedarbejder, du talte, ikke havde adgang til de nævnte logfiler - og sandsynligvis ikke ville have haft ekspertisen til at se dem. Selv hvis de gjorde det - hvis de skal sige, at applikationen logger disse oplysninger ordentligt? Vil de endda ønske det? Hvor mange mennesker ville så have adgang til disse oplysninger?

Forhåndslogik i disse situationer kan hurtigt blive vanskelig. Hvordan din bank i dette tilfælde håndterede det lyder som det mest enkle og billigste svar for alle involverede. Hvis den eneste forstyrrelse for dig i tjeneste var et 5-minutters telefonopkald med din bank - er det en meget ringe måde at tackle en potentielt høj skadesituation på.

Tak. Jeg er enig i, at det ikke var det værste, der kunne ske. Men hvis det kunne forhindres uden for store omkostninger, hvorfor ikke? Jeg har bare problemer med at forstå, hvorfor det kan være et problem at forhindre det. Kan du se min redigering af spørgsmålet?
scuzzy-delta
2014-04-07 13:14:01 UTC
view on stackexchange narkive permalink

Der er en nøglefordel ved et tildelt brugernavn eller en adgangskode - det er normalt mere tilfældigt, end en bruger ville generere. For et numerisk brugernavn med kun 8 tegn er der 100 millioner (10 ^ 8) mulige permutationer. Dette er mindre end 1/3 af befolkningen i USA og omkring 1/2 befolkningen i Indonesien. Så denne metode ville bestemt ikke skalere sig ud over det antal internetbankbrugere.

Ja, det betyder, at brugernavne er let at gætte - en angriber skal bare gentage gennem 8-cifrede tal. Selvfølgelig skulle man være meget heldig at brute sig ind på en konto med høj nettoværdi på denne måde.

Men som du oplevede, kan den samme aktivitet let bruges til at udføre en benægtelse af Service angreb. Gæt bare tilfældigt adgangskoden N gange pr. Brugernavn i hurtig rækkefølge (hvor N er antallet af forsøg, der kræves for at udløse en kontolås). Om et par timer bliver banken nødt til at telefon-verificere hver online-bankkunde, og deres call-center vil blive overvældet.

Løsningen er at udvide brugernavnet tegnsæt. Ved også at tillade store og små bogstaver udvides antallet af permutationer til 218 billioner ((26 + 26 + 10) ^ 8), hvilket i høj grad reducerer effektiviteten af ​​ovennævnte denial of service-angreb samt utilsigtede kollisioner som den du oplevet.

Ulempen er, at brugernavne bliver mere komplekse for brugerne at huske og indtaste. Dette kan delvis afhjælpes ved at give brugerne mulighed for at vælge brugernavne. Og ulempen ved det er noget tab af tilfældighed.

trysis
2014-04-07 20:57:57 UTC
view on stackexchange narkive permalink

En ting, som nogle websteder, som Google, ser ud til at gøre for at forhindre denne type angreb, er at efter en vis mængde loginforsøg ikke låse dig ude, men give dig noget, der kaldes CAPTCHA. Dette bruges mere til at forhindre botlogins, men det sænker også en ondsindet menneskelig bruger, da han / hun stadig skal finde ud af adgangskoden, og nogle CAPTCHA'er er hårde. Det kan også være en ulempe for en legitim bruger, men når du får en CAPTCHA på disse websteder, er det sandsynligt, at du ikke kan huske din adgangskode.

En anden ting, som nogle websteder ser ud til at gøre, er at låse et brugernavn midlertidigt, ikke permanent. For eksempel låste mit 2-årige kollegis websted dig ude i 15 minutter, da du indtastede den forkerte adgangskode 3 gange, derefter yderligere 5 kumulative ekstra for hvert nye adgangskodeforsøg, før låsen er op. Mange Android-telefons skærmlåse gør det også. Denne metode kunne tillade DOS-angreb, da den ondsindede bruger kunne prøve så mange forsøg, at den sande bruger faktisk aldrig ville være i stand til at logge ind igen, selvom at kæde tidsfristen til specifikke IP'er, cookies osv. Kunne afbøde dette under hensyntagen til, at IP'er kan spoofes.

Begge disse metoder fungerer mere for at afskrække bots end ondsindede menneskelige brugere, men de sænker menneskelige brugere, mens de ikke låser kontoen permanent for den legitime bruger i tilfælde af ulykker. Jeg er ikke sikker på, hvor godt hver metode fungerer for banker, da de er meget mere paranoid end for eksempel Google. Også de fleste af de websteder, jeg har set disse på brugte brugerdefinerede brugernavne, men jeg antager, at de også vil fungere for bankspecificerede numeriske brugernavne.

Sikkerhedsindstillede banker, virkelig? De fleste banker har en latterlig forståelse af computersikkerhed og begrænset forståelse af fysisk sikkerhed (selvom de i det mindste normalt ansætter folk med acceptabel forståelse af fysisk sikkerhed for at opbygge dem.) Banker laver ofte vrøvl som at tilføje adgangskodestil nummer + øvre + nedre krav på brugernavne, snarere end at implementere reelle sikkerhedsforbedringer som 2-faktor-godkendelse. (Jeg forventer fortsat at se dem begynde at kræve, at jeg ændrer mit brugernavn hver 90. dag ... :-()
Nå fint, jeg mente paranoide banker, der stillede alle disse krav som billedadgangskoder osv. Det virker som sikkerhed. :) Der ændrede jeg det.


Denne spørgsmål og svar blev automatisk oversat fra det engelske sprog.Det originale indhold er tilgængeligt på stackexchange, som vi takker for den cc by-sa 3.0-licens, den distribueres under.
Loading...