Presentation on theme: "Securing Passwords against Dictionary Attacks"— Presentation transcript:
1Securing Passwords against Dictionary Attacks Benny Pinkas, Tomas SanderHP Labs(most work done at STAR Lab, Intertrust)
2In this talk Online dictionary attacks against passwords Current countermeasures are insufficient and introduce risksA solution using Reverse Turing TestsPrevent online dictionary attacks, while preserving the advantages of using passwords (low costs, portability, user friendliness…)
3Motivation Passwords are the most common authentication method They are inherently insecureHow can a password based authentication system be secured against online dictionary attacks?
4Insecurity of Passwords Human generated passwordsCome from a small domainEasy to guess – dictionary attacksStronger passwordsComputer generated or verifiedNot user friendlyHard to remember
5Previous suggestions: securing passwords against online attacks Enterprise:hardware tokens. (Cost? Usability?)Server defined passwords. (Usability?)Consumer:Key stroke timing [Bell Labs] (Reliability?)Graphical passwords [Microsoft, Berkeley](Usability?)None of these methods is as popular as plain passwords
6Possible attacks on passwords Eavesdropping. (Solution: encrypt the channel, e.g. using SSL or SSH.)Offline dictionary attacks. (Solution: limit access to password file, use salt.)Online dictionary attacks: Attacker guesses a username/password pair and tries to login.
9Risks of locking accounts eBay experiences dictionary attacks, but does not implement account locking.Denial of service attacks: To lock a user, try to login into his account with random passwords. (auctions, corporates…)Customer service costs: Users whose accounts are locked call a customer service center – cost is $20-50 per call.
10Using Pricing via Processing [DN] Idea: each login attempt must be accompanied by H(username,pwd,t,r) s.t. 20 least significant bits are 0.Negligible overhead for a single request.A dictionary attack is slowed by a factor of 220 (must find r for every pwd guess).Implementation problems:Clients must use a special software.Legitimate user with a slow machine.Describe what the server is doing.Verification is easy.
11Our ApproachLegitimate logins – done by humans. Dictionary attacks – run by programs.Login attempts must be accompanied by a computation that is easy for humans and hard for programs.Other requirements: Little impact on usability, portability, no additional hardware, easy implementation and integration.
12Reverse Turing Test (RTT) Verifies “human in the loop”. A challenge from a domain in which humans excel and computers fail.Please type the following word:
13Properties of Reverse Turing Tests (RTT, Captcha, ATT) Automated generation and verification.Easy for humans.Hard for computer programs.Small probability of guessing the answer (I.e. not a yes/no answer).
14Reverse Turing Tests (RTT) Suggested by Moni Naor in 1996.Captcha project, CMU.Used to prevent automated programs from accessing different features of web sites (Yahoo!, Paypal, AltaVista).Possible accessibility problems?
15Security of RTTsAlta Vista: # of url submissions down by 90% after RTT were required.Pessimal print – “…RTTs are, and will be, hard for OCR programs” [CBF].Unfortunately, simple RTTs (Yahoo!’s), displaying English text, can be broken with high probability [MM2002].There will be an arms race. We only need that breaking RTTs isn’t too easy.CBF – Coates, baird, fateman.MM- Mori, MalikExplain why we only need that breaking is not too easy
16Simple method I want to login RTT id, pwd, RTT answer (id,pwd) valid, andRTT answer is correctWelcome!Go away!Otherwise
17Properties Securitya: Usability: User’s experience is more annoying Each password guess requires an RTT.Hard to guess RTT answer.Password space of size N requires adversary to answer N RTTsUsability: User’s experience is more annoyingScalability: server must generate many RTTs (one per login attempt).
18Improved Authentication Method Each user typically uses a limited set of computers.Dictionary attacks originate from other computers.Servers can identify machines (e.g. using cookies or ip addresses).
19Improved Authentication Method cookie, id, pwdIf password is correct:Cookie indicates previous successful login to same account?YesNoGrant accessRTT?Solution?Yes: GrantNo: Deny!If password is incorrect:With prob 90% deny accessWith prob p=10% ask for an RTTand then deny access
20Properties Usabilitya- user has to answer RTT In the first login from a new computerIf entered wrong passwordScalabilitya: Server generates RTTs only for 10% of incorrect login attempts.
21Security User must receive identical feedback if, (id,pwd) pair is correct but RTT is required(id,pwd) pair is incorrect and RTT is requiredAttacker can easily identify a set of pN candidate passwords.To check these passwords, has to “pay” with an RTT answer per password.(We can also protect against cookie theft)Implication for timing
22Security - exampleParameters: N=106 passwords, 1000 possible answers for RTT, p=10%.Attacks:Attacker guesses RTT answer: succeeds with prob 10-8.Attacker breaks RTT in 3 seconds (automatically or using humans): expected to invest 42 hours per account.
23And if RTT is broken… Identify a successful attack: Countermeasures: Monitor fraction of login attempts that solve the RTT but fail in entering password.Set alarm when this fraction increases.Countermeasures:Increase p (fraction of logins requiring RTT).Switch to an RTT from a different domain.Notify administrator
24Implications wrt Account locking Common practice today: lock account after L unsuccessful login attempts.Risks: Denial of service, service calls.Assume: A secure RTT with 1000 possible answers, RTT needed for 10% of pwd guesses.Pwd space increases by a factor of 100.Therefore, can lock accounts after L*100 unsuccessful login attempts…
25Benefits to server Better security against break-ins. Visible security measures, but with few usability effects.Easy implementation and integration.Less account lockingLess denial of service attacks – important for corporates, auctions,…Save money - less customer support calls
26Scores wrt Different Criteria Availability and portability: account can be accessed from everywhere.User friendliness: easy learning curveRobustness: less account lockingLow implementation and operation costsPasswords score well.Our solution scores well, and provides better security.