Perimeter
10/4/2010
05:05 PM
Adrian Lane
Adrian Lane
Commentary
Connect Directly
RSS
E-Mail
50%
50%

Data Security: You're Doing It Wrong!

Pete Finnegan's recent webinar, "The Right Way to Secure Oracle," was pretty controversial. His message? Database security is not what's important -- data security is.

Pete Finnegan's recent webinar, "The Right Way to Secure Oracle," was pretty controversial. His message? Database security is not what's important -- data security is.

Most companies use the checklist/tip based approach to secure their databases. However, this is a flawed approach. The checklists available for hardening are based around parameters and the core database software" not the data. The goal must be to secure the *data*, not the software; of course we must use the software settings to secure the data, but the focus of any data security project must be the data.

While I agree with what Pete is trying to do, I don't believe the assertion is correct. If the container where you store your data (i.e., a relational database) is insecure, then data security can be bypassed altogether. SQL injection attacks should prove that data security is dependent on the container as well. But the essence of what Finnegan is advocating is dead-on: Data security should be the focus, and it's not. The correct approach is you do both. That means you can't simply go through a list of best practice to secure the container and expect data to be secure by proxy.

Why is that so important? Because data does not know how to protect itself. Security and appropriate use is not an intrinsic characteristic of the data. Data needs to be secured, and not just black-and-white access control settings, but by defining realistic threats and employing countermeasures. That takes more analysis beyond a configuration and vulnerability check list.

Consider that when we move data into a relational database we map data elements into rows and columns and match the data type to the data attributes. In essence we define the meta-data. This helps us keep bad data from being inserted, and it also helps us with reporting and analysis functions (e.g., high value, average, alphabetical ordering, etc). When we design tables we balance normalization for efficient storage with query performance. We rewrite queries to shorten the execution plan. We use primary keys to avoid duplicates. We partition tables to address scalability. We may use integrity constrains, foreign key relationships, or triggers to control how data is inserted and used. All of these items are design considerations.

It should be exactly the same for data security!

When was the last time you architected a database system for data security? I'll bet never. I think that is the thrust of Pete's argument: DBAs are focused on the container, not on the contents. The same care and attention to detail should be -- and can be -- given for data security as it is for database design. Data security measures are just another form of system design. Where is the sensitive information? How is it used? Who should have access to it? What threats should it be protected from? The answers to these questions help us select database internal features, such as labeling, masking, and auditing, that enhance access controls and authorization maps. Database activity monitoring augments database security measures to verify usage. In some cases we simply don't trust the database container, or the security measures are not granular enough, so we encrypt before it is stored -- at the application layer.

Next time you architect a database, include data security as one of your design constraints. Data security is the goal, and database security is just one of the building blocks to meet that goal.

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
Register for Dark Reading Newsletters
Partner Perspectives
What's This?
In a digital world inundated with advanced security threats, Intel Security seeks to transform how we live and work to keep our information secure. Through hardware and software development, Intel Security delivers robust solutions that integrate security into every layer of every digital device. In combining the security expertise of McAfee with the innovation, performance, and trust of Intel, this vision becomes a reality.

As we rely on technology to enhance our everyday and business life, we must too consider the security of the intellectual property and confidential data that is housed on these devices. As we increase the number of devices we use, we increase the number of gateways and opportunity for security threats. Intel Security takes the “security connected” approach to ensure that every device is secure, and that all security solutions are seamlessly integrated.
Featured Writers
White Papers
Cartoon
Current Issue
Dark Reading's October Tech Digest
Fast data analysis can stymie attacks and strengthen enterprise security. Does your team have the data smarts?
Flash Poll
Title Partner’s Role in Perimeter Security
Title Partner’s Role in Perimeter Security
Considering how prevalent third-party attacks are, we need to ask hard questions about how partners and suppliers are safeguarding systems and data.
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2013-4594
Published: 2014-10-25
The Payment for Webform module 7.x-1.x before 7.x-1.5 for Drupal does not restrict access by anonymous users, which allows remote anonymous users to use the payment of other anonymous users when submitting a form that requires payment.

CVE-2014-0476
Published: 2014-10-25
The slapper function in chkrootkit before 0.50 does not properly quote file paths, which allows local users to execute arbitrary code via a Trojan horse executable. NOTE: this is only a vulnerability when /tmp is not mounted with the noexec option.

CVE-2014-1927
Published: 2014-10-25
The shell_quote function in python-gnupg 0.3.5 does not properly quote strings, which allows context-dependent attackers to execute arbitrary code via shell metacharacters in unspecified vectors, as demonstrated using "$(" command-substitution sequences, a different vulnerability than CVE-2014-1928....

CVE-2014-1928
Published: 2014-10-25
The shell_quote function in python-gnupg 0.3.5 does not properly escape characters, which allows context-dependent attackers to execute arbitrary code via shell metacharacters in unspecified vectors, as demonstrated using "\" (backslash) characters to form multi-command sequences, a different vulner...

CVE-2014-1929
Published: 2014-10-25
python-gnupg 0.3.5 and 0.3.6 allows context-dependent attackers to have an unspecified impact via vectors related to "option injection through positional arguments." NOTE: this vulnerability exists because of an incomplete fix for CVE-2013-7323.

Best of the Web
Dark Reading Radio
Archived Dark Reading Radio
Follow Dark Reading editors into the field as they talk with noted experts from the security world.