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.

Perimeter

12/13/2010
08:48 PM
Adrian Lane
Adrian Lane
Commentary
50%
50%

Gawker Goof

Sometimes it helps knowing what not to do with database security to clarify why you need database security -- and sometimes somebody else goofs up real bad and sheds light on the little security details you need to get right

Oracle came out with Database Security Worst Practices this week, a list of seven things you should not do. It's a fairly good list if you are an Oracle customer, covering the basic preventative security settings you should check before any database server is deployed into production. But I have a couple that trumps them all, especially if your databases support Web applications:

Don't store passwords in clear text!

Don't encrypt passwords if you leave the encryption keys unsecured!

Apparently that is just what the developers at Gawker did. If you have a user account on Gawker, Gizmodo, Jalopnik, Jezebel, Kotaku, Lifehacker, Deadspin, io9, or Fleshbot, Gawker is telling you that your user credentials have been compromised. For the user credentials to have been compromised means they were stored in clear text, or the sites were using encryption and left the encryption keys somewhere easy to get. As their websites claim, they were encrypted; I'll give them the benefit of the doubt. But it means the hackers have access to everything the users did, and possibly some of the administrative accounts as well.

Most public-facing Web applications do not encrypt passwords. They use what is called a hash function. Both completely alter the original value so it's pretty much impossible to guess the password. The difference between the two is that encryption can be reversed back into the original value by using a secret encryption key. The security of the password is only as strong as the security of the key. A hash function permanently obfuscates the password. This is done so if someone should manage to break into your database, he does not automatically obtain all user passwords; rather he gets the hashed value that cannot be used as a password. When a user logs into the system, the password he sends to the database is also hashed; if the new hashed value matches the hashed value stored for that user account, that person is logged into the database.

I am going to bet a lot of you already knew that. And you know that every major relational database platform stores passwords for users of that database as a hashed value in a secured table. And most RDBMSs offer a hash function as a stored procedure call as well, just in case you maintain your own user and password tables.

But this bears explaining; clearly some developers out there apparently did not get the memo that hackers hack databases. And that secret encryption keys need to be kept secret. If they had or used hashing, then hackers getting the user name -- and even the email credentials -- the accounts would not have been compromised.

This is a colossal failure that would place No. 3 on my list of things not to do with database security. No. 2 would be clear text passwords. No. 1 would be leaving the administrator password at the default setting. Let's hope Gawker at least got that right.

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
Comments
Oldest First  |  Newest First  |  Threaded View
COVID-19: Latest Security News & Commentary
Dark Reading Staff 9/25/2020
Hacking Yourself: Marie Moe and Pacemaker Security
Gary McGraw Ph.D., Co-founder Berryville Institute of Machine Learning,  9/21/2020
Startup Aims to Map and Track All the IT and Security Things
Kelly Jackson Higgins, Executive Editor at Dark Reading,  9/22/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
Special Report: Computing's New Normal
This special report examines how IT security organizations have adapted to the "new normal" of computing and what the long-term effects will be. Read it and get a unique set of perspectives on issues ranging from new threats & vulnerabilities as a result of remote working to how enterprise security strategy will be affected long term.
Flash Poll
How IT Security Organizations are Attacking the Cybersecurity Problem
How IT Security Organizations are Attacking the Cybersecurity Problem
The COVID-19 pandemic turned the world -- and enterprise computing -- on end. Here's a look at how cybersecurity teams are retrenching their defense strategies, rebuilding their teams, and selecting new technologies to stop the oncoming rise of online attacks.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2020-15208
PUBLISHED: 2020-09-25
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, when determining the common dimension size of two tensors, TFLite uses a `DCHECK` which is no-op outside of debug compilation modes. Since the function always returns the dimension of the first tensor, malicious attackers can ...
CVE-2020-15209
PUBLISHED: 2020-09-25
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, a crafted TFLite model can force a node to have as input a tensor backed by a `nullptr` buffer. This can be achieved by changing a buffer index in the flatbuffer serialization to convert a read-only tensor to a read-write one....
CVE-2020-15210
PUBLISHED: 2020-09-25
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, if a TFLite saved model uses the same tensor as both input and output of an operator, then, depending on the operator, we can observe a segmentation fault or just memory corruption. We have patched the issue in d58c96946b and ...
CVE-2020-15211
PUBLISHED: 2020-09-25
In TensorFlow Lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, saved models in the flatbuffer format use a double indexing scheme: a model has a set of subgraphs, each subgraph has a set of operators and each operator has a set of input/output tensors. The flatbuffer format uses indices f...
CVE-2020-15212
PUBLISHED: 2020-09-25
In TensorFlow Lite before versions 2.2.1 and 2.3.1, models using segment sum can trigger writes outside of bounds of heap allocated buffers by inserting negative elements in the segment ids tensor. Users having access to `segment_ids_data` can alter `output_index` and then write to outside of `outpu...