By Robert Lemos
10th November 2005
A trio of entrepreneurial hackers hope to do for the business of
password cracking what Google did for search and, in the process, may
remove the last vestiges of security from many password systems.
Over the past two years, three security enthusiasts from the United
States and Europe set a host of computers to the task of creating
eleven enormous tables of data that can be used to look up common
passwords. The tables - totaling 500GB - form the core data of a
technique known as rainbow cracking, which uses vast dictionaries of
data to let anyone reverse the process of creating hashes - the
statistically unique codes that, among other duties, are used to
obfuscate a user's password.
Last week, the trio went public with their service. Called
RainbowCrack Online, the site allows anyone to pay a subscription fee
and submit password hashes for cracking.
"Usually people think that a complex, but short, password is very
secure, something like $FT%_3^," said Travis, one of the founders of
RainbowCrack Online, who asked that his last name not be used.
"However, you will find that our tables handle that password quite
While security professionals have questions whether a business can be
created by offering access to rainbow tables, the endeavor does
highlight the weaknesses in security of password-only authentication.
History has shown that password systems are imminently breakable.
In August, a group of Chinese researchers found further breaks in a
common hash function, the Secure Hash Algorithm or SHA-1, used by the
U.S. government. In September, researchers from the University of
California at Berkeley published a paper that demonstrated that the
sound of a person typing can reveal the content, including passwords.
Those technical breaks do not even account for the human factor:
People tend to pick simple passwords and disclose them frequently. In
fact, many viruses and worms have successfully spread by trying to log
into administrator accounts using a small list of common passwords.
Because of the problems, the U.S. government is requiring that banks
move towards two-factor authentication, where the typical password
security is augmented by a biometric or a physical security device.
Some security researchers maintain that even adding a second type of
security check is not enough.
The latest attack focuses on the hash functions used to verify
passwords. Because operating systems cannot keep a copy of the
password on the disk without weakening system security, the software
instead saves a statistically unique code generated from the pasword.
While the code, or hash, is computationally easy to create, reversing
the process to recover the password is nearly impossible, given a
correctly implemented hash function.
Rainbow tables side step the difficulty in cracking a single password
by instead creating a large data set of hashes from nearly every
possible password. To break a password, the attacker merely looks up
the hash to find the password that produces that code.
"Creating the tables takes much more time than cracking a single hash,
but then you can use the tables over and over again," said Philippe
Oechslin, CEO of Swiss information-technology firm Objectif S=E9curit=E9
and the inventor of rainbow tables. "The advantage of rainbow tables
is that once you have the tables it is faster than a brute force
(attack) and it needs less memory than a full dictionary (attack) of
The theory behind rainbow tables extends research by Martin Hellman
and Ronald Rivest done in the early 1980s on the performance
trade-offs between processing time and the memory needed for
cryptoanalysis. In a paper published in 2003, Oechlin refined the
techniques and showed the attack could reduce the time to attack 99.9
per cent of Microsoft's LanMan password scheme to 13.6 seconds from
101 seconds. Further refinements have reduced the number of false
positives produced by the system.
"This is something that you are never supposed to be able to do with
(a good implementation of) crypto - generate every single possible
combination," said Dan Moniz, a member of the Shmoo group, a coalition
of security researchers and the manager of the groups own rainbow
RainbowCrack Online will offer 11 tables covering six different hash
algorithms, including LanMan, MD5, MySQL 323, and SHA-1. Offering the
tables in an online service is not about helping attackers, but about
helping system administrators secure their systems, said
"Attackers already have tables like these, (so) RainbowCrack serves as
a tool to judge what is and what is not a secure password policy," he
Making money with rainbow tables is not a new idea. A handful of
efforts have been started and then stalled. Zhu Shuanglei, who created
the open-source tool that RainbowCrack Online uses to generate its
tables, has generated a 64GB LanMan table and advertises it for sale
for $400. The Shmoo group created its own rainbow table to crack
Microsoft's LanManager tables that offered them for free through
BitTorrent, and at the DEF CON hacking convention, Shmoo's Moniz saw
several versions of the LanManager tables for sale. People with free
computer time would calculate the tables hoping to make a little
money, he said.
The experience has Shmoo's Moniz questioning whether there will be
demand for a service like RainbowCrack Online. Bruce Schneier, a
well-known cryptographer and chief technology officer of network
monitoring service Counterpane Internet Security, agrees.
"There could be a criminal business in it," he said. "But I don't see
the legitimate business demand for rainbow tables."
To some extent, RainbowCrack Online applies Google's business model to
cracking encryption. Like Google, RainbowCrack Online give web access
to a large database of information. Both services go through a lot of
effort and a lot of memory to give users a quick answer to a query.
And both services could be reproduced, barring patent hurdles.
Yet, while searching the web has obvious utility, the usefulness of
rainbow tables is questionable, because good programming can make the
tables require several magnitudes more memory, rendering the technique
essentially useless. Specifically, adding several unpredictable bytes
at the beginning of a password before hashing, a technique known as
salt, can add several orders of magnitude of complexity to any
cryptanalysis of the result.
"Remember that rainbow tables only work for inferior functions that
use no salt or initialization vector," Objectif S=E9curit=E9's Oechslin
said. "If programmers were more careful, there would be no market for
a rainbow Google."
RainbowCrack Online's founders disagree. The lion's share of
cryptographic hash functions are not well implemented and thus could
be broken with their tables quite easily, RainbowCrack's Travis said.
Counterpane's Schneier agrees.
"All we have is anecdotal evidence about development practices, but I
would agree that a lot of systems are weak," Schneier said. "The
biggest problems that we as cryptographers have to face is bad
For such insecure password implementations, rainbow-table services may
be the sign that it's time to reconsider security.
Copyright =A9 2005, SecurityFocus
Earn your Master's degree in Information Security ONLINE
Study IA management practices and the latest infosec issues.
Norwich University is an NSA Center of Excellence.