Home > Software Quality Tips > Application Security Strategies > What to look for in a Web application security testing tool
Software Quality Tips:
EMAIL THIS
 TIPS & NEWSLETTERS TOPICS 

APPLICATION SECURITY STRATEGIES

What to look for in a Web application security testing tool


Kevin Beaver, CISSP
06.23.2007
Rating: --- (out of 5)


Software quality news and advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


Kevin Beaver

I get a lot of questions regarding what the ideal Web application security scanner should be able to do and how it should "handle." Having used most of the commercial, open source and freeware tools over the past several years, I've come across a lot of likes and even more dislikes. The good news is that commercial scanner vendors are starting to realize what's important, and they're making their tools much more capable and friendly to the average user.

The following are features of Web application security testing tools that I believe are absolute must-haves if you do a lot of scanning. They'll save you lots of time and effort and maximize the number of valid vulnerabilities that you'd never find otherwise.

In the end you'll save money (even if you have to pay more to get a good tool), and you'll end up coming across as a true expert that takes Web application security testing seriously.

  1. Ease of use. This is more important than most people think. Many of us -- especially the vendors and developers -- think that a more complex application equals more features and a better overall tool. I disagree! Being a pretty technical guy, I'm usually up for a challenge but not at the expense of lost time. We all have way too much to do as it is, and wasting time just trying to get a tool installed and up and running a basic scan is not my idea of fun.
  2. Standalone tools such as a Web proxy, HTTP editor, server fingerprinting, and an HTTP discovery service that can scan various ports across your entire network for live Web servers. These are extremely valuable, especially for manual testing, which is required in order to perform a thorough assessment and easily accounts for half of all vulnerabilities discovered. A major bonus -- something you won't find in most tools -- are automated SQL injection capabilities that takes a vulnerable URL and automates the standard and blind SQL injection processes.
  3. Logging capabilities that give you the option to track everything from basic URLs visited to errors generated all the way down to the specific headers sent/received via HTTP at the packet level.
  4. Authenticated testing that allows you to plug in the user name and password and lets the tool crawl through, test and exploit the application as a trusted user. You can find a lot of vulnerabilities, such as SQL injection and JavaScript weaknesses, this way that an unruly user can exploit. The ability to record custom login scripts for non-standard forms is a bit bonus, otherwise you'll be pressed to find a way to perform authenticated tests on applications that use custom login mechanisms.
  5. The ability to pause a scan and resume at a later time. This is very valuable, especially when you suspect the scan is creating a resource burden on the server and when trying to get around automated blocking by firewalls and IPSs.
  6. The ability to skip a current test or URL if you suspect problems or hang-ups, or if you accidentally load something like a WebSphere-based policy to run against your IIS-based application, etc.
  7. The ability to filter false positives or unimportant findings from the report and future scans. One thing that every Web application scanner does consistently is generate false positives. Being able to control what's seen, reported and scanned for again in the future can shave off a lot of time and hassle.
  8. Password cracking capabilities to test login mechanisms. Dictionary cracking is the most common, but it's also the most limited. The ability to brute force adds more value to your testing, but it is hard to come by. It definitely wouldn't hurt to ask/request this of your vendor.
  9. The ability to go beyond simple signature attacks being sent to the application. Instead, the ability for a "smart" scan whereby the scan's direction and depth are adjusted in real-time based on feedback it receives from the application. This is a new area of scanning capabilities for the higher-end scanners. It has yet to be perfected, but you can tell a difference in scan times and false positives when it's being used.
  10. The ability to edit or remove specific scan queries from built-in policies that you know may cause problems with your Web server, middleware or application.
  11. The ability to scan multiple sites at once will save you a ton of time. You likely won't want to run more than three or four at once, depending on your network/Internet connection speed and local resources. This is something that I depend on a lot and can't imagine working without.
  12. The ability to throttle back HTTP threads/requests for when you need to run potentially harmful tests against a sensitive production server during peak times. Being able to show the policy used and/or state of the tool's configuration at the time of a scan is invaluable in the event of a problem.
  13. Compliance-related reporting with pre-canned and customizable report templates for all the big regulations and standards, especially the OWASP Top 10.

More information on Web application security testing tools
Free Web application security testing tools you need to get to know

Ways to automate SQL injection testing

ASP.NET security tools and techniques

Using fuzzer tools to find vulnerabilities

I highly recommend getting an evaluation version of the tool. If you can't, this may not be a vendor you want to deal with anyway. After installing the tool on your local system, I guarantee you'll know within 15 minutes if it's going to be a good fit for you based on the way you think and work. If during the trial period you come across any of the following issues, try to clarify with the vendor whether the specific issue is a known problem or "undocumented feature":

  • Scan times in excess of 30-45 minutes, especially when scanning a relatively simple site in an unauthenticated fashion

  • Unexplained hang-ups when scanning that are resolved only by skipping the current test

  • Obvious application memory leaks that cause you to have to restart the application and your scan. (It sounds trite, but I see this often.)

  • The inability to load the application to gain access to previous scan data after your license has expired. (Major pain!)

If you come across those issues and can't get a reasonable explanation, run away -- fast.

In the majority of cases, you're going to get what you pay for in a Web application security testing tool. At the end of the day, find a tool that you feel comfortable with and one that works well in your environment. Never underestimate the value of a little up-front homework when selecting the right Web vulnerability scanner. It will pay off.

-----------------------------------------
About the author: Kevin Beaver is an independent information security consultant, speaker, and expert witness with Atlanta-based Principle Logic, LLC. He has more than 19 years of experience in IT and specializes in performing information security assessments revolving around IT compliance. Kevin has authored/co-authored six books on information security including Hacking For Dummies and Hacking Wireless Networks For Dummies (Wiley) as well as The Practical Guide to HIPAA Privacy and Security Compliance (Auerbach). He's also the creator of the Security On Wheels series of audiobooks. Kevin can be reached at kbeaver@principlelogic.com.


Rate this Tip
To rate tips, you must be a member of SearchSoftwareQuality.com.
Register now to start rating these tips. Log in if you are already a member.




Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google



RELATED CONTENT
Application Security Strategies
Rich Internet applications security testing checklist
The lowdown on PCI compliance
Web 2.0 application security troubleshooting, testing tutorial
Expert resolves issues plaguing OpenSTA users
Fixing four Web 2.0 input validation security mistakes
Social engineering training could disrupt botnet growth
Web security problems: Five ways to stop login weaknesses
Preparing for testing applications in the cloud
The role of quality assurance (QA) pros in software security
Common software security risks and oversights

Software security testing tools
Free tools for Agile testers
Put a stop to software espionage by watermarking source code
How to make your software tamperproof
How can I tell if my software security has been breached?
Lesser-known free software testing tools testers should try
Demo: Using WebGoat, a free software testing tool
Rich Internet applications security testing checklist
Finding cross-site scripting (XSS) application flaws checklist
Webgoat Tutorial
Retaking command of your hacked software

Web application security tools and services
Static analysis tool helps software engineers find bugs during builds
Automated security tool finds flaws in enterprise apps
Parasoft enhances its Application Security Solution
Cenzic Web application security tool targets CSRF attacks
Ruby on Rails security audit service available
Secure software measures: Their strengths and limitations
HP software security suite treats vulnerabilities as defects
Dynamic analysis tool from Coverity looks at concurrency defects
Veracode provides security audits for externally sourced code
Enhanced application protection in Dotfuscator Professional 4.3

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
penetration testing  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary

DISCLAIMER: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.



Software Design & Testing - Project Management
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts