Esteban Martinez Fayo, a researcher with AppSec Inc., will show at the Ekoparty security conference in Buenas Aires, Argentina, an attack exploiting cryptographic flaws he discovered in Oracle's database authentication protocol. It lets an attacker without any database credentials brute-force hack the password hash of any database user so he then can get to the data.
Martinez Fayo and his team first reported the bugs to Oracle in May 2010. Oracle fixed it in mid-2011 via the 220.127.116.11 patch set, issuing a new version of the protocol. "But they never fixed the current version, so the current 11.1 and 11.2 versions are still vulnerable," Martinez Fayo says, and Oracle has no plans to fix the flaws for version 11.1.
That leaves those database users at risk of what Martinez Fayo says is a fairly simple -- yet potentially devastating -- attack against the so-called stealth password cracking vulnerability. "It's pretty simple. The attacker just needs to know a valid username in the database, and the database name. That's it," he says.
Then it's just a matter of brute-forcing the hashes, taking advantage of the Oracle authentication protocol's inadvertent leakage of information in the initial handshake. There's no man-in-the-middle required: "The attacker just needs to initiate standard authentication with the server. The server will answer ... from the password salt of the user. That's all the attacker needs," he says.
Martinez Fayo says this is part of the authentication protocol's operation, but prior to the actual authentication itself. "They can do a brute-force attack from there," he says. "This is a critical issue because it's very easy to exploit, and it doesn't require any privileges ... anyone with a network connection to the database [can do it]."
"It destroys a very critical protocol ... it seems the developers didn't pay much attention to cryptographics 101," Martinez Fayo says. "It's very basic."
Oracle's fix for the flaw is basically a new but incompatible version of the protocol that leaves the current version still open to attack. "Oracle has been very quiet about [the flaw]," says Alex Rothacker, director of security research for AppSec's TeamSHATTER. "The only comment from them was a paragraph about a new protocol fixing some security issues. They haven't said anything that made people aware to update the database and all of the database clients."
The 18.104.22.168 patchset wasn't part of Oracle's Critical Patch Update (CPU) cycle, and includes change for both the client and server side.
[ Database indexes the new "low-hanging" fruit for database vulnerabilities. See Hacking Oracle Database Indexes. ]
Oracle clients with versions prior to 22.214.171.124 won't be able to connect to databases supporting the new version, the researchers say.
There are workarounds: "Disable the protocol in Version 11.1 and start using older versions like Version 10g, which [contains an older protocol that] is not vulnerable," AppSec's Martinez Fayo says.
Other options: employing external authentication via SSL or directory services, for example; resetting the SEC_CASE_SENSITIVE_LOGON initialization parameter to FALSE; and removing 11g hashes so the database will default to 10g hashes.
"It is vital for organizations that deploy Oracle databases affected by these vulnerabilities to administer strong workarounds to prevent an attack," Martinez Fayo says.
Have a comment on this story? Please click "Add Your Comment" below. If you'd like to contact Dark Reading's editors directly, send us a message.