Implementing Vulnerability Remediation Strategies Within the Web Application Development Lifecycle

Once you've completed a security assessment as aeffective to have a security consultant provide a few
part of your web application development, it's time tohours of advice on how to remedy application
go down the path of remediating all of the securityvulnerabilities; this advice often shaves hundreds of
problems you uncovered. At this point, yourhours from the remediation process during web
developers, quality assurance testers, auditors, andapplication development.
your security managers should all be collaboratingOne of the pitfalls you want to avoid when using
closely to incorporate security into the currentconsultants during web application development,
processes of your software development lifecycle inhowever, is failure to establish proper expectations.
order to eliminate application vulnerabilities. And withWhile many consultants will provide a list of application
your Web application security assessment report invulnerabilities that need to be fixed, they often neglect
hand, you probably now have a long list of securityto provide the information that organizations need on
issues that need to be addressed: low, medium, andhow to remedy the problem. It's important to establish
high application vulnerabilities; configuration gaffes; andthe expectation with your experts, whether in-house or
cases in which business-logic errors create securityoutsourced, to provide details on how to fix security
risk. For a detailed overview on how to conduct adefects. The challenge, however, without the proper
Web application security assessment, take a look atdetail, education, and guidance, is that the developers
the first article in this series, Web Applicationwho created the vulnerable code during the web
Vulnerability Assessment: Your First Step to a Highlyapplication development cycle may not know how to
Secure Web Site.fix the problem. That's why having that application
First Up: Categorize and Prioritize Your Applicationsecurity consultant available to the developers, or one
Vulnerabilitiesof your security team members, is critical to make
The first stage of the remediation process within websure they're going down the right path. In this way, your
application development is categorizing and prioritizingweb application development timelines are met and
everything that needs to be fixed within yoursecurity problems are fixed.
application, or Web site. From a high level, there areTesting and Validation: Independently Make Sure
two classes of application vulnerabilities: developmentApplication Vulnerabilities Have Been Fixed
errors and configuration errors. As the name says,When the next phase of the web application
web application development vulnerabilities are thosedevelopment lifecycle is reached, and previously
that arose through the conceptualization and coding ofidentified application vulnerabilities have (hopefully) been
the application. These are issues residing within themended by the developers, it's time to verify the
actual code, or workflow of the application, thatposture of the application with a reassessment, or
developers will have to address. Often, but not always,regression testing. For this assessment, it's crucial that
these types of errors can take more thought, time, andthe developers aren't the only ones charged with
resources to remedy. Configuration errors are thoseassessing their own code. They already should have
that require system settings to be changed, servicescompleted their verification. This point is worth raising,
to be shut off, and so forth. Depending on how yourbecause many times companies make the mistake of
organization is structured, these applicationallowing developers to test their own applications
vulnerabilities may or may not be handled by yourduring the reassessment stage of the web application
developers. Oftentimes they can be handled bydevelopment lifecycle. And upon verification of
application or infrastructure managers. In any event,progress, it is often found that the developers not only
configuration errors can, in many cases, be set straightfailed to fix flaws pegged for remediation, but they
swiftly.also have introduced additional application vulnerabilities
At this point in the web application development andand numerous other mistakes that needed to be fixed.
remediation process, it's time to prioritize all of theThat's why it's vital that an independent entity, whether
technical and business-logic vulnerabilities uncovered inan in-house team or an outsourced consultant, review
the assessment. In this straightforward process, youthe code to ensure everything has been done right.
first list your most critical application vulnerabilities withOther Areas of Application Risk Mitigation
the highest potential of negative impact on the mostWhile you have full control over accessing your
important systems to your organization, and then listcustom applications during web application
other application vulnerabilities in descending orderdevelopment, not all application vulnerabilities can be
based on risk and business impact.fixed quickly enough to meet immovable deployment
Develop an Attainable Remediation Roadmapdeadlines. And discovering a vulnerability that could
Once application vulnerabilities have been categorizedtake weeks to rectify in an application already in
and prioritized, the next step in web applicationproduction is nerve-wracking. In situations like these,
development is to estimate how long it will take toyou won't always have control over reducing your
implement the fixes. If you're not familiar with webWeb application security risks. This is especially true
application development and revision cycles, it's a goodfor applications you purchase; there will be application
idea to bring in your developers for this discussion.vulnerabilities that go unpatched by the vendor for
Don't get too granular here. The idea is to get an ideaextended periods of time. Rather than operate at high
of how long the process will take, and get thelevels of risk, we recommend that you consider other
remediation work underway based on the mostways to mitigate your risks. These can include
time-consuming and critical application vulnerabilities first.segregating applications from other areas of your
The time, or difficulty estimates, can be as simple asnetwork, limiting access as much as possible to the
easy, medium, and hard. And remediation will begin notaffected application, or changing the configuration of
only with the application vulnerabilities that pose thethe application, if possible. The idea is to look at the
greatest risk, but those that also will take the longest toapplication and your system architecture for other
time correct. For instance, get started on fixingways to reduce risk while you wait for the fix. You
complex application vulnerabilities that could takemight even consider installing a web application firewall
considerable time to fix first, and wait to work on the(a specially crafted firewall designed to secure web
half-dozen medium defects that can be rectified in anapplications and enforce their security policies) that can
afternoon. By following this process during webprovide you a reasonable interim solution. While you
application development, you won't fall into the trap ofcan't rely on such firewalls to reduce all of your risks
having to extend development time, or delay anindefinitely, they can provide an adequate shield to buy
application rollout because it's taken longer thanyou time while the web application development team
expected to fix all of the security-related flaws.creates a fix.
This process also provides for excellent follow-up forAs you have seen, remedying web application
auditors and developers during web applicationvulnerabilities during the web application development
development: you now have an attainable road map tolifecycle requires collaboration among your developers,
track. And this progression will reduce security holesQA testers, security managers, and application teams.
while making sure development flows smoothly.The associated processes can seem laborious, but the
It's worth pointing out that that any business-logicfact is that by implementing these processes, you'll
problems identified during the assessment need to becost-effectively reduce your risk of application-level
carefully considered during the prioritization stage ofattacks. Web application development is complex, and
web application development. Many times, becausethis approach is less expensive than reengineering
you're dealing with logic - the way the applicationapplications and associated systems after they're
actually flows - you want to carefully consider howdeployed into production.
these application vulnerabilities are to be resolved.That's why the best approach to web application
What may seem like a simple fix can turn out to besecurity is to build security awareness among
quite complicated. So you'll want to work closely withdevelopers and quality assurance testers, and to instill
your developers, security teams, and consultants tobest practices throughout your Web application
develop the best business-logic error correction routinedevelopment life cycle - from its architecture
possible, and an accurate estimate of how long it willthroughout its life in production. Reaching this level of
take to remedy.maturity will be the focus of the next installment,
In addition, prioritizing and categorizing applicationEffective Controls For Attaining Continuous Application
vulnerabilities for remediation is an area within webSecurity. The third and final article will provide you with
application development in which consultants can playthe framework you need to build a development
a pivotal role in helping lead your organization down aculture that develops and deploys highly secure and
successful path. Some businesses will find it more costavailable applications - all of the time.