| By Theresa Bui-Friday | Article Rating: |
|
| May 23, 2008 02:15 PM EDT | Reads: |
10,781 |
Unlike commercially supported third-party products, only one out of every 10 open source projects has a vendor offering commercial support.[2] As a result, organizations that use OSS components are largely “on their own” when it comes to patches, upgrades, or vulnerability assessments. The open source community is both committed and equipped to constantly improve upon their projects. The large number of community members work to provide updates to vulnerabilities often within hours of their revelation. If you aren’t patching OSS vulnerabilities in your code base, you’re not taking advantage of the robust support the open source community offers – essentially leaving half of the value of open source on the table.
Closing the Application Security Gap
Software security vulnerabilities are often caused by defects in specification, design, and/or implementation. It is becoming very clear that decisions made during the software development life cycle
significantly impact the likelihood of security incidents and the success in
responding to them.
According to research by Gartner and Symantec, close to 90% of software attacks are aimed at the application layer.[3] Once application vulnerabilities have been exploited, a company is at risk not only for the potential loss of vital customer or company data, but may even be open to additional attacks against other systems within the company’s network.
Most organizations believe they have adequate application security solutions in place such as firewalls, web-based authentication, intrusion detection, and identity management systems. Though these are important parts of an overall security arsenal, these solutions secure only the perimeter. None focus on securing applications from the inside out.
As engineering departments adopt richer, interactive environments – especially as they embrace Web 2.0 capabilities – they become even more susceptible to vulnerabilities (i.e., cross-site scripting). Unknowingly introduced by developers via OSS, vulnerabilities are easily exploited by knowledgeable outsiders. With Web 2.0 as the new software ecosystem, relying on perimeter controls alone is grossly insufficient. Externally facing mission-critical software applications must have security features encoded in from the start.
Gartner notes that Web 2.0 offers a collection of lightweight technologies and techniques that simplify the development of sophisticated code and content. Yet, technology light-weightedness, ease of use, and user friendliness come at a price – namely, lack of security and neglect for protection of IP.[4]
Application security cannot be adequately addressed until application development and security teams agree to work together to understand and manage security. Neither role benefits from the existence of silos. For instance, quality assurance and virus prevention are not mutually exclusive in application development.
Development teams commonly (and mistakenly) believe that security is solely the responsibility of security professionals. For many companies the development process has focused only on designing, architecting, coding, and testing applications to ensure that they fulfill functional requirements. With today’s strained budgets and resources, applications are not adequately tested for coding defects, vulnerability assessment, or conditions that could leave the applications exposed to external attacks.
Simultaneously, the mandate for security teams has been focused on defending the perimeter against external attacks. They have made significant investment in firewalls, web-based authentication, intrusion detection, and identity management systems. Security professionals are not coders and often don’t realize that decisions made during the development process have significant material impact on the deployed applications they are mandated to protect.
Therefore, neither team can adequately cover application security problems alone. Hackers, who often know coding methodologies better than security professionals and know security better than programmers, are exploiting this gap.
How to Eliminate Undocumented Code
It is the responsibility of security,
development, and IT teams to ensure that their developers use processes that
produce secure software. Working together, these three departments can
effectively insert application security for open source into the overall
security strategy by:
- Conducting code-level security reviews in addition to penetration tests for their internally developed code before deployment
- Insisting that code-level audits be conducted by outsourced development and business partners
- Ensuring that all other third-party code included in their software applications is identified and tracked for security flaws and updated version information
- Ensuring that internally developed applications have adequate checkpoints that enable thorough audit trails
- This means that development organizations must continue to acquire the high level of security expertise required, identify processes for producing secure software, adopt them, and consistently use them when they produce, enhance, maintain, and rework the software that supports a strong application infrastructure.
- Enacting best practices for open source use empowers organizations to use it to their best advantage as a solution for driving continual innovation and growth.
An application security for open source strategy requires processes, training, and tools. It also requires a partnership between security and engineering teams. The nature of the partnership is based on two key elements. The first element is an accurate inventory of open source components in use provided by the engineering team. This may be more challenging than it appears, since most large applications have had many different developers over a period of years, each with the potential to utilize open source components. The second element includes a system, managed by the security team, to associate the open source projects in use with known and published vulnerabilities. With this new awareness, coupled with robust new tools for open source management, both elements can be addressed and the gap can be easily bridged.
Engineering managers should be able to confidently answer the following 10 key questions to ensure that both teams are working together to secure deployed applications:
- Where is our OSS inventory, including all versions in use?
- How accurate is the information?
- Where does the OSS we use reside inside our code base?
- How are we using the OSS?
- Are there vulnerabilities within the versions we’re using?
- Are we on the latest version – if not, why?
- Have we paid for commercial support for all the OSS projects in our code base?
- If not, who is responsible for monitoring and upgrading to newer versions?
- What is our OSS use policy and approval process?
- Are we compliant with and enforcing our own policy?
Immediate Action Items for Your Security Team
- Begin monitoring open source project sites and other sources for vulnerability alerts, based on existing OSS inventory
- Assess relevance of alerts against internal usage
- Make recommendation for version or patch upgrade as relevant
The widespread availability and use of open source has dramatically changed the nature of software development projects with substantial benefits including reduced development time and cost. This strategy brings with it, however, the possibility that a large portion of a software product or internal application could be comprised of undocumented content. With the increasing requirement for protecting information data, the security of core applications is essential. An application security strategy requires processes, training, and a spectrum of solutions. It also requires a partnership between security and engineering teams that has, until recently, been neglected. With new awareness and open source management systems, the gap that once existed can be easily secured.
References
- IDC, “Open Source in Global Software: Market Impact, Disruption, and Business Models.” Doc# 202511, July 2006.
- Based on Palamida research conducted February 29, 2008 - March 4, 2008, examining support structure for 3,168 popular open source projects.
- Briggs, Linda L. “Application Security Comes Under Attack.” Application Development Trends, June 2006.
- Gartner, Inc. “The Creative and Insecure World of Web 2.0.” February 2008.
Published May 23, 2008 Reads 10,781
Copyright © 2008 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Theresa Bui-Friday
As VP of Product Marketing, Theresa Bui-Friday is responsible for Palamida's positioning, core communications content, go-to-market initiatives, and press and analyst relations team. She has over 12 years' of expertise in the software industry with a focus on emerging technology. Prior to Palamida, Theresa was Director of Strategic Marketing at Cacheon. She was also Director of Enterprise Marketing for Embark.com, which is now Princeton Review, where she held global responsibility for product marketing of the enterprise product lines, including competitive and market evaluation, strategic planning and outbound marketing programs.
- Kindle 2 vs Nook
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- Confessions of a Ulitzer Addict
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- It's the Java vs. C++ Shootout Revisited!
- Cloud Computing Can Revitalize Your Career as Software Developer
- IBM Could "Reinvent" Java: Mills
- Oracle & Cloud Computing: Exclusive Q&A with SVP Richard Sarwal
- A Brief History of Cloud Computing
- Kindle 2 vs Nook
- Cloud CEOs, CTOs & SVPs to Speak at 4th International Cloud Computing Expo
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- Ajax in RichFaces 3.3, JSF 2 and RichFaces 4
- Confessions of a Ulitzer Addict
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- JavaServer Faces (JSF) vs Struts
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- What's New in Eclipse?
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- i-Technology Predictions for 2007: Where's It All Headed?








































