Once you have created crawl data for your site, you can scan for vulnerabilities using either a command-line tool or a web-based admin console.
Using the Command-Line Tool
The simplest way to start a scan is to use the VAddy PrivateNet command-line tool as follows:
vaddy_privatenet.sh scan
This command will automatically
- open an SSH tunnel to VAddy’s SSH server;
- start a scan;
- show the results of the completed scan; and
- close the SSH tunnel.
The command exits with a successful status code (i.e. returns zero) if no problems were encountered during the scan; otherwise, it exits with an unsuccessful (i.e. non-zero) status code.
=== Connect === Log file setup : vaddy/2017_06_13_21_38_23.txt ssh and ssh-keygen OK. DNS OK. HTTPS connectivity OK. Connection to web server OK. SSH files exist OK. .......... ssh -i vaddy/ssh/id_rsa -N -R 0.0.0.0:2001:127.0.0.1:8888 portforward@pfd.vaddy.net pid:6802 Checking E2E connectivity... Checking E2E connectivity... E2E connectivity OK. Connect Status: 0 === Start scan === start before scan hook ==== Start VAddy Scan (Version 1.0.3)==== .. Server: www.example.com scanId: xx-c74721e3-b336-4188-beac-1111111111 Result URL: https://console.vaddy.net/scan_status/xx/xx-c74721e3-b336-4188-beac-111111111 Vulnerabilities: 1 Warning!!! GoVAddy Status: 1 === Disconnect === Log file setup : vaddy/2017_06_13_21_38_41.txt ssh and ssh-keygen OK. DNS OK. HTTPS connectivity OK. grep result:6802 s001 S+ 0:00.04 ssh -i vaddy/ssh/id_rsa -N -R 0.0.0.0:2001:127.0.0.1:8888 portforward@pfd.vaddy.net kill pid: 6802 Exit: 1
This example shows how the command-line tool establishes a connection with VAddy’s SSH server, starts a vulnerability scan, shows the results of the scan after it has ended (one vulnerability was found), and finally disconnects from VAddy’s SSH server.
The last line is “Exit: 1”, indicating an unsuccessful exit status (because a vulnerability was found). If the command had exited successfully, this would have been “Exit: 0”.
Using the Admin Console
You can also start a scan from VAddy’s web-based admin console. Select Scan from the left sidebar, then click Start Scan.
You should see a page like the one below, showing you which vulnerabilities will be included in the scan and allowing you to specify which crawl data to use.
Run the scan
Before you can actually start scanning, you must establish a connection between VAddy and the web server you would like to scan using the VAddy PrivateNet command-line tool:
vaddy_privatenet.sh connect
Once this command has exited successfully, click Run VAddy Scan.
After the scan has completed, run the following command to disconnect from VAddy’s SSH server:
vaddy_privatenet.sh disconnect
Scanning
Please wait while your site is scanned.
Scan results
After some time has passed and you have reloaded the page, the scan's status will change to Complete and you will be shown the results. If there are any vulnerabilities in the crawled URLs, a red button will appear in the Alert column with the label n Problems (where n is the number of vulnerabilities found). For more details, click n Problems or Scan ID.
Detailed scan results
This example shows that a cross-site scripting vulnerability was found in the name parameter.
You will receive a notification email at the address registered with your account whenever a vulnerability is found in your scan results.
Actual attack request data
You can click the Show button to see the actual request data that was sent when the vulnerability was detected. With this information, you can reproduce the attack in your development environment and fix the vulnerability.
Scan results (no problems detected)
Once you have fixed the vulnerabilities that were detected and then re-scanned your site, the button in the Alert column will turn green with the label None.
You will not receive a notification email if no problems were detected during a scan.
Scan Count indicates the total number of HTTP requests that were sent during the scan. For example, 4 HTTP requests will be sent for a single URL that has 2 parameters: one request to check for SQL injection vulnerabilities and one request to check for XSS vulnerabilities in each parameter. The total number of requests will increase as the scanning engine is updated to detect even more vulnerability patterns.