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.

Application Security //

Database Security

9/12/2012
10:46 PM
50%
50%

10 Ways Developers Put Databases At Risk

Some of the most important database protection methods start with developers who tap into sensitive data stores

6. Leaving Debug Code In Production
Just like you have to clean the kitchen up after cooking a really good meal, developers have got to clean up their code before putting things in production lest they leave back doors open into the database. One of the most commonly forgotten elements to cause such sloppy back doors is debug code left in production, Gaucher says.

"It's not unknown that developers put in a back door to enable database queries to be directly input for debugging purposes during development," he says. "Forgetting to remove such debug code in production is a silly but all too common mistake."

7. Implementing Shoddy Encryption
According to Anthony Moulton, senior software development engineer for Vigilant, the only thing worse than not using encryption is using it wrong because it gives the organization a false sense of security.

"The devil is in the details, whether it is a hashing function or an encryption routine," Moulton says. "If you don't know how to implement cryptology properly, delegate the task to an expert and do not take your application into production prematurely."

Developers should be especially careful of falling prey to hubris about their L33t skills in cryptology. Today's hackers love home-grown encryption schemes because they're usually done poorly, says Dan Brown, director of security research for Bit9.

"Home-grown encryption provides almost no value to experienced crackers and gives a false sense of security to organizations that deploy it," Brown says. "Ditto for organizations that misunderstand what threat scenarios their super-strong military-grade encryption is intended to address."

8. Putting Blind Trust In Third-Party Code
Using third-party code may save developers a lot of time, but where they shouldn't cut corners is in testing to ensure that a cut-and-paste isn't introducing vulnerable code to the application.

"Developers need to design with the understanding they will be responsible for threat analysis of the entire application, not just the code they've written themselves," Erlin says.

Similarly, when coders use development frameworks, they need to stay up on updates if they want to limit the number of vulnerabilities opening their databases to risk.

"People will use WordPress, Joomla, or any other type of application framework and not keep them properly updated with all the latest security patches," says Kenneth Pickering, development manager of security intelligence for Core Security. "Much like machines are vulnerable, so too are application frameworks."

9. Naïvely Implementing RESTful Architecture
Representational state transfer (REST) architectures might be a useful paradigm, but too many tools generate REST interfaces directly from the database, Karwin says.

"This couples the interface to the schema, and exposes information that attackers can use," he says. "Developers should design REST interfaces for a set of abstract application-specific resource types and resource-appropriate operations, not directly to the physical database tables and generic CRUD operations."

10. Leaving Backup Database Copies Lying Around
Many developers have been chided enough about not using live data in test environments that they've looked for alternative means of testing their applications. Unfortunately, a large subset of these coders will turn to backup databases instead.

"A site may protect the live database well, but do they protect their database backups similarly? Week-old data in a backup may be as damaging in the wrong hands as the live data," Karwin says. "Developers may use backups for testing their work against samples of production data, so development environments must follow security standards as carefully as production environments. Security policies should account for all copies of data, not just the online copy."

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.

Previous
2 of 2
Next
Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
7 Tips for Infosec Pros Considering A Lateral Career Move
Kelly Sheridan, Staff Editor, Dark Reading,  1/21/2020
For Mismanaged SOCs, The Price Is Not Right
Kelly Sheridan, Staff Editor, Dark Reading,  1/22/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
IT 2020: A Look Ahead
Are you ready for the critical changes that will occur in 2020? We've compiled editor insights from the best of our network (Dark Reading, Data Center Knowledge, InformationWeek, ITPro Today and Network Computing) to deliver to you a look at the trends, technologies, and threats that are emerging in the coming year. Download it today!
Flash Poll
How Enterprises are Attacking the Cybersecurity Problem
How Enterprises are Attacking the Cybersecurity Problem
Organizations have invested in a sweeping array of security technologies to address challenges associated with the growing number of cybersecurity attacks. However, the complexity involved in managing these technologies is emerging as a major problem. Read this report to find out what your peers biggest security challenges are and the technologies they are using to address them.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2015-3154
PUBLISHED: 2020-01-27
CRLF injection vulnerability in Zend\Mail (Zend_Mail) in Zend Framework before 1.12.12, 2.x before 2.3.8, and 2.4.x before 2.4.1 allows remote attackers to inject arbitrary HTTP headers and conduct HTTP response splitting attacks via CRLF sequences in the header of an email.
CVE-2019-17190
PUBLISHED: 2020-01-27
A Local Privilege Escalation issue was discovered in Avast Secure Browser 76.0.1659.101. The vulnerability is due to an insecure ACL set by the AvastBrowserUpdate.exe (which is running as NT AUTHORITY\SYSTEM) when AvastSecureBrowser.exe checks for new updates. When the update check is triggered, the...
CVE-2014-8161
PUBLISHED: 2020-01-27
PostgreSQL before 9.0.19, 9.1.x before 9.1.15, 9.2.x before 9.2.10, 9.3.x before 9.3.6, and 9.4.x before 9.4.1 allows remote authenticated users to obtain sensitive column values by triggering constraint violation and then reading the error message.
CVE-2014-9481
PUBLISHED: 2020-01-27
The Scribunto extension for MediaWiki allows remote attackers to obtain the rollback token and possibly other sensitive information via a crafted module, related to unstripping special page HTML.
CVE-2015-0241
PUBLISHED: 2020-01-27
The to_char function in PostgreSQL before 9.0.19, 9.1.x before 9.1.15, 9.2.x before 9.2.10, 9.3.x before 9.3.6, and 9.4.x before 9.4.1 allows remote authenticated users to cause a denial of service (crash) or possibly execute arbitrary code via a (1) large number of digits when processing a numeric ...