Application Security Self Scanning
Using application security self-scanning to find and fix vulnerabilities will help to ensure that applications are less susceptible to many common attacks. Please note that AppScan can be dangerous if used on production sites and should only be targeted at test or development environments. For extra security, if your application is on a virtual machine, take a snapshot of it before running the scan. Also notify any others who might be working on the application that it may be disrupted during the time of the scan.What follows is a guide to using IBM's Rational AppScan.
What is AppScan?
IBM's Rational AppScan is an application penetration testing tool used by developers to test the security of their web applications while under development and before deployment. AppScan can also be used to scan applications which are already deployed but may not target live production environments. AppScan will spider and crawl any application that it is pointed at. It will then execute about 5,000 canned security tests against every page that it finds. This tool is a "badness-ometer". It will not tell you if your application is good. It will simply tell you if you have really deep security troubles. Developers should still review for accessible sensitive information and other potential holes in an application after running a scan.
AppScan is a "badness-ometer". After running a scan, you should still test for other potential security issues, such as potential exposure of sensitive information and authentication and access control restrictions.
Who should use AppScan? When should scans be run?
Application security self scanning is a tool for developers who would like to test the security of their new sites. Information Security offers AppScan as an application penetration testing tool for this purpose. The earlier that AppScan is run in the development process, the easier it will be to fix the security flaws that it finds. You can run AppScan as frequently as you would like, and developers should consider running AppScan at least as soon as they have a working site and again before release. The University only has one AppScan license so only one scan can be run at a time. For this reason, please notify Information Security before running a scan so that they can confirm it will not conflict with any other scheduled scans. Developers may not yet have access to AppScan. Information Security can add your name or your group's name to the list of AppScan registered users. All scans run from one virtual machine which can be accessed via remote desktop on any Tufts computer once access is granted. Scans can take anywhere from a few hours to a few days depending on the size of the application they are scanning. It is recommended that you start a scan at the end of a workday. Most scans will finish overnight and the results can be reviewed the following day. Information Security is available to help interpret the results of scans and can also offer consulting on the security of your application. Contact Information Security for more information or to set up a time to review scan results.
How to Run a Scan
At the start menu of your computer, open "Programs" and then "Remote Desktop Connection." Enter "weber.uit.tufts.edu" as the computer and then click OK. Next authenticate your credentials by clicking "Use Another Account." Enter TUFTS\ and then your UTLN. If you receive a message that says "The identity of the remote computer cannot be verified. Do you want to connect anyway?" select "Yes."
On the desktop of the virtual machine, open IBM Rational AppScan and select "Create New Scan" and then "Regular Scan". This will launch the Configuration Wizard. Select "Web Application Scan."
You will be prompted to enter a starting URL. Enter the URL of your application and then check the box that says "Scan only links in and below this directory." NOTE: This step is very important. If you leave this box unchecked, AppScan will attempt to scan the entire internet instead of only your application and things it links to. This will exponentially increase the amount of time your scan will take to complete. Please check this box.
Click next. If your application requires a log-in, press "Record." This will open your application's URL and you should then navigate to the log-in screen. AppScan will record how you get there and the credentials that you enter.NOTE: NEVER give AppScan administrator credentials. AppScan will open EVERY link in your application. For Administrators, this almost always includes a link which will shut down the application. AppScan will not know to differentiate the disable links from other links and it will shut down your application. Please give AppScan a user credential. For extra security, if your application is on a virtual machine, take a snapshot of it before running the scan. Also notify any others who might be working on the application that it may be disrupted during the time of the scan.
Click next. Test policy should either be "Default" or "Complete." Default will run most of the security tests that AppScan contains against your application. Complete will run all of AppScan's tests against your application. Try running a default Test Policy first. If you don't get many results, run a complete scan.
Click "Next." Select "Start a Full Automatic Scan" and then select "Finish." You will be prompted to save your scan. Once the scan is saved, it will start automatically. If the scan does not start automatically, find the green button with a triangle in it that says "Scan." Click it and then select "Start Full Scan."
Additional Features
For additional control of your scan, click "Scan Configuration." From there, navigate to the "Explore Options" tab. Not all of these options are necessary for all scans.
Under the Communication and Proxy tab, you can change the Communication settings.
Timeout:
Number of Threads: For very large applications, you can change the depth limits so that AppScan will stop crawling after the tenth link.