Author |
Topic: Toolcrypt's orabf (Read 38708 times) |
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #1 on: Aug 30th, 2005, 10:26am » |
Quote | Modify
|
A nice new feature of orabf is the possibility to resume cracking of a password. orabf <passwordhash>:<username> <complexity> <max. characters> For example: orabf AG1232B114F4A25A:USERNAME 2 8 You can resume cracking this password with this command: orabf AG1232B114F4A25A:USERNAME 2 8 resume orabf has just cracked my 8 letter password here in 6 hours and 42 minutes. One sidenote here, my password started with an "A". orabf works through the list of passwords from A to Z, so a password "ZZZZZZZZ" would have taken considerably longer to crack.
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #2 on: Aug 31st, 2005, 1:27am » |
Quote | Modify
|
I did a crack of a 6 character password in about half an hour (while I was using the PC for other stuff). I was checking alphanumeric as well, and I noticed it included passwords starting with a number. Not sure about 10G/10Gr2, but 9iR2 doesn't allow passwords starting with a numeric unless quoted. Playing around with the resume file would probably allow you to start with A..... , and I guess if you had a couple of dozen PCs you could start one on each letter of the alphabet. [The resume file has 6 fields - the first I think is the number of combinations tried, the second is the username, the third is the last password checked, not sure on the fourth, the fifth is the complexity and the last is the max password length multiplied by two.] I think it is safe to say that 8 character passwords can be practically cracked using brute force. 9 character would need some heavy resources.
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #3 on: Sep 1st, 2005, 3:12am » |
Quote | Modify
|
Just a note regarding timings on RDS: The million passwords per sec for orabf is based on the Brute Force mode. Reading from a dictionary file slows it down to around 100,00 per second. [Specifically on my machine orabf went done from 990,000 on brute force to 115,000 per second on dictionary]. checkpwd reads the dictionary file first (took 15 secs for about 1.5 million passwords on my machine). Once in memory it only took 5 seconds to go through the list (about 300,000 per sec). This method took slightly longer overall for an individual crack, but it would be a lot quicker if it was cracking a set of users over a database connection as it only reads the file once.
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #5 on: Sep 16th, 2005, 2:13am » |
Quote | Modify
|
Just a note about the RESUME mode of this. If orabf is stopped part way through, it creates a file with the suffix .res for resuming later. The first part of this file name is the hashed password and the file contains the cleartext username. As such, the file itself is a potential security hole, so if you have been playing around with the tool its best to delete or secure any .res files that has been left.
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #7 on: Sep 19th, 2005, 8:35am » |
Quote | Modify
|
Hi everybody, Recently I did some tests with orabf on a Pentium 4 1,7 Ghz with 512Mb (memory is hardly a factor, orabf regularely uses about 700 Kb). I hacked alphabetical passwords with different lengths. Now orabf works through possible alphabetical passwords from A-Z, so to get the maximum time involved in cracking say a 5 character password, I chose 'ZZZZZ'. And here are the results: Username | Password | Password hash | Time to crack | Number passw. tried | Z | Z | 319B5E833E3291F7 | 00d 00:00:00 | default | Y | Z | 646A52B5505852EA | 00d 00:00:00 | 27 | Z | ZZ | 5A99821B918805AA | 00d 00:00:00 | 703 | Z | ZZZ | 748B146ADFA8EB5E | 00d 00:00:00 | 18279 | Z | ZZZZ | 05C69D5374090AF5 | 00d 00:00:01 | 475255 | Z | ZZZZZ | F29224D28E7B57EF | 00d 00:00:16 | 12356631 | Z | ZZZZZZ | 124F2EA043CD2ED1 | 00d 00:08:52 | 321272407 | Z | ZZZZZZZ | C717F96D746B3294 | 00d 03:16:55 | 8353082583 | Z | ZZZZZZZZ | 7AAED8BB9D1B19F3 | 04d 09:12:38 | 217180147159 |
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #9 on: Sep 21st, 2005, 10:46am » |
Quote | Modify
|
Ivan, That has also boggled my mind. I've deduced that the formula to calculate orabf's letter combinations is: combinations = combinationsn-1 * 26 + 1 where combinations0=27. I wonder why that is. Perhaps it's a programming error. Another thing for improvement is the way it approaches passwords with the full characterset. This set (which follows the ASCII table) is as follows: NULL ! " # $ % & ' ( ) * + , - . / 0-9 : ; < = > ? @ A-Z [ \ ] ^ _ ` { | } ~ orabf checks for passwords that start with the full characterset, while an Oracle password can only begin with a letter. So there is another possible speed improvement.
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #11 on: Sep 21st, 2005, 11:39am » |
Quote | Modify
|
I see it as a possibility to make orabf perform even better. I've send a mail to toolcrypt.org with the suggestions. In the meantime I'm doing some performance tests on passwords with the full characterset (as far as possible in Oracle of course). Already it shows that using extra characters increases the time to crack a password dramatically. Cracking a 5 letter password takes 16 seconds, but with the full characterset it is probably going to take anything between 3/4 hour to a full hour. I'll keep you informed. Another thing I should point out to anyone reading my performance test is that when 'ZZZZZ' as a password takes 16 seconds to crack and 'ZZZZZZ' takes about 9 minutes, cracking a 6-letter passwords takes of course anything BETWEEN 16 seconds and 9 minutes. I thought I should add that.
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #12 on: Sep 21st, 2005, 12:36pm » |
Quote | Modify
|
Marcel-jan, If you use A-Z and 0-9 for your 8 characters long passwords you will have 2.901.713.047.668 password! (In reality of this number Oracle would accept 2.818.071.110.712 passwords as correct ones. Any password starting with a number would be refused) If orabf computes 1.000.000 passwords/sec it will take it 34 days to compute all 2.901.713.047.668 hashes. It would be very nice if orabf would take into account any password policy defined in Oracle. A password policy could dramatically (?) reduce the universum from which passwords are chosen. Many use the standard password policy as defined by Oracle in utlpwdmg.sql: password should contain at least one character, one digit and one punctuation. regards, Ivan p.s. I calculated 2.901.713.047.668 as: Omega (n 1 to = 36^n 2.818.071.110.712 is the above without those passwords starting with a digit
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #13 on: Sep 21st, 2005, 8:58pm » |
Quote | Modify
|
Hello Marcel-Jan and Isaez The algorithm of orabf is correct. Oracle passwords can start with every character from the entire characterset. If your password start with a special character you must use a doublequote ". SQL> alter user scott identified by 1alex; alter user scott identified by 1alex * ERROR at line 1: ORA-00988: missing or invalid password(s) SQL> alter user scott identified by "1alex"; User altered. SQL> alter user scott identified by "!alex"; User altered. SQL> alter user scott identified by "[alex"; User altered. SQL> alter user scott identified by " alex"; User altered. Regards Alexander ---
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
Pete Finnigan
PeteFinnigan.com Administrator
Oracle Security is easier if you design for it
View Profile | WWW | Email
Gender:
Posts: 309
|
|
Re: Toolcrypt's orabf
« Reply #14 on: Sep 22nd, 2005, 9:45am » |
Quote | Modify
|
Kornbrust, There are some characters that can't be used even inside quotes. Like &, @ . Those two characters are interpreted by sqlplus (at least & is). @ is interpreted as a remote connection. Also, not every dba/developer uses quotes in alter user to allow their users use punctuation characters. By the way: people think that strong passwords are password that comply with rules like: at least 6 characters, at least one digit and at least one punctuation. Those rules are in reality in favor of brute force attacks! There is a paper from Lohkee that you can find through Google. Look for : Lohkee strong passwords zucchini The web page doesn't exists anymore but you can read it from the cache. regards, Ivan
|
|
IP Logged |
Pete Finnigan (email:pete@petefinnigan.com) Oracle Security Web site: http://www.petefinnigan.com Forum: http://www.petefinnigan.com/forum/yabb/YaBB.cgi Oracle security blog: http://www.petefinnigan.com/weblog/entries/index.html
|
|
|
|