MattC
02-20-2005, 06:37 PM
Hello All,
I have been recently working with a security tool known as <snipped, pending review>. I’m sure many of you have heard of this, for those of you who haven’t here is a brief look at what it does.
Instead of trying to brute force a password (LM/NTLM in my case, for Windows passwords, but it will also generate MD5 and SHA-1) it will generate tables of pre-generated hashes and using a reduction algorithm match up a hash of a password with the plaintext password. Normally this can take up to several months with traditional brute forcing attempts, using <this device> I was able to obtain a 7 digit alphanumeric password (mixed cased) in about 4 seconds.
It takes about 2 days to generate the necessary <table information> to break any 1-7 length alphanumeric password, and about 3 months to generate a table to break 15 digit (alphanumeric + symbols) password. Once created passwords can be broken with about 99% certainty in a few minutes.
In order to obtain a password hash one must have access to the SAM file (where Windows stores the LM/NTLM hashes). Since Windows is always using this file you cannot copy it onto a USB key or over the network. You can however dump the hashes from the copy running in memory using PWDUMP2/3/4 or SAMDUMP on the local machine. Or you can run PWDUMP4 over the network and obtain other machines SAM files.
The average user can however dump the SAM file and get a Local Administrator password with ease. Knowing this will let them install anything they like, key loggers, network sniffers or even root kits.
Ok, so anyone can get the Local Administrator password really quickly, what can be done about this? Use pass-PHRASES, in other words, make it longer. Windows 2000/XP+ can store passwords up to 127 characters long. So instead of having your password be “x3i(cs0” (I’m sorry if this is your password) which will be broken by <this device> in a matter of minutes use “My New Password Is Really Good!” (with the quotes) which is 34 characters long with symbols and mixed case.
Creating a <results table> for 30+ character/symbol passwords as well as traditional brute forcing techniques will take a lifetime. Making the pass-phrase much more secure.
I bring up these points not to cause panic, but to start a discussion. This all came as news to me when I started researching it, so I thought I’d pass the knowledge along. I’m sending the same draft to the security experts at my local school as it is more fitting for a college environment. But it came as a surprise that my “secure” password wasn’t secure at all.
I have been recently working with a security tool known as <snipped, pending review>. I’m sure many of you have heard of this, for those of you who haven’t here is a brief look at what it does.
Instead of trying to brute force a password (LM/NTLM in my case, for Windows passwords, but it will also generate MD5 and SHA-1) it will generate tables of pre-generated hashes and using a reduction algorithm match up a hash of a password with the plaintext password. Normally this can take up to several months with traditional brute forcing attempts, using <this device> I was able to obtain a 7 digit alphanumeric password (mixed cased) in about 4 seconds.
It takes about 2 days to generate the necessary <table information> to break any 1-7 length alphanumeric password, and about 3 months to generate a table to break 15 digit (alphanumeric + symbols) password. Once created passwords can be broken with about 99% certainty in a few minutes.
In order to obtain a password hash one must have access to the SAM file (where Windows stores the LM/NTLM hashes). Since Windows is always using this file you cannot copy it onto a USB key or over the network. You can however dump the hashes from the copy running in memory using PWDUMP2/3/4 or SAMDUMP on the local machine. Or you can run PWDUMP4 over the network and obtain other machines SAM files.
The average user can however dump the SAM file and get a Local Administrator password with ease. Knowing this will let them install anything they like, key loggers, network sniffers or even root kits.
Ok, so anyone can get the Local Administrator password really quickly, what can be done about this? Use pass-PHRASES, in other words, make it longer. Windows 2000/XP+ can store passwords up to 127 characters long. So instead of having your password be “x3i(cs0” (I’m sorry if this is your password) which will be broken by <this device> in a matter of minutes use “My New Password Is Really Good!” (with the quotes) which is 34 characters long with symbols and mixed case.
Creating a <results table> for 30+ character/symbol passwords as well as traditional brute forcing techniques will take a lifetime. Making the pass-phrase much more secure.
I bring up these points not to cause panic, but to start a discussion. This all came as news to me when I started researching it, so I thought I’d pass the knowledge along. I’m sending the same draft to the security experts at my local school as it is more fitting for a college environment. But it came as a surprise that my “secure” password wasn’t secure at all.