Anthony Ricigliano – Software Security

May 23
07:43

2012

Kierans Pollard

Kierans Pollard

  • Share this article on Facebook
  • Share this article on Twitter
  • Share this article on Linkedin

Even the most innovative computer system does nothing without running the application. However, programs that make any application can make the company vulnerable to internal or external security threats.

mediaimage
Even the most innovative computer system accomplishes nothing without an application to run. However,Anthony Ricigliano – Software Security Articles the programs that make up any application can make the enterprise vulnerable to either internal or external security risks. Implementing solid software security assurance (SSA) plans allow organizations to protect their financial resources and intellectual property while minimizing potential business interruptions.

The SSA Plan

An effective SSA plan mitigates the risk of malicious code, security vulnerabilities, and code defects without standing in the way of creating and implementing programs and applications that function as intended. The best methodology builds security protocols into the application throughout the entire lifecycle.

Creating a Comprehensive SSA Plan

A comprehensive Anthony Ricigliano SSA Plan starts with the original system concept and continues until the end of the application’s useful life. Here is a list of components to include in any comprehensive SSA plan:

  • Training – Every member of the development team should be trained in information security.
  • Defining Requirements – Security requirements should be defined during the requirements-definition stage of the application lifecycle and refined as deficiencies are found.
  • Design – As the system is designed, potential vulnerabilities should be identified and accounted for.
  • Coding – At this point, programmers should use the secure coding practices that they learned during training, but the final code should also be reviewed by another team member and scanned by automated tools.
  • Code Handling – Only authorized users should be able to either view or modify code. Separation of duties requires that programmers are not allowed to deploy their own code changes.
  • Testing – This can include both internal and external testing to make sure all vulnerable points were identified and handled.
  • Documentation – Software documentation should include any explicit security measures.
  • Readiness Testing – Prior to final deployment, all modules should be reevaluated for security gaps.
  • Response, Evaluation, and Feedback – Any detected vulnerabilities should be evaluated and reported to the developers for correction.
  • Maintenance – As the software security industry identifies new issues and methodologies, existing code should be updated to integrate new measures with existing systems.

Automated SSA Tools for the Web

An effective SSA plan uses a mix of team and third-party reviews as well as automated tools to minimize the possibility of missing vulnerable code. While these practices should be implemented for every system, web applications present a higher level of risk than any other type of software. Here are a few of the most popular Anthony Ricigliano SSA Tools for the web:

  • Nitko
  • Paros Proxy
  • WebScarab
  • WebInspect
  • Rational AppScan
  • N-Stealth

Measuring SSA Effectiveness

Measurement plays a key role in the SSA process. Implementing and using this type of methodology isn’t a cheap endeavor. However, it’s worth ever penny if your resources are protected from security threats. The following items should be measured for further evaluation:

  • How well and how often are security objectives met?
  • Are processes and controls functioning as expected?
  • Did the requirements stage or review process miss any potential vulnerabilities?
  • How soon were any security gaps identified? How quickly were gaps closed?

SSA Best Practices

To create an effective SSA plan, keep these best practices in mind:

  • Incorporate security measures throughout the entire application development lifecycle.
  • Security requirements should be clearly defined and documented.
  • Code should be available for review by other team members and third-party auditors.
  • Third-party vendors should be required to provide their source code for vulnerability scanning.
  • Every program change should be reviewed by a member of the security team in addition to scanned by an automated tool to minimize security risks.

Integrating secure coding techniques into both in-house software development and application procurement is more critical than ever. Hackers and corporate thieves are working overtime to exploit any potential system weaknesses to steal information or disrupt operations.