Skip the navigation
)
Opinion

Security Manager's Journal: Software security comes down to checking inputs

Our manager is surprised how little his company's developers know about making their software safer

By J.F. Rice
April 27, 2011 09:32 AM ET

Computerworld - In my previous column, I described how I found out that my company has some developers writing a new application, which I found out about when they came to me for advice on how to store passwords securely in their database. My advice on authenticating users was to use existing software services, rather than building an inferior duplicate. Subsequently, I've had several conversations with the developers about how to improve the security of their code. Coincidentally, my co-columnist Mathias Thurman has also been dealing with the subject of secure software development.

I've had to get back to basics with our developers. As it turns out, security really is an afterthought in their minds. I was surprised to learn that the developers aren't really familiar with what I consider to be the basic fundamentals of secure coding. I'm not a programmer myself, but I would have expected professional programmers to be more knowledgeable than me. In fact, don't they teach this stuff in college? Evidently not.

In my opinion, the first and most important security precaution that needs to be taken is to validate all inputs. The No. 1 cause of software vulnerabilities (at least until recently, since the threat landscape is always evolving) is buffer overruns. This is the classic path of attack that is easy for an attacker to exploit. When a piece of code accepts input from a user or another piece of software, that input is written to a memory buffer. If the data overflows into the memory space of another process, it can change the behavior of that other process in such a way that an attacker can take advantage, potentially gaining unauthorized access or data on the system.

The best defense against this is to build an extra check into the software that rejects any unexpected input. Every programmer should know how to do this, and they should regularly check all inputs in their software. This requires extra effort and more lines of code, but the security and quality of the software are greatly improved. And the user (or software) providing the data will receive an informative, helpful error if they provide incorrect data. Input validation is a win-win situation for everyone. I can't believe they haven't been doing this all along! And the security manager is the one telling them about it.

Cross-site scripting is another common vulnerability in Web-based software like ours. Everybody has heard of this, but apparently not everyone is defending against it. Cross-site scripting attacks rely on an attacker including a command into the input to a website, much as with buffer overruns. Attackers can run these commands on the server via the Web code, which can allow them to corrupt the website content or even take over the server itself. The solution is the same as for buffer overruns -- check the inputs! If the Web server is expecting a piece of data, say a ZIP code, it should look for specific formats. Something that looks like a software command, which doesn't belong in a ZIP code field, should be automatically rejected, because it doesn't fit the format. This is a simple concept, but it requires a bit of extra work by the developers. Again, it's mutually beneficial because the software will be more secure, and incorrect data will result in a helpful error.



What is Tech Briefcase?
TechBriefcase is a new, free service where IT Professionals can Search, Store and Share IT white papers and content like this. Learn more
Bookmark content
Speed up your research efforts with content across the web.
Search and Store
Find the white papers you need. Create folders for any topic.
View Anywhere
Open your briefcase on your iPhone, tablet or desktop. Share with colleagues.
Don't have an account yet?
Additional Resources
Security KnowledgeVault
WHITE PAPER
Security is not an option. This KnowledgeVault Series offers professional advice how to be proactive in the fight against cybercrimes and multi-layered security threats; how to adopt a holistic approach to protecting and managing data; and how to hire a qualified security assessor. Make security your Number 1 priority.

Read now.

Cut Communications Costs Once and for All
WHITE PAPER
New IP-based communications systems are being deployed by small and midsized businesses at a rapid rate. Learn how these organizations are enabling faster responsiveness, creating better customer experiences, speeding office or mobile interactions, and dramatically reducing existing communications costs.

Read now.

Security White Papers
Driving Secure Enterprise File Sharing and Syncing in the Enterprise
GroupLogic's new activEcho is the industry's only secure Enterprise File Sharing and Synching solution that balances the need for simplicity for the end...
The Enterprise File Sharing Option
Enterprises and IT departments need to address several critical security issues when considering file sharing and syncing products. Many of today's solutions do...
Security Strategies to Virtualizing Internet-Facing Applications
The IT organization at Intel has set a goal to transition their enterprise to a private cloud for their Office and Enterprise applications....
Cloud Security Planning Guide
Cloud security considerations span protecting hardware and platform technologies in the data center to enabling regulatory compliance and defending cloud access through different...
Cloud Security Vendor Round Table
This vendor round table guide will help you to evaluate different cloud technology vendors and service providers based on a series of questions...
All Security White Papers
Security Webcasts
Live Webcast
Data Privacy and Protection in Production Environments: New Research from Ponemon Institute
Date: Wednesday, June 13, 2012, 1:00 PM EDT / 10:00 AM PDT

In a recent study conducted by Ponemon Institute, fifty-five percent of respondents...
Data Privacy and Protection in Production Environments: New Research from Ponemon Institute
Date: Wednesday, June 13, 2012, 1:00 PM EDT / 10:00 AM PDT

In a recent study conducted by Ponemon Institute, fifty-five percent of respondents...
Security Certifications 101 - BlackBerry and all those acronyms what do they mean and why they matter?
FIPS, Common Criteria, CAPS, AISEP, NFC, NIST, Fraunhofer SIT, CESG, DSD - these are just some of the government and industry certifications which...
BlackBerry PlayBook OS 2.0 Security Overview
The presentation provides an overview of BlackBerry PlayBook OS 2.0 security capabilities and features, including: BlackBerry® Balance™ technology, BlackBerry® Bridge, data-at-rest protection, and...
BlackBerry NFC Security Overview
The presentation on NFC security will provide an overview of the security protections built into the BlackBerry platform to protect users, application developers...
Playing Defense: Staying on Top of Your Disaster Recovery Game
When it comes to disaster recovery, rapidly growing data volumes, distributed computing models, and new technologies all combine to present an ever-changing playing...
All Security Webcasts
Newsletter Sign-Up

Receive the latest news test, reviews and trends on your favorite technology topics

Choose a newsletter
  1. View all newsletters | Privacy Policy
IT Jobs