Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


09:03 PM
Adrian Lane
Adrian Lane

Do Password Crackers Help Database Security?

Password 'crackers' determine if passwords are strong or compliant with company policies, but do they improve database security?

Ten years ago, the database passwords "qwerty1" was popular in the U.S. and "beckham1" was popular in the U.K. During my career as an author of security technologies, I was asked repeatedly for password crackers to verify employees were not using such easy-to-guess passwords. So I built them. And they worked.

Large enterprises, it seemed, always wanted to know if their users were creating strong passwords. This discussion popped up again the other day, both when talking to a couple of large banks, as well as a vendor that sells this type of technology. The customer is always right, so vendors will build the product if someone will buy it, but it's the wrong choice to make sure passwords are adequately difficult to guess. It's just a bad use of technology. Here's why:

1. Cracking passwords is hard. Password crackers are based upon precomputation attacks like a dictionary attack, or a rainbow table attack. Running a "brute force" attack against a production database by repeatedly trying to log in as a user with a guessed password at best slows down the database. At worst, it locks user accounts after so many failed attempts. So password crackers extract a copy of the hashed passwords to some other machine and perform the analysis. The problem is, any good password hasher, complete with padding/salting, is resistant to this sort of cracking. It take tremendous computational overhead to guess even simple passwords, and to guess for more than a few hundred requires lots of dedicated hardware.

2. Verify first. After a password is created is the wrong time for analysis. If we want to verify passwords are suitably strong, then it is far easier to check when the password is created. We can easily check, either in clear text or even with the hashed value, with a trigger-based function as passwords stored in the database. Domain-based access control systems can check passwords as they are created as well. The net result is you dramatically reduce the computational overhead of trying to break the password.

3. Distribution of password data. Since password crackers can't efficiently run against a live database, they need to extract a copy of the hashed password. In and of itself this is an additional security risk, both because the data is being moved to yet another platform that is also subject to compromise, and because there is read only access to the hashed password table for another nonadmin user account. Both slightly increase the "threat surface" of the passwords. Hackers have been known to compromise internal security systems in order to launch attacks, and hijacking the password cracker to break admin passwords is high on the list. Most DBAs I know write an input trigger that runs whenever a password is to be changed, verifying the password is not in the weak password dictionary, and that it meets length and special character inclusion requirements. DBAs expire user passwords over the course of a month or two, forcing users to update passwords to something stronger while not burying themselves in support calls. It's just as effective and far less invasive. I recommend you avoid using password crackers for day-to-day-operations, and only use these tools when you absolutely need to retrieve a specific password.

Adrian Lane is an analyst/CTO with Securosis LLC, an independent security consulting practice. Special to Dark Reading. Adrian Lane is a Security Strategist and brings over 25 years of industry experience to the Securosis team, much of it at the executive level. Adrian specializes in database security, data security, and secure software development. With experience at Ingres, Oracle, and ... View Full Bio

Comment  | 
Print  | 
More Insights
Newest First  |  Oldest First  |  Threaded View
Manchester United Suffers Cyberattack
Dark Reading Staff 11/23/2020
As 'Anywhere Work' Evolves, Security Will Be Key Challenge
Robert Lemos, Contributing Writer,  11/23/2020
Cloud Security Startup Lightspin Emerges From Stealth
Kelly Sheridan, Staff Editor, Dark Reading,  11/24/2020
Register for Dark Reading Newsletters
White Papers
Cartoon Contest
Write a Caption, Win an Amazon Gift Card! Click Here
Latest Comment: This comment is waiting for review by our moderators.
Current Issue
2021 Top Enterprise IT Trends
We've identified the key trends that are poised to impact the IT landscape in 2021. Find out why they're important and how they will affect you today!
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
PUBLISHED: 2020-11-30
SQL injection vulnerability in request.cgi in Synology SafeAccess before 1.2.3-0234 allows remote attackers to execute arbitrary SQL commands via the domain parameter.
PUBLISHED: 2020-11-30
Multiple cross-site scripting (XSS) vulnerabilities in Synology SafeAccess before 1.2.3-0234 allow remote attackers to inject arbitrary web script or HTML via the (1) domain or (2) profile parameter.
PUBLISHED: 2020-11-30
An issue was discovered on Fujitsu Eternus Storage DX200 S4 devices through 2020-11-25. After logging into the portal as a root user (using any web browser), the portal can be accessed with root privileges when the URI cgi-bin/csp?cspid=&csppage=cgi_PgOverview&csplang=en is visit...
PUBLISHED: 2020-11-30
hw/usb/hcd-ohci.c in QEMU 5.0.0 has a stack-based buffer over-read via values obtained from the host controller driver.
PUBLISHED: 2020-11-29
An issue was discovered on V-SOL V1600D V2.03.69 and V2.03.57, V1600D4L V1.01.49, V1600D-MINI V1.01.48, V1600G1 V2.0.7 and V1.9.7, and V1600G2 V1.1.4 OLT devices. It is possible to elevate the privilege of a CLI user (to full administrative access) by using the password [email protected]#y$z%x6x7q8c9z) for the e...