Assessment Settings in Tenable PCI ASV

You can use Assessment settings to configure how a scan identifies vulnerabilities, as well as what vulnerabilities are identified. This includes identifying malware, assessing the vulnerability of a system to brute force attacks, and the susceptibility of web applications.

Note: Assessment settings appear only on Internal PCI Network Scan templates.

Template Mode Preconfigured Settings
Internal PCI Network Scan Default
  • General Settings:
    • Avoid false alarms
    • Disable CGI scanning
  • Web Applications:
    • Disable web application scanning

Scan for known web vulnerabilities

  • General Settings:
    • Avoid potential false alarms
    • Enable CGI scanning
  • Web Applications:
    • Start crawling from "/"
    • Crawl 1000 pages (max)
    • Traverse 6 directories (max)
    • Test for known vulnerabilities in commonly used web applications
    • Generic web application tests disabled
Scan for all web vulnerabilities (quick)
  • General Settings:
    • Avoid potential false alarms
    • Enable CGI scanning
  • Web Applications:
    • Start crawling from "/"
    • Crawl 1000 pages (max)
    • Traverse 6 directories (max)
    • Test for known vulnerabilities in commonly used web applications
    • Perform each generic web app test for 5 minutes (max)
Scan for all web vulnerabilities (complex)
  • General Settings:
    • Avoid potential false alarms
    • Enable CGI scanning
    • Perform thorough tests
  • Web Applications:
    • Start crawling from "/"
    • Crawl 1000 pages (max)
    • Traverse 6 directories (max)
    • Test for known vulnerabilities in commonly used web applications
    • Perform each generic web app test for 10 minutes (max)
    • Try all HTTP methods
    • Attempt HTTP Parameter Pollution
Custom Assessment Settings for Custom Mode
PCI Quarterly External Scan

-

Assessment Settings for Custom Mode

If you select the Custom preconfigured setting option, you can manually configure Assessment settings in the following categories:

General

The General section includes the following groups of settings:

Setting Default Value Description
Accuracy
Override Normal Accuracy Disabled

In some cases, Tenable PCI ASV cannot remotely determine whether a flaw is present or not. If report paranoia is set to Show potential false alarms, a flaw is reported every time, even when there is a doubt about the remote host being affected. Conversely, a paranoia setting of Avoid potential false alarms causes Tenable PCI ASV to not report any flaw whenever there is a hint of uncertainty about the remote host. As a middle ground between these two settings, disable this setting.

Perform thorough tests (may disrupt your network or impact scan speed) Disabled Causes various plugins to work harder. For example, when looking through SMB file shares, a plugin analyzes 3 directory levels deep instead of 1. This could cause much more network traffic and analysis in some cases. By being more thorough, the scan is more intrusive and is more likely to disrupt the network, while potentially providing better audit results.

Brute Force

The Brute Force section includes the following groups of settings:

Setting Default Value Description
General Settings
Only use credentials provided by the user Enabled In some cases, Tenable PCI ASV can test default accounts and known default passwords. This can cause the account to be locked out if too many consecutive invalid attempts trigger security protocols on the operating system or application. By default, this setting is enabled to prevent Tenable PCI ASV from performing these tests.
Oracle Database
Test default accounts (slow) Disabled Test for known default accounts in Oracle software.

Web Applications

The Web Applications section includes the following groups of settings:

Setting Default Value Description
Scan web applications Disabled By default, Tenable PCI ASV does not scan web applications. To edit the following settings, enable this setting.
Use a custom User-Agent

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)

Specifies which type of web browser Tenable PCI ASV impersonates while scanning.

Web Crawler
Start crawling from

/

The URL of the first page that is tested. If multiple pages are required, use a colon delimiter to separate them (e.g., /:/php4:/base).

Excluded pages (regex) /server_privileges\.php <> log out

Specifies portions of the web site to exclude from being crawled. For example, to exclude the /manual directory and all Perl CGI, set this field to: (^/manual) <> (\.pl(\?.*)?$).

Tenable PCI ASV supports POSIX regular expressions for string matching and handling, as well as Perl-compatible regular expressions (PCRE).

Maximum pages to crawl

1000

The maximum number of pages to crawl.

Maximum depth to crawl

6

Limit the number of links Tenable PCI ASV follows for each start page.

Follow dynamically generated pages

Disabled

If selected, Tenable PCI ASV follows dynamic links and may exceed the parameters set above.

Application Test Settings
Enable generic web application tests Disabled Enables the following settings.
Abort web application tests if HTTP login fails Disabled If Tenable PCI ASV cannot log in to the target via HTTP, then do not run any web application tests.
Try all HTTP methods Disabled This option instructs Tenable PCI ASV to also use POST requests for enhanced web form testing. By default, the web application tests only use GET requests, unless you enable this option. Generally, more complex applications use the POST method when a user submits data to the application. When enabled, Tenable PCI ASV tests each script or variable with both GET and POST requests. This setting provides more thorough testing, but may considerably increase the time required.
Attempt HTTP Parameter Pollution Disabled When performing web application tests, attempt to bypass filtering mechanisms by injecting content into a variable while also supplying the same variable with valid content. For example, a normal SQL injecton test may look like /target.cgi?a='&b=2. With HTTP Parameter Pollution (HPP) enabled, the request may look like /target.cgi?a='&a=1&b=2.
Test embedded web servers Disabled Embedded web servers are often static and contain no customizable CGI scripts. In addition, embedded web servers may be prone to crash or become non-responsive when scanned. Tenable recommends scanning embedded web servers separately from other web servers using this option.
Test more than one parameter at a time per form Disabled

