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
Threaded  |  Newest First  |  Oldest First
Stop Defending Everything
Kevin Kurzawa, Senior Information Security Auditor,  2/12/2020
Small Business Security: 5 Tips on How and Where to Start
Mike Puglia, Chief Strategy Officer at Kaseya,  2/13/2020
Architectural Analysis IDs 78 Specific Risks in Machine-Learning Systems
Jai Vijayan, Contributing Writer,  2/13/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
6 Emerging Cyber Threats That Enterprises Face in 2020
This Tech Digest gives an in-depth look at six emerging cyber threats that enterprises could face in 2020. Download your copy today!
Flash Poll
How Enterprises Are Developing and Maintaining Secure Applications
How Enterprises Are Developing and Maintaining Secure Applications
The concept of application security is well known, but application security testing and remediation processes remain unbalanced. Most organizations are confident in their approach to AppSec, although others seem to have no approach at all. Read this report to find out more.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2020-1842
PUBLISHED: 2020-02-18
Huawei HEGE-560 version 1.0.1.20(SP2); OSCA-550 and OSCA-550A version 1.0.0.71(SP1); and OSCA-550AX and OSCA-550X version 1.0.0.71(SP2) have an insufficient authentication vulnerability. An attacker can access the device physically and perform specific operations to exploit this vulnerability. Succe...
CVE-2020-8010
PUBLISHED: 2020-02-18
CA Unified Infrastructure Management (Nimsoft/UIM) 9.20 and below contains an improper ACL handling vulnerability in the robot (controller) component. A remote attacker can execute commands, read from, or write to the target system.
CVE-2020-8011
PUBLISHED: 2020-02-18
CA Unified Infrastructure Management (Nimsoft/UIM) 9.20 and below contains a null pointer dereference vulnerability in the robot (controller) component. A remote attacker can crash the Controller service.
CVE-2020-8012
PUBLISHED: 2020-02-18
CA Unified Infrastructure Management (Nimsoft/UIM) 9.20 and below contains a buffer overflow vulnerability in the robot (controller) component. A remote attacker can execute arbitrary code.
CVE-2020-1791
PUBLISHED: 2020-02-18
HUAWEI Mate 20 smartphones with versions earlier than 10.0.0.185(C00E74R3P8) have an improper authorization vulnerability. The system has a logic judging error under certain scenario, successful exploit could allow the attacker to switch to third desktop after a series of operation in ADB mode.