Automation Is Your Ally
Although Web application security testing can be done manually, doing
so is problematic because it can be expensive, and the process can be
quite lengthy. A better alternative is automated testing.
The first approach, white-box testing, tests the individual
components of your application. Often this testing is performed at the
method or function level to show errors in specific functions, and is
often combined with code scanning tools and peer reviews.
Unfortunately, it is really hard to do effective white-box testing.
Tests are frequently written by the same person writing the code. If
the developer is not security aware, he will not know what tests are
needed. Furthermore, white-box testing is subject to poor discovery of
security errors since many attacks involve multiple components or have
specific timing not covered by unit testing.
A more popular approach to security testing is black-box testing.
Black-box testing assumes you know nothing about how the "inside" of
the application works. Your knowledge of the application is limited to
seeing the application's input and output. This is the most common form
of security testing, and is used by auditors, penetration testers, and
hackers. The test(s) consist of modifying "normal" user input in an
attempt to get the application to behave in an unexpected way.
Start with a Solid Foundation
An automated security scanning tool such as IBM Rational AppScan
is a solid foundation for your testing efforts. IBM Rational AppScan
performs security scans on Web applications and Web services
implementations. The scanning engine continuously tests for security
and compliance issues and provides actionable reports with fix
recommendations. IBM Rational AppScan tests server-side functions and
vulnerabilities by interacting with the application as a typical client
(applications that use Flash and/or JavaScript are fully supported).
AppScan tests Web services by acting as a SOAP client and provides
tools for developers to manipulate inputs and evaluate the results.
IBM Rational AppScan classifies security vulnerabilities into high-,
medium-, low-, and informational-severity levels. Each finding is
described in detail and includes the URL that produced the result, a
detailed description of the security risk, a recommendation for
addressing the issue, and the raw request/response data. AppScan's
delta analysis reports also let you know what changes have occurred
from one scan to the next. The reported information includes what has
been fixed, what has not and what new security issues have been
introduced since the initial scan.
In addition to its many other capabilities, AppScan also eases
regulatory compliance. AppScan generates over 40 out-of-the-box
regulatory compliance templates and reports including California
Assembly Bill No. 1950, Children's Online Privacy Protection Act
(COPPA); Director of Central Intelligence Directive (DCID) 6/3;
Electronic Funds Transfer; Payment Card Industry (PCI) Data Security
Standards and so on.
Get Scanning
Performing a thorough Web application security assessment is a complex
task which should be approached like any other software analysis--with
a methodology, testing procedures, a set of helpful tools, skills and
knowledge. Today's Web applications span over thousands of Web pages,
and accept a vast amount of input from users, in many different
locations. This requires going over each script and each parameter, and
testing it for numerous possible security flaws. This tedious job of
assessing security vulnerabilities can be greatly streamlined using
automated tools such as IBM Rational AppScan.
More Resources