This setting manages the combination of argument values used in the HTTP requests. The default, without checking this option, is testing one parameter at a time with an attack string, without trying non-attack variations for additional parameters. For example, Tenable PCI ASV would attempt
/test.php?arg1=XSS&b=1&c=1, where b and c allow other values, without testing each combination. This is the quickest method of testing with the smallest result set generated.

This setting has four options:

  • Test random pairs of parameters: This form of testing randomly checks a combination of random pairs of parameters. This is the fastest way to test multiple parameters.
  • Test all pairs of parameters (slow): This form of testing is slightly slower but more efficient than the one value test. While testing multiple parameters, it tests an attack string, variations for a single variable and then use the first value for all other variables. For example, Tenable PCI ASV would attempt /test.php?a=XSS&b=1&c=1&d=1 and then cycle through the variables so that one is given the attack string, one is cycled through all possible values (as discovered during the mirror process) and any other variables are given the first value. In this case, Tenable PCI ASV would never test for /test.php?a=XSS&b=3&c=3&d=3 when the first value of each variable is 1.
  • Test random combinations of three or more parameters (slower): This form of testing randomly checks a combination of three or more parameters. This is more thorough than testing only pairs of parameters. Increasing the amount of combinations by three or more increases the web application test time.
  • Test all combinations of parameters (slowest): This method of testing checks all possible combinations of attack strings with valid input to variables. Where all pairs testing seeks to create a smaller data set as a tradeoff for speed, all combinations makes no compromise on time and uses a complete data set of tests. This testing method may take a long time to complete.
Do not stop after first flaw is found per web page

Stop after one flaw is found per web server (fastest)

This setting determines when a new flaw is targeted. This applies at the script level. Finding an XSS flaw does not disable searching for SQL injection or header injection, but unless otherwise specified, there is at most one report for each type on a given port. Note that several flaws of the same type (for example, XSS or SQLi) may be reported if they were caught by the same attack.

If this option is disabled, as soon as a flaw is found on a web page, the scan moves on to the next web page.

If you enable this option, select one of the following options:

  • Stop after one flaw is found per web server (fastest) — (Default) As soon as a flaw is found on a web server by a script, Tenable PCI ASV stops and switches to another web server on a different port.
  • Stop after one flaw is found per parameter (slow) — As soon as one type of flaw is found in a parameter of a CGI (for example, XSS), Tenable PCI ASV switches to the next parameter of the same CGI, the next known CGI, or to the next port or server.
  • Look for all flaws (slowest) — Perform extensive tests regardless of flaws found. This option can produce a very verbose report and is not recommend in most cases.
URL for Remote File Inclusion http://rfi.nessus.org/rfi.txt During Remote File Inclusion (RFI) testing, this setting specifies a file on a remote host to use for tests. By default, Tenable PCI ASV uses a safe file hosted by Tenable for RFI testing. If the scanner cannot reach the Internet, you can use an internally hosted file for more accurate RFI testing.
Maximum run time (min) 5 This option manages the amount of time in minutes spent performing web application tests. This option defaults to 60 minutes and applies to all ports and CGIs for a given website. Scanning the local network for web sites with small applications typically completes in under an hour, however web sites with large applications may require a higher value.

Windows

The Windows section contains the following groups of settings:

Setting Default Value Description
General Settings
Request information about the SMB Domain Enabled

If enabled, domain users are queried instead of local users.

User Enumeration Methods

You can enable as many of the user enumeration methods as appropriate for user discovery.

SAM Registry Enabled Tenable PCI ASV enumerates users via the Security Account Manager (SAM) registry.
ADSI Query Enabled Tenable PCI ASV enumerates users via Active Directory Service Interfaces (ADSI). To use ADSI, you must configure credentials under Credentials > Miscellaneous > ADSI.
WMI Query Enabled Tenable PCI ASV enumerates users via Windows Management Interface (WMI).
RID Brute Forcing Enabled Tenable PCI ASV enumerates users via relative identifier (RID) brute forcing. Enabling this setting enables the Enumerate Domain Users and Enumerate Local User settings.
Enumerate Domain Users (available with RID Brute Forcing enabled)
Start UID 1000 The beginning of a range of IDs where Tenable PCI ASV attempts to enumerate domain users.
End UID 1200 The end of a range of IDs where Tenable PCI ASV attempts to enumerate domain users.
Enumerate Local User (available with RID Brute Forcing enabled)
Start UID 1000 The beginning of a range of IDs where Tenable PCI ASV attempts to enumerate local users.
End UID 1200 The end of a range of IDs where Tenable PCI ASV attempts to enumerate local users.