Qualys Api v1 User Guide PDF
Qualys Api v1 User Guide PDF
Qualys Api v1 User Guide PDF
User Guide
Version 8.9
December 7, 2016
Copyright 2002-2016 by Qualys, Inc. All Rights Reserved.
Qualys and the Qualys logo are registered trademarks of Qualys, Inc. All other trademarks are the
property of their respective owners.
Qualys, Inc.
1600 Bridge Parkway
Redwood Shores, CA 94065
1 (650) 801 6100
Preface
Chapter 1 Welcome
Qualys API v1 Features .................................................................................................. 10
Processing API Requests ................................................................................................ 12
Qualys User Account ...................................................................................................... 13
Decoding XML Reports .................................................................................................. 13
API Conventions.............................................................................................................. 14
API Limits ......................................................................................................................... 17
Chapter 2 Vulnerability Scans
About Vulnerability Scanning ....................................................................................... 22
Scan Functions ................................................................................................................. 25
Scan Request..................................................................................................................... 27
View Running Scans and Maps..................................................................................... 34
Cancel a Scan.................................................................................................................... 35
View Scan Report List ..................................................................................................... 37
Retrieve a Saved Scan Report ........................................................................................ 39
Delete a Saved Scan Report............................................................................................ 41
View Scan Target History............................................................................................... 43
KnowledgeBase Download............................................................................................ 48
Chapter 3 Network Discovery
About Network Discovery ............................................................................................. 52
Map Functions ................................................................................................................. 56
Map Request Version 2 .............................................................................................. 58
Map Request Single Domain..................................................................................... 67
View Running Maps and Scans..................................................................................... 71
Cancel a Running Map ................................................................................................... 72
View Map Report List ..................................................................................................... 74
Retrieve a Saved Map Report ........................................................................................ 76
Delete a Saved Map Report............................................................................................ 78
Chapter 4 Account Preferences
Preferences Functions ..................................................................................................... 82
Scheduled Scans and Maps ............................................................................................ 84
Scan Service Options ....................................................................................................... 98
View Scanner Appliance List....................................................................................... 101
View IP List .................................................................................................................... 102
View Domain List.......................................................................................................... 103
View Group List............................................................................................................. 104
Contents
About Qualys
Qualys, Inc. (NASDAQ: QLYS) is a pioneer and leading provider of cloud-based
security and compliance solutions with over 9,200 customers in more than 100
countries, including a majority of each of the Forbes Global 100 and Fortune 100. The
Qualys Cloud Platform and integrated suite of solutions help organizations simplify
security operations and lower the cost of compliance by delivering critical security
intelligence on demand and automating the full spectrum of auditing, compliance
and protection for IT systems and web applications. Founded in 1999, Qualys has
established strategic partnerships with leading managed service providers and
consulting organizations including Accenture, BT, Cognizant Technology Solutions,
Fujitsu, HCL Comnet, HPE, Infosys, NTT, Optiv, SecureWorks, Tata
Communications, Verizon and Wipro. The company is also a founding member of the
Cloud Security Alliance (CSA). For more information, please visit www.qualys.com.
Get Started
This chapter gives you an introduction to the Qualys API v1 and how to make
requests using this API. Well discuss API conventions and best practices to get you
up and running quickly.
Additional capabilities are available using the Qualys API v2. For details, please see
the Qualys API v2 User Guide.
The Qualys API documentation and sample code use the API server URL for the Qualys
US Platform 1. If your account is located on another platform, please replace this URL
with the appropriate server URL for your account.
Still have questions? You can easily find the API server URL for your account.
Just log in to your Qualys account and go to Help > About. Youll see this information
under Security Operations Center (SOC).
API Conventions
Before using Qualys API functions, please review the API conventions below.
Authentication
The application must authenticate using Qualys account credentials (user name and
password) as part of the HTTP request. The credentials are transmitted using the Basic
Authentication Scheme over HTTPS.
For more information, see the Basic Authentication Scheme section of RFC #2617:
http://www.faqs.org/rfcs/rfc2617.html
The exact method of implementing authentication will vary according to which
programming language is used. See the sample code in Chapter 8, Sample API Code
for more information.
UTF-8 Encoding
The Qualys API uses UTF-8 encoding. The encoding is specified in the XML output
header as shown below.
<?xml version="1.0" encoding="UTF-8" ?>
The sample URL below is incorrect and will not return the specified scan report because
the parameter name Ref appears in mixed-case characters:
https://qualysapi.qualys.com/msp/scan_report.php?
Ref=scan/987659876.19876
Parameters in URLs
API parameters, as documented in this user guide, should be specified one time for each
URL. In the case where the same parameter is specified multiple times in a single URL,
the last parameter takes effect and the previous instances are silently ignored.
API Limits
The service enforces limits on the API calls subscription users can make. The limits apply
to the use of all APIs, except session V2 API (session login/logout).
Important! All API controls are applied on a subscription basis.
API Usage
Your subscriptions API usage and quota information is exposed in the HTTP response
headers generated by Qualys APIs (all APIs except session V2 API).
Header Description
X-RateLimit-Remaining Number of API calls you can make right now before
reaching the rate limit <number-limit> in the last <number-
seconds> seconds.
X-RateLimit-ToWait-Sec The wait period (in seconds) before you can make the next
API call without being blocked by the rate limiting rule.
X-Concurrency-Limit-Limit Number of API calls you are allowed to run concurrently.
X-Concurrency-Limit- Number of API calls that are running right now (including
Running the one identified in the current HTTP response header).
Note: In the case where the concurrency limit has been reached, no information about
rate limits will appear in the HTTP headers.
Host Discovery
The service checks availability of the target hosts. For each host, the service checks
whether the host is connected to the network, whether it has been shut down and
whether it forbids all Internet connections. The service pings each target host using a
combination of ICMP, TCP, and UDP probes based on options configured in the option
profile. If these probes trigger at least one response from the host, the host is considered
alive and the service proceeds to the next event as described in Port Scanning for
Open Ports. If a host is found to be not alive, the audit stops for that host.
The types of probes sent to hosts and the list of ports scanned during host discovery are
configurable (on the Additional tab). The service provides standard port scanning
options, and when these options are enabled TCP and UDP probes are sent to default
ports for common services, such as HTTP, HTTPS, FTP, SSH, Telnet, SMTP, DNS, and
NetBIOS.
Service Discovery
When TCP or UDP ports are reported as open, the scanning service uses several
discovery methods to identify which service is running on the port, and confirms the
type of service running to obtain the most accurate data.
Vulnerability Assessment
Each of the previous events results in information gathered for each target host, such as
the operating system and version installed, which TCP and UDP ports are open and
which services are running on those ports. This information is used to begin vulnerability
assessment. The scanning engine runs tests that are applicable to each target host based
on the information gathered for the host.
Scanner Appliances
Scanning for security vulnerabilities may be performed using the Qualys External
Scanners or Qualys Scanner Appliances. Note that you must use a scanner appliance to
scan private use internal IPs on your internal network.
To improve scan speed on large networks, you may choose to use scanner feature to
distribute scanning across multiple scanners. See Scanner Selection for Scans for more
information.
Scan Functions
The vulnerability scan API v1 functions are used to launch and manage scans and these
are described in this chapter.
Please Note: We recommend using the scan API v2 functions (endpoint
/api/2.0/fo/scan/), instead of the scan API v1 functions, for launching and managing
vulnerability scans. The newer scan API v2 provides newer features and added value to
users. All the details are explained in the Qualys API v2 User Guide.
Related Functions
Scan-related functions are described in other chapters in this user guide.
Chapter 4, Account Preferences describes the schedules function
(scheduled_scans.php) which is used to add and remove scan schedules. A scan schedule
can be defined to run daily, weekly, monthly or one time only. Once defined, a scan
schedule will run automatically.
Chapter 5, Asset Management describes the asset management suite. Functionality is
provided for managing assets and asset groups based on the permissions set in the user
account. Functions allow API users to manage IP addresses and domains in the
subscription, manage asset groups, search assets by host attributes, and download asset
reports with the most recent host scan data.
Scan Request
scan.php Function
Scan API v2 is Recommended
The newer scan API v2 (/api/2.0/fo/scan/?action=launch) gives you newer features
and improvements. All the details are explained in the Qualys API v2 User Guide.
Using networks? Scanning networks is not supported using scan.php. Please use the
scan API v2.
Function Overview
The Vulnerability Scan API (/msp/scan.php) is used to request a Qualys network scan
for one or more IP addresses/ranges. At the completion of each scan a scan results report
is produced.
Using the scan API v1 (/msp/scan.php), the scan request parameters specify the scan
target (required) and scanner selection (required for scanning private use internal IPs).
There are other optional parameters.
Scan Target. The scan target identifies the IPs to be scanned. You may specify a
combination of IP addresses, IP address ranges, and asset groups.
To scan target IP addresses using the external scanners, use this URL:
https://qualysapi.qualys.com/msp/scan.php?ip={addresses}&
save_report=yes
Hosts Tracked by DNS and/or NetBIOS. To scan hosts tracked by DNS and/or NetBIOS
the service must be able to reference the appropriate host names for all target hosts from
the host scan data in the user account, otherwise an error is returned. Scan data is part of
a hosts vulnerability history, which is stored separately from saved scan results. For
more information, refer to Automatic Host Scan Data in Chapter 5.
Running Scans
While the scan is running, the service uses a keep alive mechanism to maintain an open
connection to the Qualys server for the duration of the scan. Note that most firewalls
terminate a TCP connection if there is no traffic after a minute. To keep the socket alive,
the service sends a < !--keep-alive --> line every 30 to 40 seconds. These < ! -- keep-
alive -- > lines appear as comments at the top of the resulting XML scan report, available
at the completion of the scan.
At the conclusion of the scan process, the Qualys service returns an XML scan report.
This report is not saved on the Qualys server unless the save_report=yes parameter is
present.
The scan.php function cancels a scan in progress if you close the HTTP connection
unless save_report=yes is set when the scan request is made.
User Permissions
User permissions for the scan.php function are described below.
User Role Permissions
Manager Scan all IP addresses in subscription.
Unit Manager Scan IP addresses in users business unit.
Scanner Scan IP addresses in users account.
Reader No permission to scan IP addresses.
Parameters
The parameters for scan.php are described below.
Parameter Description
scan_title={title} (Optional) Specifies a title for the scan. The scan title can have a
maximum of 2,000 characters. When specified, the scan title
appears in the header section of the scan results. When
unspecified, the API returns a standard, descriptive title in the
header section.
ip={value} (Optional) Specifies one or more IP addresses and/or ranges to
be included in the scan target. Multiple entries must be comma
separated. An IP range is specified with a hyphen (for example,
10.10.24.1-10.10.24.20). This parameter and/or asset_groups
must be specified.
Parameter Description
scanners_in_ag={0|1} (Optional) Set to 1 to use the scanners in asset group features.
This lets you scan an asset group using the appliances defined
for the group. If you want to scan multiple asset groups, each
asset group will be scanned using the appliances in its own
group.
One of these parameters may be specified in the same request:
iscanner_name, default_scanner, or scanners_in_ag.
specific_vulns={Id1,Id2,Id3...} (Optional) Specifies a selective vulnerability scan. When set,
the service scans your target IPs for the one or more
vulnerabilities you specify.
Parameter Description
save_report={no|yes} (Optional) Used to save the scan report on the Qualys server
for later use. A valid value is yes to save the scan report, or
no (the default) to not save the report.
When set to yes, you can close the HTTP connection when
the scan is in progress, without cancelling the scan. When the
scan completes the resulting scan report is saved on the Qualys
server, and a scan summary email notification is sent (if this
option is enabled in your user account).
Target Hosts
The host target identifies IP addresses to be scanned and reported on. A host target may
include a combination of user-entered IPs, in the form of individual IPs and/or IP ranges,
as well as asset groups that contain IPs.
Asset Groups
The asset_groups={title1,title2...} parameter identifies titles of one or more
asset groups with IPs to be scanned and reported on. Only asset group titles in the user
account may be specified.
Multiple Asset Group Titles. Multiple titles must be comma separated, as shown below:
Corporate,Finance,Customer+Service
Asset Group Title All. The asset group title All includes all IPs in the user account.
This asset group title may be specified for most API functions as indicated in the
individual function descriptions in this user guide.
Examples
To scan the IP address 123.123.123.7, receive a scan report, and save the scan report on
the Qualys server, specify this URL:
https://qualysapi.qualys.com/msp/scan.php?ip=123.123.123.7&
save_report=yes
To scan more than one IP address and receive a scan report, the IP addresses must be
comma separated as shown in the example URL below:
https://qualysapi.qualys.com/msp/scan.php?
ip=1.2.3.4-1.2.3.9,1.2.3.20
To scan the IP address 123.123.123.7 for the Microsoft MFC Could Allow Remote Code
Execution (MS07-012) (Qualys ID 90381) and the Microsoft VBScript Remote Code
Execution Vulnerability (KB981169) - Zero Day (Qualys ID 90587) using the scanner
appliance Milan, specify this URL:
https://qualysapi.qualys.com/msp/scan.php?ip=123.123.123.7&
specific_vulns=90381,90587&iscanner_name=Milan&scan_title=
IP+123.123.123.7&save_report=yes
To scan the asset groups Corporate and New York using the default scanner, the
option profile Profile A, and the scan title My Network Security Report, specify this
URL:
https://qualysapi.qualys.com/msp/scan.php?asset_groups=
Corporate,New+York&default_scanner=1&option=Profile+A&
scan_title=My+Network+Security+Report&save_report=yes
To scan the asset groups Unix Servers and Finance using the scanners in asset group
feature, the option profile Initial Options and the scan title
Scan+with+Scanner+Parallelization, specify this URL:
https://qualysapi.qualys.com/msp/scan.php?asset_groups=
Unix+Servers,Finance&scanners_in_ag=1&option=Initial+Options&
scan_title=My+Scan&save_report=yes
XML Report
The DTD for the XML scan report returned by the scan.php function can be found at
the following URL:
https://qualysapi.qualys.com/scan-1.dtd
Appendix A provides information about the XML report generated by the scan.php
function, including a recent DTD and XPath listing.
XML Report
The DTD for the XML running scans and maps list report returned by the
scan_running_list.php function can be found at the following URL:
https://qualysapi.qualys.com/scan_running_list.dtd
Appendix A provides information about the XML report generated by the
scan_running_list.php function, including a recent DTD and XPath listing.
Cancel a Scan
scan_cancel.php Function
The Scan Cancel API (/msp/scan_cancel.php) is used to cancel a scan (or map) in
progress. Its not possible to cancel a scan when it has the status Loading. To cancel a
scan, use the following URL:
https://qualysapi.qualys.com/msp/scan_cancel.php?
ref={referenceCode}
where the ref={referenceCode} parameter specifies the scan reference for the scan to
be cancelled.
User permissions for the scan_cancel.php function are described below.
User Role Permissions
Manager Cancel any scan in progress in subscription.
Unit Manager Cancel any scan in progress in users business unit, including
users own scans and scans run by other users in the same
business unit.
Scanner Cancel any scan in progress in users account.
Reader No permission to cancel scans.
Parameters
The one parameter for scan_cancel.php is described below.
Parameter Description
ref={value} (Required) Specifies the scan reference for the scan in progress .
A scan reference starts with scan/. To find the appropriate
reference, use the scan_running_list.php function or the
V2 scan API function (see the Qualys API V2 User Guide).
Example
To cancel a scan in progress with the reference code scan/987659876.19876, use the
following URL:
https://qualysapi.qualys.com/msp/scan_cancel.php?
ref=scan/987659876.19876
The DTD for the message returned by the scan_cancel.php function can be found at
the following URL:
https://qualysapi.qualys.com/generic_return.dtd
Parameters
The parameters for scan_report_list.php are described below.
Parameter Description
last={no|yes} (Optional) Used to retrieve information only about the last
saved scan report. A valid value is yes to retrieve the last
saved report or no (the default) to retrieve all scan reports.
target={address} (Optional) Used to retrieve all saved scan reports for a target IP
address.
since_datetime={value} (Optional) Used to filter the report list, including only saved
scan reports for scans launched since a certain date/time. If
time is not specified, the list output includes reports for scans
launched anytime during the entire day.
If you include both target={address} and last=yes, you will receive information
about the last saved scan that included the target IP address.
Examples
To receive a list of saved scan reports for the target IP address 123.123.123.4, specify
this URL:
https://qualysapi.qualys.com/msp/scan_report_list.php?
target=123.123.123.4
To receive information about the last saved scan, specify this URL:
https://qualysapi.qualys.com/msp/scan_report_list.php?
last=yes
To receive information about the last saved scan that included the target IP address
123.123.123.4, specify this URL:
https://qualysapi.qualys.com/msp/scan_report_list.php?
last=yes&target=123.123.123.4
To receive a list of saved scan reports for scans launched since January 10, 2010 (anytime
during the day), specify this URL:
https://qualysapi.qualys.com/msp/scan_report_list.php?
since_datetime=2010-01-10
XML Report
The DTD for the XML scan report list report returned by the scan_report_list.php
function can be found at the following URL:
https://qualysapi.qualys.com/scan_report_list.dtd
Appendix A provides information about the XML generated by the
scan_report_list.php function, including a recent DTD and XPath listing.
Parameters
The parameters for scan_report.php are described below.
Parameter Description
ref={value} (Required) Specifies the scan reference for the scan to be
retrieved. A scan reference starts with scan/. To find the
appropriate reference, use the scan_report_list.php
function or the V2 scan API function (see the Qualys API V2
User Guide).
target={value} (Optional) Used to specify that the scan report will include
sections that match one or more specified IP addresses.
Multiple IPs/ranges may be specified. See Target Hosts for
information.
Examples
To retrieve a saved scan report with the reference code scan/987659876.19876, use the
following URL:
https://qualysapi.qualys.com/msp/scan_report.php?
ref=scan/987659876.19876
XML Report
The reports returned by the scan_report.php and scan.php functions have the same
DTD. The DTD for the XML report returned by these functions can be found at the
following URL:
https://qualysapi.qualys.com/scan-1.dtd
Typically a scan report returned from the scan_report.php function is returned
quicker than a report returned from the scan.php function because the
scan_report.php function returns scan report data for a scan that has already been
performed.
Appendix A provides information about the XML scan report generated by the
scan.php and scan_report.php functions, including a recent DTD and XPath listing.
Parameters
The one parameter for scan_report_delete.php is described below.
Parameter Description
ref={value} (Required) Specifies the scan reference for the scan to be
deleted. A scan reference starts with scan/. To find the
appropriate reference, use the scan_report_list.php
function or the V2 scan API function (see the Qualys API V2
User Guide).
The DTD for the message returned by the scan_report_delete.php function can be
found at the following URL:
https://qualysapi.qualys.com/generic_return.dtd
Parameters
The parameters for scan_target_history.php are described below.
Parameter Description
ips={addresses} (Optional) Specifies one or more IP addresses and/or ranges to
be included in the scan history report. Multiple entries are
comma separated.
This parameter or the asset_group parameter must be
specified. You cannot specify this parameter and the
asset_group parameter in the same request.
asset_group={title} (Optional) Specifies one asset group title to be included in the
scan history report. The title All may be specified to include
all IP addresses in the user account.
This parameter or the ips parameter must be specified. You
cannot specify this parameter and the ips parameter in the
same request.
Parameter Description
ip_targeted_list={0|1} (Optional) Specifies whether the IP targeted list will be
included in the output. When unspecified, the parameter is set
to 0 and the IP targeted list is not included. When this parameter
is specified and set to 1, the list is included.
This parameter or the ip_not_targeted_list parameter
must be specified and set to 1.
ip_not_targeted_list={0|1} (Optional) Specifies whether the IP not targeted list will be
included in the output. When unspecified, the parameter is set
to 0 and the IP not targeted list is not included. When this
parameter is specified and set to 1, the list is included.
This parameter or the ip_targeted_list parameter must be
specified and set to 1.
Date/Time Format
The start and end date/time is specified in this format (UTC/GMT):
YYYY-MM-DD[THH:MM:SSZ]
where date (YYYY-MM-DD) is required and time is optional.
For example you can specify: 2006-01-01 or 2006-05-25T23:12:00Z.
The date element is required and the time element is optional. If time is not specified, the
following values are set by the application automatically.
Range Parameter Default Time (when not supplied)
Start Date date_from T00:00:00Z
End Date date_to T23:59:59Z
Additional Parameters
The additional parameters (optional) for scan_target_history.php are below.
Parameter Description
option_profile_title= (Optional) Specifies a filter to restrict the output to IPs targeted
{prefix:text} with a certain option profile title or a set of option profile titles
in the users subscription. A filter is entered in this format:
option_profile_title=prefix:text
A valid prefix is: begin, match, contain, or end. The text string
may include a maximum of 64 characters (ascii).
Examples
To view scan history from June 1, 2009 on all IP addresses in your account with the IP
targeted list and the IP not targeted list, specify this URL:
https://qualysapi.qualys.com/msp/scan_target_history.php?asset_
group=All&date_from=2009-06-01&ip_targeted_list=1&
ip_not_targeted_list=1
To view scan history from August 4, 2009 on the asset group New York and an option
profile title starting with SANS20, specify this URL:
https://qualysapi.qualys.com/msp/scan_target_history.php?asset_
group=New+York&date_from=2009-08-04&ip_targeted_list=1&option_
profile_title=begin:SANS20
To view scan history from March 1, 2009 to June 30, 2009 on the IP range 10.10.10.1-
10.10.10.100 and include scan history details, specify this URL:
https://qualysapi.qualys.com/msp/scan_target_history.php?ips=10
.10.10.1-10.10.10.100&date_from=2009-03-01&date_to=2009-06-30&
ip_targeted_list=1&detailed_history=1
XML Report
The DTD for the XML scan target history output report returned by the
scan_history.php function can be found at the following URL:
https://qualysapi.qualys.com/scan_target_history_output.dtd
Appendix A provides information about the XML generated by the
scan_target_history.php function, including a recent DTD and XPath listing.
KnowledgeBase Download
Function Overview
The Qualys Cloud Platform includes a KnowledgeBase with the industrys largest
number vulnerability signatures. The KnowledgeBase is continuously updated by
Qualys Research and Development team. Qualys is fully dedicated to providing the
most accurate security audits in the industry. Each day new and updated signatures are
tested in Qualys own vulnerability labs and then published, making them available to
Qualys customers.
The KnowledgeBase Download API (/msp/knowledgebase_download.php) allows
authorized Qualys users to download contents of the Qualys KnowledgeBase to benefit
from a comprehensive solution that is always up to date. Please contact Qualys Support
or your sales representative if you would like to use this API.
Express Lite: This API is available to Express Lite users.
Please Note: We recommend using the KnowledgeBase API v2
(/api/2.0/fo/knowledge_base/vuln/?action=list), instead of the KnowledgeBase
download API v1 (/msp/knowledgebase_download.php). The newer API v2 provides
newer features and added value to customers. All the details are explained in the Qualys
API V2 User Guide.
knowledgebase_download.php Function
The knowledgebase_download.php function allows authorized Qualys users to
download the vulnerability data for the entire Qualys KnowledgeBase (all
vulnerabilities) or for a single Qualys vulnerability (QID).
To download the data for the entire KnowledgeBase, use this URL:
https://<qualysapi.qualys.com>/msp/knowledgebase_download.php
where <qualysapi.qualys.com> is the Qualys server URL where your Qualys account is
located.
After making a knowledgebase_download.php request, a KnowledgeBase download
XML report is returned with vulnerability data in English.
The vulnerability data returned from a knowledgebase_download.php request
corresponds to the data in your user account. Customizations to vulnerabilities are
downloaded, such as custom severity levels and descriptions for threat, impact, and
solution. Also user-defined OVAL vulnerabilities are downloaded.
Parameters
The parameters for knowledgebase_downlaod.php are described below.
Parameter Description
vuln_id={value} (Optional) Specify the QID number for a vulnerability in
the KnowledgeBase to return vulnerability data for. When
specified, only vulnerability data for the selected QID will
appear in the XML output.
show_supported_modules_in (Optional) Specify 1 to show Qualys modules that may be
fo={0|1} used to detect each vulnerability in the XML output. When
unspecified, supported modules are not shown in the XML
output.
show_cvss_submetrics={0|1} (Optional) Specify 1 to show CVSS submetrics for
vulnerabilities in the XML output when the CVSS scoring
feature is enabled in the user account. When unspecified,
CVSS submetrics are not shown in the XML output.
show_pci_flag={0|1} (Optional) Specify 1 to show the PCI flag for vulnerabilities
in the XML output. Also the reasons for passing or failing
PCI compliance will be shown (when the CVSS scoring
feature is enabled for your account). The PCI flag identifies
whether the vulnerability must be fixed to pass PCI
compliance. When unspecified, the PCI flag and reasons are
not shown.
show_disabled_flag={0|1} (Optional) Specify 1 to include the disabled flag for each
vulnerability in the XML output.
is_patchable={0|1} (Optional) For each vulnerability in the XML output, the
service indicates whether a patch is available to fix the
issue. Specify 1 to show only vulnerabilities which have
patches in the XML output. Specify 0 to show only
vulnerabilities which do not have patches in the XML
output. When unspecified, all vulnerabilities are included.
Examples
To download the data for a single Qualys vulnerability (QID), use this URL:
https://qualysapi.qualys.com/msp/knowledgebase_download.php?
vuln_id=38461
To download the data for all Qualys vulnerabilities (QIDs) including CVSS submetrics
when the CVSS scoring feature is enabled in your account, use this URL:
https://qualysapi.qualys.com/msp/knowledgebase_download.php?
show_cvss_submetrics=1
To download the data for a single Qualys vulnerability (QID) including CVSS submetrics
(when the CVSS scoring feature is enabled in your account), the PCI flag and supported
modules, use this URL:
https://qualysapi.qualys.com/msp/knowledgebase_download.php?
vuln_id=38461&show_cvss_submetrics=1&show_pci_flag=1&show_supporte
d_modules_info=1
XML Report
The DTD for the KnowledgeBase output report returned by the
knowledgebase_download.php function can be found at the following URL:
https://<qualysapi.qualys.com>/knowledgebase_download.dtd
where <qualysapi.qualys.com> is the Qualys server URL where your Qualys account is
located.
Appendix A provides information about the XML generated by the
knowledgebase_download.php function, including a recent DTD and XPath listing.
Discovery Events
Network discovery for each domain is a dynamic process that involves two main events:
host discovery and basic information gathering. The standard behavior for these events is
described below. Qualys enables this standard behavior in new option profiles, including
the Initial Options profile. You can modify this standard behavior by creating or
editing an option profile and applying the profile to the map.
Host Discovery
Qualys gathers data from public records to identify hosts in each domain using various
methods including Whois lookups, DNS zone transfer, and DNS brute force. The service
then checks availability of the hosts in the target domain. For each host, the service
checks whether the host is connected to the network, whether it has been shut down and
whether it forbids all Internet connections.
The service pings each target host using a combination of TCP, UDP, and ICMP probes
based on the option profile configuration. If these probes trigger at least one response
from the host, the host is considered alive and the service proceeds to the next event as
described in Basic Information Gathering on Hosts. If a host is found to be not alive,
discovery stops for that host.
The types of probes sent to hosts and the list of ports scanned during host discovery are
configurable in the option profile. With the standard options enabled, the service sends
probes to TCP, UDP, and ICMP ports for common services, such as HTTP, HTTPS, FTP,
SSH, Telnet, SMTP, DNS, and NetBIOS. For information about the profile configuration,
including the ports scanned, view the option profile in the Qualys user interface.
When you launch a map for a domain with netblocks, Qualys collects information about
these devices: a) devices discovered in the domain, b) devices discovered in the
netblocks, and c) devices discovered between a and b and the Internet (or the
Scanner Appliance when producing a map for your internal network). Using netblocks in
this way enables the user to be certain that specific IP addresses are included in the
resulting map report.
The domain named none identifies a netblock without a domain name. There can be
only one none domain in your account. This is useful for scanning an internal network
using Scanner Appliances because an internal network may not have a domain name
defined, or an internal DNS server may not be present. When you launch a map for the
network perimeter using the none domain with netblocks, Qualys discovers devices
between the IP addresses defined in the netblock and the Intranet. When you launch a
map for the internal network using the none domain with netblocks, the service
discovers devices between the netblock IP addresses and the Scanner Appliance.
Scanner Appliances
Network discovery may be performed using the Qualys External Scanners or Qualys
Scanner Appliances. Note that you must use a scanner appliance to map domains with
private use internal IPs on your internal network. This includes domains for which
Qualys will discover internal IPs and domains with netblocks that have internal IPs.
You may choose to use the default scanner feature to distribute mapping across multiple
scanners when the map target has asset groups. See Scanner Selection for Maps for
more information.
Map Functions
The map functions are used to perform the following: request network maps for domains
and receive map reports, retrieve a list of maps in progress, cancel maps in progress, save
map reports on the Qualys server for future use, retrieve and delete saved map reports.
Map-related functions assist with managing map tasks.
Related Functions
Map-related functions are described in other chapters in this user guide.
Chapter 4, Account Preferences describes the schedules function
(scheduled_scans.php) which is used to add and remove map schedules. A map schedule
can be defined to run daily, weekly, monthly or one time only. Once defined, a map
schedule will run automatically.
Chapter 5, Asset Management describes the asset management suite. Functionality is
provided for managing assets and asset groups based on the permissions set in the user
account. Functions allow API users to manage IP addresses and domains in the
subscription, manage asset groups, search assets by host attributes, and download asset
reports with the most recent host scan data.
Running Maps
While the map is running, the service uses a keep alive mechanism to maintain an open
connection to the Qualys server for the duration of map processing. Note that most
firewalls terminate a TCP connection if there is no traffic after a minute. To keep the
socket alive, the service sends a < !--keep-alive --> line every 30 to 40 seconds. These
< ! -- keep-alive -- > lines appear as comments at the top of the resulting XML map
report, available at the completion of the map. See Appendix B to view a sample map
report containing these lines.
At the conclusion of the network discovery process, the Qualys service returns an XML
map report. This report is not saved on the Qualys server unless the save_report=yes
parameter is present.
The map-2.php function cancels a map in progress if you close the HTTP connection
unless save_report=yes is set when the map request is made.
User Permissions
User permissions for the map-2.php function are described below.
User Role Permissions
Manager Map all domains in subscription.
Unit Manager Map domains in users business unit.
Scanner Map domains in users account.
Reader No permission to map any domains.
Parameters
The parameters for map-2.php are described below.
Parameter Description
map_title={title} (Optional) Specifies a title for the map. The map title can
have a maximum of 2,000 characters. When specified, the
map title appears in the header section of the map results.
When unspecified, the API returns a standard, descriptive
title in the header section.
domain={target} (Optional) Specifies one or more domains to be included in
the map target. For each domain, include the domain name
only; do not enter www. at the start of the domain name.
Netblocks may be specified with each domain name to extend
the scope of the map. Multiple domains must be comma
separated. This parameter and/or asset_groups must be
specified.
The map target may include both domain names and asset
groups. See Target Domains below for more information.
asset_groups={title1,title2...} (Optional) Specifies the titles of asset groups to be included
in the map target. Multiple asset groups must be comma
separated. This parameter and/or the domain parameter
must be specified.
The map target may include both a domain name and asset
groups. See Target Domains below for more information.
iscanner_name={name} (Optional) Specifies the name of the Scanner Appliance for
the map, when the map target has private use internal IPs.
See Scanner Selection for Maps below for more
information. Using Express Lite, Internal Scanning must be
enabled in your account.
One of these parameters may be specified in the same map
request: iscanner_name or default scanner.
default_scanner=1 (Optional) Enables the default scanner feature, which is only
valid when the map target consists of asset groups. A valid
value is 1 to enable the default scanner, or 0 (the default) to
disable it. See Scanner Selection for Maps below for more
information. Using Express Lite, Internal Scanning must be
enabled in your account.
One of these parameters may be specified in the same map
request: iscanner_name or default scanner.
Parameter Description
option={title} (Optional) Specifies the title of an option profile to be applied
to the map. The profile title must be defined in the user
account, and it can have a maximum of 64 characters. If
unspecified, the default option profile in the user account is
applied. Note that custom option profiles can be defined only
using the Qualys user interface.
save_report=yes (Optional) Saves a map report for each target domain on the
Qualys server for later use. A valid value is yes to save a
map report for each target domain, or no (the default) to
not save the report.
If set to yes, you can close the HTTP connection when the
map is in progress, without cancelling the map. When the
map completes the resulting map report is saved on the
Qualys server, and a map summary email notification is sent
(if this option is enabled in your user account).
Target Domains
The map target defined for the map request identifies the domains to be mapped. A map
target may include both user-entered domains and asset groups that contain domains.
Domains
A map task may include multiple domains when the map-2.php function for an
on demand map or the scheduled_scans.php function is used for a scheduled map.
When using the map.php function for an on demand map, the map target may include a
single domain.
Using the map-2.php function, user-entered domains are specified in the
domain={target} parameter. Using the scheduled_scans.php function for a
scheduled map, domains are specified in the scan_target={target} parameter.
Using the map.php function, a single domain may be specified in the
domain={target} parameter.
Domain Formats
A domain can be identified as follows: 1) a domain name, 2) a domain name with
netblocks (one or more IPs and/or IP ranges), or 3) the special none domain with
netblocks. The none domain allows you to run multiple maps and map reports on
different network segments.
The domain specification is domain:netblocks, where the domain element is the
domain name (or fully qualified domain name) and each netblock may identify a single
IP address or IP range.
When running a map, netblocks may be included with a domain specification to expand
the scope of the discovery process beyond the domain. See The Discovery Process
earlier in this chapter for information about network discovery and how netblocks are
used in the network discovery process.
Domains may be specified as follows:
Domain Example
Domain Name mydomain.com
Multiple Domain Names mydomain1.com,mydomain2.com
Domain Name with Netblocks
Single IP mydomain.com:64.41.134.60
IP Range mydomain.com:10.10.10.1-10.10.10.100
IP Range and Single IP mydomain.com:10.10.10.1-10.10.10.100;64.41.134.60
User-specified IP none:64.41.134.61
Domain Example
User-specified IPs none:64.41.134.61;64.41.134.65
User-specified IPs/Ranges none:64.41.134.59-64.41.134.61;10.10.10.10
Domain Definitions
The user-entered target domains you supply for the map target override the domain
definition in your Qualys account. Lets say that your account has this domain:
mail.mymail.com:192.168.0.1-192.168.0.254
If you specify domain=mail.mymail.com, then the discovery process involves host
detection and information gathering for the target domain and the netblock.
If you specify domain=mail.mymail.com:192.1680.1-192.168.0.100, then the discovery
process involves host detection and information gathering for mail.mymail.com and
the netblock 192.1680.1-192.168.0.100. In this case, discovery includes fewer IPs than
those defined for the domain in the account.
Its possible to specify the domain name with two netblocks, fragments of the netblock
defined in the account. For the mail.mymail.com domain, you can specify:
domain=mail.mymail.com:192.168.0.1-192.168.0.10;192.168.0.20-
192.168.0.100
The netblock in a map request overrides the netblock defined in the user account.
Asset Groups
The asset_groups={title1,title2...} parameter identifies titles of one or more
asset groups with domains for the map request. Only asset group titles in the user
account may be specified.
Domains with private use internal IPs must be mapped using scanner appliances, which
are installed inside the corporate network. Domains for which the service discovers
internal IPs and domains specified with internal IPs in a netblock must be mapped using
scanner appliances.
Select one of these scanner options for each map. To map a domain with external devices,
select Qualys External Scanners. To map a domain with internal devices, select a Scanner
Appliance name or the Default Scanner option for the default scanner in each target asset
group.
When a scanner is unspecified for a map task, the Qualys External Scanners are used.
A scanner option must be selected when the map target includes internal devices. You
may select a Scanner Appliance name or the Default Scanner option for the default
scanner in each target asset group.
External Scanners
The external scanners at the Qualys Security Operations Center (SOC) can be used for
mapping domains with external IPs, devices on the network perimeter that can be seen
from the Internet. The external scanners are used by default when a scanner appliance
name is unspecified and the default scanner is disabled.
Default Scanner
The default scanner feature allows you to distribute a map task to the default scanner in
each target asset group. Use the default_scanner parameter to enable the default
scanner for a map request. When this feature is enabled, the default scanner as defined in
each target asset group is used for mapping the asset groups domains. When multiple
asset groups are mapped, the map request is distributed to the various scanners (scanner
appliances and/or external scanners) and the service compiles a single report with map
results.
Examples
To request a map of the domain www.mycompany.com using the external scanners
and to receive a map report, use this URL:
https://qualysapi.qualys.com/msp/map-2.php?domain=mycompany.com
To request a map for the following domain/netblock pair using the scanner appliance
Hong Kong:
mycompany.com:192.168.0.1-192.168.0.254
use this URL:
https://qualysapi.qualys.com/msp/map-2.php?domain=mycompany.com:19
2.168.0.1-192.168.0.254&iscanner_name=Hong+Kong
To request a map for this domain/netblock pair using the scanner appliance San
Francisco:
none:192.168.0.1-192.168.0.254
use this URL:
https://qualysapi.qualys.com/msp/map-2.php?domain=none:192.168.0.1
-192.168.0.254&iscanner_name=San+Franscisco
XML Report
The DTD for the XML map report returned by the map-2.php function can be found at
the following URL:
https://qualysapi.qualys.com/map-2.dtd
Appendix B provides information about the XML report generated by the map-2.php
function, including a recent DTD and XPath listing.
For a map request with multiple domains, the XML map report returned by the
map-2.php function includes all domains that were successfully discovered. Note that
when you view the map results for this request using the map_report.php function or
the Qualys user interface, each map report includes map results for one domain. Also, if
the map summary notification is enabled in your account, there is a separate notification
for each target domain.
Running Maps
While the map is running, the service uses a keep alive mechanism to maintain an open
connection to the Qualys server for the duration of map processing. Note that most
firewalls terminate a TCP connection if there is no traffic after a minute. To keep the
socket alive, the service sends a < !--keep-alive --> line every 30 to 40 seconds. These
< ! -- keep-alive -- > lines appear as comments at the top of the resulting XML map
report, available at the completion of the map.
At the conclusion of the network discovery process, the Qualys service returns an XML
map report. This report is not saved on the Qualys server unless the save_report=yes
parameter is present.
The map.php function cancels a map in progress if you close the HTTP connection unless
save_report=yes is set when the map request is made.
User Permissions
User permissions for the map.php function are described below.
User Role Permissions
Manager Map any domain in subscription.
Unit Manager Map domain in users business unit.
Scanner Map domain in users account.
Reader No permission to map any domains.
Parameters
The parameters for map.php are described below.
Parameter Description
map_title={title} (Optional) Specifies a title for the map. The map title can
have a maximum of 2,000 characters. When specified, the
map title appears in the header section of the map results.
When unspecified, the API returns a standard, descriptive
title in the header section.
domain={target} (Required) Specifies the target domain. Include the domain
name only; do not enter www. at the start of the domain
name. Netblocks may be specified with a domain name. See
Target Domain Single Domain below for more
information.
iscanner_name={name} (Optional) Specifies the name of the scanner appliance to be
used for the map. If the map target has private use internal
IPs, you must specify this parameter. See Scanner Selection
for Maps Single Domain below for more information.
Parameter Description
option={title} (Optional) Specifies the title of an option profile to be applied
to the map. The profile title must be defined in the user
account, and it can have a maximum of 64 characters. If
unspecified, the default option profile in the user account is
applied. Note that custom option profiles can be defined only
in the Qualys user interface.
save_report=yes (Optional) Saves the map report on the Qualys server for
later use. When specified, a map summary email notification
is sent to users who have this option enabled in their user
accounts. A valid value is yes to save the map report, or
no (the default) to not save the report.
If set, you can close the HTTP connection when the map is in
progress, without cancelling the map. In this case, the map
continues and the resulting map report is saved on the
Qualys server.
Examples
To request a map of the domain www.mycompany.com using the scanner appliance
My Scanner and the default option profile, and to receive a map report, use this URL:
https://qualysapi.qualys.com/msp/map.php?domain=mycompany.com&isca
nner_name=My+Scanner
To request a map using the scanner appliance Tiger for this domain/netblock pair:
mycompany.com:192.168.0.1-192.168.0.254
use this URL:
https://qualysapi.qualys.com/msp/map.php?domain=mycompany.com:192.
168.0.1-192.168.0.254&iscanner_name=Tiger
To request a map using the scanner appliance Giraffe for this domain/netblock pair:
none:192.168.0.1-192.168.0.254
use this URL:
https://qualysapi.qualys.com/msp/map.php?domain=none:192.168.0.1-
192.168.0.254&iscanner_name=Giraffe
XML Report
The DTD for the XML map report returned by the map.php function can be found at the
following URL:
https://qualysapi.qualys.com/map.dtd
Appendix B provides information about the XML report generated by the map.php
function, including a recent DTD and XPath listing.
XML Report
The DTD for the XML running scans and maps list report returned by the
scan_running_list.php function can be found at the following URL:
https://qualysapi.qualys.com/scan_running_list.dtd
Appendix A provides information about the XML report generated by the
scan_running_list.php function, including a recent DTD and XPath listing.
Parameters
The one parameter for scan_cancel.php is described below.
Parameter Description
ref={value} (Required) Specifies the map reference for the map to be
cancelled (or a scan reference for the scan to be cancelled). A
map reference starts with map/. To find the appropriate
reference, use the scan_running_list.php function.
Example
To cancel a map in progress with the code map/987659876.19876, use the following
URL:
https://qualysapi.qualys.com/msp/scan_cancel.php?
ref=map/987659876.19876
XML Report
When you cancel a map, the scan_cancel.php returns an XML success message like
this:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE GENERIC_RETURN SYSTEM
"https://qualysapi.qualys.com/generic_return.dtd">
<GENERIC_RETURN>
<API name="scan_cancel" username="jim" at="2005-03-
22T22:32:20Z" />
<RETURN status="SUCCESS">
The map will be canceled ASAP.
</RETURN>
</GENERIC_RETURN>
The DTD for the message returned by the scan_cancel.php function can be found at
the following URL:
https://qualysapi.qualys.com/generic_return.dtd
Parameters
The two optional parameters for map_report_list.php are described below.
Parameter Description
last=yes (Optional) Used to retrieve information only about the last
saved map report. A valid value is yes to retrieve the last
saved map report, or no (the default) to retrieve all map
reports.
domain={target} (Optional) Used to receive a list of all saved map reports for
the specified target domain.
If you include both domain={target} and last=yes, you will receive information
about the last saved map for the target domain.
Example
To receive information about the last saved network map for the domain
www.companyabc.com, specify a URL with the last=yes and the
domain={target} parameters like this:
https://qualysapi.qualys.com/msp/map_report_list.php?
domain=www.companyabc.com&last=yes
XML Report
The DTD for the XML map report list report returned by the map_report_list.php
function can be found at the following URL:
https://qualysapi.qualys.com/map_report_list.dtd
Appendix B provides information about the XML report generated by the
map_report_list.php function, including a recent DTD and XPath listing.
Each entry in the map report list returned by the map_report_list.php function
identifies a saved map report for a specific domain. If you issue a map request for
multiple domains using the map-2.php function, there is a separate saved map report
for each domain in the map target. For example, if you run the map-2.php function and
your map target includes asset groups with a total of five domains, there are five separate
map reports saved on the Qualys server. The separate maps may be retrieved using the
map_report.php function, one at a time.
Parameters
The one parameter for map_report.php is described below.
Parameter Description
ref={value} (Required) Specifies the map reference for the scan to be
retrieved. A map reference starts with map/. To find the
appropriate reference, use the map_report_list.php
function.
Example
To retrieve a saved map report with the reference code map/987659876.19876, use the
following URL:
https://qualysapi.qualys.com/msp/map_report.php?
ref=map/987659876.19876
XML Report
The output from the map_report.php function is identical to the report produced by
the map.php function. The DTD for the XML map report returned by these functions can
be found at the following URL:
https://qualysapi.qualys.com/map.dtd
Typically a report returned from the map_report.php function will be returned quicker
than a report returned from the map.php function because the network map request has
already been processed.
Appendix B provides information about the XML report generated by the map.php and
map_report.php functions, including a recent DTD and XPath listing.
Parameters
The one parameter for scan_report_delete.php is described below.
Parameter Description
ref={value} (Required) Specifies the map reference for the map to be
deleted. A map reference starts with map/. To find the
appropriate reference, use the map_report_list.php
function.
Example
To delete a saved map report with the reference code map/999666888.12345, use the
following URL:
https://qualysapi.qualys.com/msp/scan_report_delete.php?
ref=map/999666888.12345
The DTD for the message returned by the scan_report_delete.php function can be
found at the following URL:
https://qualysapi.qualys.com/generic_return.dtd
Preferences Functions
The preferences functions perform the following: schedule scans and/or maps to occur
on a regular basis, set scan service options in the default option profile, view asset groups
and Scanner Appliances in the user account.
Preferences are account-level configurations. The preferences functions display and edit
configurations in the user account.
Scan Options
The scan_options.php function is used to set scan options in the default option
profile in the user account. These options allow you to specify ports to scan, and whether
dead hosts and/or load balanced hosts will be scanned.
The DTD for the XML document returned by the scan_options.php function can be
found at the following URL:
https://qualysapi.qualys.com/scan_options.dtd
Asset Management
Qualys has released a new Asset Management Suite. This suite of API functions supports
the management, assignment and tracking of assets for effective vulnerability
management. It is recommended that you update to the new asset management functions
which are described in Chapter 5, Asset Management.
These asset management functions will be retired at a future date: ip_list.php,
domain_list.php and group_list.php.
Task Target
The task target is defined using the scan_target and asset_groups parameters. For
a scan task, you may specify a combination of IP addresses, IP address ranges, and asset
groups. For a map task, you may specify a combination of domain names and asset
groups.
The scan_target parameter is used to specify the target for a new scheduled scan or
map. To add a scan task on IP addresses using the external scanner, use this URL:
https://qualysapi.qualys.com/msp/scheduled_scans.php?
add_task=yes&type=scan&scan_target={addresses}
To add a map task on two domains using a scanner appliance, use this URL:
https://qualysapi.qualys.com/msp/scheduled_scans.php?add_task=y
es&type=map&scan_target={domain1,domain2}&iscanner_name=name
Scanner Selection
For each scan a scanner is applied to the task. External scanning at the network perimeter
is supported by the Qualys external scanners, and internal scanning of private use
internal IPs is supported using Qualys Scanner Appliances. Private use internal IPs must
be scanned using scanner appliances, which are installed inside the corporate network.
When a scanner is unspecified for a scan task, the Qualys External Scanners are used.
User Permissions
User permissions for the scheduled_scans.php function are described below.
User Role Permissions
Manager Add tasks for all assets in the subscription.
Remove all tasks.
View all tasks in the subscription.
Unit Manager Add tasks for assets in users business unit.
Remove tasks in users business unit.
View tasks in the subscription* (see below).
Scanner Add tasks for assets in users account.
Remove users scheduled tasks.
View tasks in the subscription* (see below).
Readers No permission to add and remove tasks.
View tasks in the subscription* (see below).
* Qualys includes an account permission setting that restricts Unit Managers, Scanners,
and Readers from viewing scheduled tasks on unassigned assets. For more details on this
and user role-based permissions, see the Qualys online help.
Parameters
General Information
The parameters below apply to all scheduled tasks, both scans and maps. There are four
required parameters to add a scheduled scan, and five required parameters for a
scheduled map. The iscanner_name parameter is required when a Scanner Appliance
is used.
Parameter Description
add_task=yes (Required to add a task) Used to add a scheduled task.
scan_title={title} (Required to add a task) Specifies a title for the scheduled task.
type=scan | map | all (Optional) Specifies the scheduled task type: scan for a scan
task or map for a map task. If unspecified, the type is set to
type=scan. For a scheduled map, this parameter must be set
to type=map. The all type applies only when retrieving a list
of scheduled tasks. For example, to receive a list of scheduled
scans and maps, specify type=all.
active=yes | no (Required to add a task) Specifies whether the scheduled task
is active. When active, the scheduled task runs at the specified
time. When inactive, the scheduled task does not run at its
specified time.
Parameter Description
scan_target={target} (Optional) Specifies the task target. For a scheduled scan,
specify IPs and/or IP ranges. For a scheduled map, specify one
or more domain names. Multiple domain names must be
comma separated. This parameter and/or asset_groups
must be specified when adding a scheduled task.
Parameter Description
default_scanner=1 (Optional) Enables the default scanner feature, which is only
valid when the task target consists of asset groups. A valid
value is 1 to enable the default scanner, or 0 (the default) to
disable it. Using Express Lite, Internal Scanning must be
enabled in your account.
Start Time
The parameters listed below specify start time settings used to launch the scheduled task.
Some start time parameters are required for all scheduled tasks as indicated.
Parameter Description
time_zone_code={value} (Optional) Specifies the time zone for the task as a pre-defined
code. For example, the time zone code for US California is
US-CA. Time zone codes must be specified in upper case. Valid
time zone codes are provided in the Time Zone Code List
returned by the time_zone_code_list.php function.
For a time zone code that supports Daylight Saving Time, you
can specify observe_dst=yes so that the task is updated
automatically to reflect local time.
Parameter Description
start_hour={hour} (Required) Specifies the hour when the task will start. The
hour variable is an integer from 0 to 23, where 0 represents
12 AM, 7 represents 7 AM, and 22 represents 10 PM.
start_minute={minute} (Optional) Specifies the minute when the task will start. A
valid value is an integer from 0 to 59.
end_after={value} (Optional) Specifies the number of hours to wait for a map or
scan to complete before deactivating the task. By default the
service does not deactivate tasks until they complete. A valid
value is an integer from 1 to 48.
Recurrence
The recurrence parameter listed below is optional. By default the task does not end
unless it is deactivated or deleted.
Parameter Description
recurrence={value} (Optional) Specifies the number of times the task will be run
before it is deactivated. A valid value is an integer from 1 to 99.
For example, if you set recurrence=2, the scheduled task
will be deactivated after it runs 2 times.
Remove Task
The following parameters are required to remove a scheduled task. Both parameters
must be specified. When these parameters are set, the function removes the specified
scheduled task and returns an XML success message.
Parameter Description
drop_task=yes (Required) Used to delete a scheduled task. A valid value is
yes to delete the task or no (the default) to not delete the
task.
task_id={taskID} (Required) Specifies the task ID of the task to be deleted. The
Qualys service assigns a task ID to each scheduled task when
the task is added.
If you remove a scheduled task, any saved reports for the scheduled task remain on the
Qualys server.
The DTD for the XML document returned from time_zone_code_list.php can be
found at the following URL:
https://qualysapi.qualys.com/time_zone_code_list.dtd
Sample time zone code list output is shown below:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE SCHEDULEDSCANS SYSTEM
"https://qualysapi.qualys.com/time_zone_code_list.dtd">
<TIME_ZONES>
<TIME_ZONE>
<TIME_ZONE_CODE>AS</TIME_ZONE_CODE>
<TIME_ZONE_DETALS><![CDATA[(GMT-1100) American Samoa: Pago
Pago]]></TIME_ZONE_DETALS>
<DST_SUPPORTED>0</DST_SUPPORTED>
</TIME_ZONE>
<TIME_ZONE>
<TIME_ZONE_CODE>UM2</TIME_ZONE_CODE>
<TIME_ZONE_DETALS><![CDATA[(GMT-1100) Midway Islands
(U.S.)]]></TIME_ZONE_DETALS>
<DST_SUPPORTED>0</DST_SUPPORTED>
</TIME_ZONE>
<TIME_ZONE>
<TIME_ZONE_CODE>NU</TIME_ZONE_CODE>
<TIME_ZONE_DETALS><![CDATA[(GMT-1100) Niue: Alofi]]>
</TIME_ZONE_DETALS>
<DST_SUPPORTED>0</DST_SUPPORTED>
</TIME_ZONE>
<TIME_ZONES>
Each <TIME_ZONE> element identifies a time zone properties, including the code, in the
sub-elements described below.
Element Description
<TIME_ZONE_CODE> A time zone code. These are pre-defined codes.
<TIME_ZONE_DETAILS> Text describing the time zone.
<DST_SUPPORTED> A value (0 or 1) indicating whether the time zone supports
Daylight Saving Time (DST). 1 is reported when DST is
supported, and 0 is reported when DST is not supported.
Examples
Scheduled Tasks Lists
To receive an XML document including a list of all scheduled scans, use this URL:
https://qualysapi.qualys.com/msp/scheduled_scans.php
To receive an XML document with a list of all scheduled scans and maps, use this URL:
https://qualysapi.qualys.com/msp/scheduled_scans.php?type=all
To receive an XML document including a list of all scheduled maps, use this URL:
https://qualysapi.qualys.com/msp/scheduled_scans.php?type=map
Scheduled Scans
The URL below adds a daily scan called Scan1 that is defined to scan IP address
10.20.30.3. Scan1 is scheduled to start at 2 PM every day in Los Angeles, California
where DST is observed. The URL below includes all parameters required to add Scan1
as an active scan:
https://qualysapi.qualys.com/msp/scheduled_scans.php?add_task=y
es&scan_title=Scan1&active=yes&scan_target=10.20.30.3&iscanner_
name=scanner1&occurrence=daily&frequency_days=1&time_zone_code=
US-CA&observe_dst=yes&start_hour=14&start_minute=0
To add a daily scan called My Daily Scan that is defined to scan IP address 10.10.10.3,
specify the URL below. This daily scan is scheduled to start at 4 PM every day in the
California time zone. The URL below includes all required parameters:
https://qualysapi.qualys.com/msp/scheduled_scans.php?add_task=y
es&scan_title=My+Daily+Scan&active=yes&scan_target=10.10.10.3&i
scanner_name=scanner1&occurrence=daily&frequency_days=1&time_zo
ne_code=US-CA&observe_dst=yes&start_hour=14&start_minute=0
The URL below adds a weekly scan called Scan2 that is defined to scan the asset
groups Finance and Operations. Scan2 is scheduled to start at 10 AM every 2nd
Tuesday in Paris, France where DST is observed. The URL below includes all required
parameters:
https://qualysapi.qualys.com/msp/scheduled_scans.php?add_task=y
es&scan_title=Scan2&active=yes&asset_groups=Finance,Operations&
iscanner_name=scanner2&option=RV10+Options&occurrence=weekly&fr
equency_weeks=2&weekdays=Tuesday&time_zone_code=FR&observe_dst=
yes&start_hour=10&start_minute=0&recurrence=90
The URL below adds a monthly scan called Scan3 that is defined to scan 3 asset groups
with the default scanner enabled. Scan3 starts every 2 months on the 2nd Friday of the
month at 6 PM in New York City where DST is observed.
https://qualysapi.qualys.com/msp/scheduled_scans.php?add_task=y
es&scan_title=Scan3&active=yes&asset_groups=Critical+Group+4,Cr
itical+Group+5,Critical+Group+6&default_scanner=1&occurrence=mo
nthly&frequency_months=2&day_of_week=5&week_of_month=2&time_zon
e_code=US-NY&observe_dst=yes&start_hour=18&start_minute=0
The URL below adds a monthly scan called My Scheduled Scan that uses the scanners
in asset group feature.
https://qualysapi.qualys.com/msp/scheduled_scans.php?
add_task=yes&scan_title=My+Scheduled+Scan&active=yes&
asset_groups=Group+A,Group+B,Group+C&scanners_in_ag=1&
occurrence=monthly&frequency_months=2&day_of_week=5&
week_of_month=2& time_zone_code=US-NY&
observe_dst=yes&start_hour=18& start_minute=0
The URL below removes a scheduled scan with the task ID 6703. Two parameters are
required as shown.
https://qualysapi.qualys.com/msp/scheduled_scans.php?drop_task=
yes&task_id=6703
Scheduled Maps
To add a weekly map called My Weekly Map to perform discovery on
mydomain.com, specify the URL below. This weekly map runs every 8 weeks and
starts on Sunday at 2 AM in Tokyo, Japan.
https://qualysapi.qualys.com/msp/scheduled_scans.php?add_task=y
es&scan_title=My+Weekly+Map&active=yes&type=map&scan_target=myd
omain.com&iscanner_name=scanner5&occurrence=weekly&frequency_we
eks=8&weekdays=Sunday&time_zone_code=JP&start_hour=2&start_minu
te=0
The URL below removes a scheduled map with the task ID 11155. Note that two
parameters are required as shown.
https://qualysapi.qualys.com/msp/scheduled_scans.php?
drop_task=yes&task_id=11155
XML Report
The DTD for the XML results returned by the scheduled_scans.php function can be
found at the following URL:
https://qualysapi.qualys.com/scheduled_scans.dtd
This XML document supports reporting on scheduled scans and maps.
Appendix C provides information about the XML report generated by the
scheduled_scans.php function, including a recent DTD and XPath listing.
Note: The Performance Level settings provide users with greater control over the overall
performance level for both scans and maps. The Bandwidth Impact (set using the
bandwidth parameter) was a scan option in Qualys API Versions 3.4 and earlier, is no
longer supported.
Parameters
Three parameters can be specified with the scan_options.php function.
Parameter Description
scandeadhosts={yes|no} Supports scanning dead hosts. By default, dead hosts are not
scanned.
loadbalancer={yes|no} Checks for load balanced hosts during scans. When a load
balancer is detected, all systems behind it are also scanned for
vulnerabilities. By default, load balanced hosts are not
checked.
ports={default|full|{range}} Specifies TCP ports to scan. By default, the service scans the
most commonly-used TCP ports.
Examples
To scan dead hosts, use this URL:
https://qualysapi.qualys.com/msp/scan_options.php?scandeadhosts=yes
To check for load balancer hosts and scan all systems behind them, use this URL:
https://qualysapi.qualys.com/msp/scan_options.php?loadbalancer=yes
To scan the Standard TCP port list, use this URL:
https://qualysapi.qualys.com/msp/scan_options.php?ports=default
To scan only TCP ports 80 and 443, use this URL:
https://qualysapi.qualys.com/msp/scan_options.php?ports=80,443
XML Report
The DTD for the XML scan options report returned by the scan_options.php function
can be found at the following URL:
https://qualysapi.qualys.com/scan_options.dtd
Appendix C provides information about the XML report generated by the
scan_options.php function, including a recent DTD and XPath listing.
XML Report
The DTD for the XML Scanner Appliance list report returned by the
iscanner_list.php function can be found at the following URL:
https://qualysapi.qualys.com/iscanner_list.dtd
Appendix C provides information about the XML report generated by the
iscanner_list.php function, including a recent DTD and XPath listing.
View IP List
ip_list.php Function
The ip_list.php function is used to view a list of IP addresses in the user account. To
view the IP list, use the following URL:
https://qualysapi.qualys.com/msp/ip_list.php
When no parameters are specified with an ip_list.php request, the function returns a
list of IP ranges. Each range is defined by a start IP address and an end IP address.
There are two optional parameters, which may be used to retrieve host details:
detailed_results and detailed_no_results. For information on these
parameters, see View Asset IP List in Chapter 5, Asset Management.
User permissions for the ip_list.php function are the same as the user permissions for
the new asset_ip_list.php function. See below for information on this new function.
The DTD for the XML IP list report returned by the ip_list.php function can be found
at the following URL:
https://qualysapi.qualys.com/ip_list.dtd
Appendix D provides information about the XML report generated by the ip_list.php
function and the new asset_ip_list.php function.
Asset management configurations are available in both the Qualys user interface and
the Qualys API. For example if you add an IP range to the subscription, the IP range
is listed in the user interface as well as the asset IP list returned by the
asset_ip_list.php function. These IP addresses are available to all users based
on their user role and associated asset permissions.
Asset Management
Asset Management Functions
Search Assets
The asset search function (asset_search.php) is used to search for assets that the user
account has permission to access, and return search results. The search results are
returned using the asset search DTD (asset_search_report.dtd).
Its recommended best practice to include these vulnerability checks to obtain basic host
information available in your account.
Host Scan Data Vulnerability Check Title (QID)
Operating System Operating System Detected (QID 45017)
TCP services Open TCP Services List (QID 82023)
UDP services Open UDP Services List (QID 82004)
DNS host name DNS Host Name (QID 6)
NetBIOS host name NetBIOS Host Name (QID 82044)
For host management, it may be desirable to find additional host settings, which are
returned by specific vulnerability checks. Using the Qualys user interface, you can search
for vulnerabilities to include.
Host Tracking
Every host IP address in the subscription is assigned a tracking method: IP address, DNS
host name or NetBIOS host name. In a new subscription, all hosts are tracked by
IP address. The assigned tracking method determines how the host will be reported in
scan reports. Hosts assigned a tracking method of DNS or NetBIOS host name will be
listed in alphabetical order by host name. Hosts assigned a tracking method of IP address
will be listed in numerical order by IP address.
Using asset_ip.php, you can assign another tracking method to one or more host
IP addresses using the tracking_method parameter. For each request, one tracking
method may be assigned to the target IP addresses specified in the request. For an add
request, the new IP addresses are tracked by IP address by default unless the
tracking_method parameter is used to specify another method.
Qualys creates host scan data entries (records) for each scan task. Host scan data is a part
of a hosts vulnerability history, which is saved separately from saved scan results. Each
host scan data entry identifies the host information including its IP address, DNS host
name and NetBIOS host name if available.
Note these important issues when changing the tracking method. You can change the
tracking method to dns or netbios when the service can: 1) Find an associated host
name (DNS or NetBIOS) in the scan data entry for each target host, and 2) Resolve each
target IP address to one host name (DNS or NetBIOS) based in a host scan data entry.
The tracking method can be changed to DNS or NetBIOS when the associated host name
was gathered in a previous scan. Its possible that the host IP address was scanned,
however the DNS or NetBIOS host name was not gathered and thus not part of the host
scan data entry.
Numerous scan tasks on the same IP address may gather different DNS and NetBIOS
host names. In this case, your account will have multiple host scan data entries. To
change the tracking method, there can be only one scan data entry for each host. If there
are multiple entries for the same IP address, you must purge scan data entries using the
Qualys user interface before sending an edit request using asset_ip.php to change the
tracking method for the host.
User Permissions
User permissions for the asset_ip.php function are described below.
User Role Permissions
Manager Add/Edit IP addresses and related data in the subscription.
Unit Manager Add IP addresses and related data in the subscription when the
Unit Manager has the add assets permission.
Parameters
The parameters for asset_ip.php are described below.
Parameter Description
action=add|edit (Required) A flag indicating an add or edit request. Specify
add to add a new IP address, or edit to edit an existing
IP address.
host_ips={addresses} (Required) Specifies one or more IP addresses to add or edit.
You may enter a combination of individual IPs and IP ranges.
CIDR notation is supported. Multiple entries are comma
separated. For each API request, you can specify an unlimited
number of IPs, if your subscription permits. For example, an
entire class A network can be added using 10.10.10.0/8.
Parameter Description
host_netbios={hostname} (Optional for edit request only) Specifies a NetBIOS host name
to identify a specific host scan data entry (record) that you wish
to edit. This parameter is used when there are multiple host
scan data entries with the same IP address.
Examples
(Manager) Use this URL to add the IP addresses 10.10.10.1-10.10.10.255, tracked by IP
address, to the subscription:
https://qualysapi.qualys.com/msp/asset_ip.php?action=add&
host_ips=10.10.10.1-10.10.10.255&owner=acme_bb&ud1=Toyko
&ud2=Manufacturing&ud3=4567
Next well describe some use cases for a user account including several IP addresses that
have been scanned. Multiple host scan data entries are shown below.
IP Address NetBIOS Host name DNS Host name Tracking Method
1 10.10.10.1 Apple corp1.acme.com IP address
2 10.10.10.1 Orange corp1.acme.com IP address
3 64.41.134.60 DEMO02 demo02.qualys.com NetBIOS host name
The host 10.10.10.1 in the user account has been scanned 2 times and there are 2 host
scan data entries. For the first scan in row 1 the NetBIOS host name was detected as
Apple, and for the second scan in row 2 the NetBIOS host name was detected as Orange.
Use this URL to add the comment RB Team to both host scan data entries:
https://qualysapi.qualys.com/msp/asset_ip.php?action=edit&
host_ips=10.10.10.1&comment=RB+Team
Use this URL to add the comment RB Team to the host scan data entry with the
NetBIOS host name Apple:
https://qualysapi.qualys.com/msp/asset_ip.php?action=edit&
host_ips=10.10.10.1&comment=RB+Team&host_netbios=Apple
Its not possible to change the tracking method for IP address 10.10.10.1 in the sample
user account because there are 2 host scan data entries with different NetBIOS host
names. Note that this limitation applies when there are multiple host scan data entries
with different DNS names. For this user account, the URL below will return an error:
https://qualysapi.qualys.com/msp/asset_ip.php?action=edit&
host_ips=10.10.10.1&tracking_method=netbios
To resolve the error, log into the Qualys user interface and edit the host and follow the
online instructions to purge host scan data entries. If you select the purge option, the
most recent scan data is saved and the older scan data is purged (removed from the user
account).
The IP address 64.41.134.60 has only one host scan data entry, so you can change the
tracking method. Use this URL to change the tracking method from NetBIOS host name
to DNS host name:
https://qualysapi.qualys.com/msp/asset_ip.php?action=edit&
host_ips=64.41.134.60&tracking_method=dns
The DTD for the XML status message can be found at the following URL:
https://qualysapi.qualys.com/generic_return.dtd
Parameters
The parameters for asset_ip_list.php are described below. These parameters are
optional, and are used to retrieve host details. Both parameters may be specified together
in the same asset_ip_list.php request to retrieve host details for all hosts in the
user account.
Parameter Description
detailed_results={0|1} (Optional) Specifies whether to display details for scanned
hosts, sorted by IP address. These include hosts with
vulnerabilities detected, and hosts with no vulnerabilities
detected.
XML Report
The DTD for the XML IP list report returned by the asset_ip_list.php function can
be found at the following URL:
https://qualysapi.qualys.com/ip_list.dtd
Appendix D provides information about the XML report generated by the
asset_ip_list.php function, including a recent DTD and XPath listing.
Add/Edit Domains
asset_domain.php Function
The Asset Domain API (/msp/asset_domain.php) is used to manage (add and edit)
asset domains and related netblocks in the subscription. The domains in the subscription
may be used as targets for network discovery, also referred to as mapping. For
information on domains with netblocks, refer to Using Domains with Netblocks in
Chapter 3. Using the Qualys user interface, Managers can assign domains to other users.
Express Lite: This API is available to Express Lite users.
The asset_domain.php function enables a Manager to make a request to add or edit
domains in the subscription. When you make a request, the function performs the
requested update and returns an XML document indicating the status of the request.
User permissions for the asset_domain.php function are described below.
User Role Permissions
Manager Add/Edit asset domains and related netblocks in the
subscription.
Unit Manager No permission to add/edit domains and related netblocks.
Scanner No permission to add/edit domains and related netblocks.
Reader No permission to add/edit domains and related netblocks.
Parameters
The parameters for asset_domain.php are described below.
Parameter Description
action=add|edit (Required) A flag indicating an add or edit request. Specify
add to add a new domain, or edit to edit an existing
domain.
domain={domain} (Required) Specifies the domain name to add or edit. Include
the domain name only; do not enter www. at the start of the
domain name.
netblock={ranges} (Optional for add request, and Required for an edit request)
Specifies the netblock(s) associated with the domain name.
Multiple netblocks are comma separated.
Examples
Add Domain
Use the URL below to add the domain mydomain.com to the subscription:
https://qualysapi.qualys.com/msp/asset_domain.php?action=add&
domain=mydomain.com
Use the URL below to add the domain mydomain.com with netblocks to the
subscription:
https://qualysapi.qualys.com/msp/asset_domain.php?action=add&
domain=mydomain.com&netblock=10.10.10.0/24,10.2.34.44-
10.2.34.49
Use the URL below to add the domain none with netblocks to the subscription:
https://qualysapi.qualys.com/msp/asset_domain.php?action=add&
domain=none&netblock=10.10.10.0/24,64.41.134.59-64.41.134.61
Edit Domain
For the domain acme.com there are no netblocks defined. Use the URL below to add
netblocks to the domain:
https://qualysapi.qualys.com/msp/asset_domain.php?action=edit&
domain=acme.com&netblock=10.10.10.0/24,10.1.1.0-10.1.1.100
For the domain mycompany.com there are multiple netblocks defined. Use the URL
below to remove all netblocks associated with the domain:
https://qualysapi.qualys.com/msp/asset_domain.php?action=edit&
domain=mycompany.com&netblock=
The DTD for the XML status message can be found at the following URL:
https://qualysapi.qualys.com/generic_return.dtd
XML Report
The DTD for the XML domain list report returned by the asset_domain_list.php
function can be found at the following URL:
https://qualysapi.qualys.com/domain_list.dtd
Appendix D provides information about the XML report generated by the
asset_domain_list.php function, including a recent DTD and XPath listing.
Edit Title. When editing an asset group, the title can be changed using the new_title
parameter. For this type of request, you specify both the title parameter and the
new_title parameter in the edit request.
Edit IP Addresses. For an add request, specify the host_ips parameter to add IPs. If
you specify this parameter for an edit request, the IPs you specify replace any existing
IPs. For example, if the target asset group includes IP 10.10.10.1 and the edit request
includes the parameter host_ips=10.10.10.20, then IP 10.10.10.20 is saved in the
asset group and IP 10.10.10.1 is removed. Other parameters are available for an edit
request, allowing you to manage IP addresses on an ongoing basis. The add_host_ips
parameter allows you to append IP addresses in an existing group, and the
remove_host_ips parameter allows you to remove IP addresses in an existing group.
(Note if both add_host_ips and remove_host_ips are included in the same request,
the IPs in add_host_ips are added first before IPs in remove_host_ips are
removed.)
Edit Other Attributes. When editing asset group attributes other than title or IP addresses,
as described above, existing attribute values are replaced with newly specified values.
Clear Attributes. When editing asset group attributes other than title, the user can send
an edit request to clear (reset) attributes by assigning the empty string . For example, if
the division attribute is set to Division 70 and you want to clear the division value,
send an edit request with division equal to empty string (division=).
User Permissions
User permissions for the asset_group.php function are described below. Unit
Managers and Scanners have edit permissions on limited asset groups related to asset
group owner (user account). Note the user who creates an asset group becomes its owner.
User Role Permissions
Manager Add/Edit asset group in subscription. Asset group may include
IP addresses, domains, and scanner appliances in the
subscription.
Unit Manager Add/Edit asset group in users business unit. Asset group may
include IP addresses, domains, and scanner appliances in the
users business unit.
Edit asset group owned by any user (self, another Unit Manager,
Scanner) in the same business unit.
Scanner Add/Edit asset group in users business unit. Asset group may
include IP addresses, domains, and scanner appliances in the
users account.
Parameters
The parameters for asset_group.php are described below.
Parameter Description
action=add|edit (Required) A flag indicating an add or edit request. Specify
add to add a new asset group, or edit to edit an existing
group.
title={title} (Required) Specifies the title of the asset group. The title may
include a maximum of 255 characters (ascii).
new_title={new_title} (Optional for edit request only) Specifies the new title of the
asset group. The title may include a maximum of 255 characters
(ascii).
Parameter Description
host_ips={addresses} (Optional) Specifies one or more IP addresses to be added to
the asset group. This parameter may be specified for an add
request (action=add) or edit request (action=edit). When
this parameter is specified for an edit request, IPs you specify
are added and any existing IPs are removed.
Parameter Description
default_scanner_appliance= (Optional) Specifies the name of the default scanner appliance
{name} for the asset group. The default scanner appliance name must
be available in the user account, and must be one of the
appliance names in the asset group.
Parameter Description
cvss_enviro_td={setting} (Optional) The setting for CVSS Environmental metric: Target
Distribution. This parameter is valid only when CVSS Scoring
is enabled in the user account.
Examples
The URL below adds a new asset group Finance for scanning that includes internal
IP addresses and scanner appliances:
https://qualysapi.qualys.com/msp/asset_group.php?action=add&
title=Finance&host_ips=10.10.10.1-10.10.10.255&scanner_appli
ances=Tiger,Monkey&default_scanner_appliance=Tiger
The URL below edits the asset group Finance and renames the title to Finance NY:
https://qualysapi.qualys.com/msp/asset_group.php?action=edit&
title=Finance&new_title=Finance+NY
The URL below edits the asset group Finance and appends the IPs 10.10.10.1-
10.10.10.100 and 64.41.134.60 to the group:
https://qualysapi.qualys.com/msp/asset_group.php?action=edit&
title=Finance&add_host_ips=10.10.10.110.10.10.100,64.41.134.60
The URL below adds a new asset group Finance NY Map that includes domain names
for network discovery/mapping:
https://qualysapi.qualys.com/msp/asset_group.php?action=add&
title=Finance+NY+Map&domains=mycompany.com,none:10.10.10.1-
10.10.10.255,qualys-test.com&scanner_appliances=Tiger&defau
lt_scanner_appliance=Tiger
The URL below adds a new asset group Finance for scanning that includes internal IP
addresses and scanner appliances, and CVSS Environmental metrics are assigned:
https://qualysapi.qualys.com/msp/asset_group.php?action=add&
title=Finance&
host_ips=10.10.10.1-10.10.10.255&
scanner_appliances=Tiger,Monkey&
default_scanner_appliance=Tiger&
cvss_enviro_cdp=medium-high&
cvss_enviro_td=medium&
cvss_enviro_ir=medium&
cvss_enviro_ar=high
The URL below edits the asset group Finance and changes the CVSS Environmental
metric Integrity Requirement to low.
https://qualysapi.qualys.com/msp/asset_group.php?action=edit&
title=Finance&cvss_enviro_ir=low
<RETURN status="SUCCESS">
The operation was successfully completed.
</RETURN>
</GENERIC_RETURN>
The DTD for the XML status message can be found at the following URL:
https://qualysapi.qualys.com/generic_return.dtd
XML Report
The DTD for the XML asset group list returned by the asset_group_list.php
function can be found at the following URL:
https://qualysapi.qualys.com/asset_group_list.dtd
Appendix D provides information about the XML report generated by the
asset_group_list.php function, including a recent DTD and XPath listing
The DTD for the XML status message can be found at the following URL:
https://qualysapi.qualys.com/generic_return.dtd
When host scan data is not available for searching, any search requests on the data return
no asset search results. For example, if you performed a selective vulnerability scan on a
particular host without scanning for the Operating System Detected vulnerability
check (QID 45017), and then send an asset_search.php request for hosts by operating
system, using the host_os parameter, this particular host is not searched and it will not
appear in scan results.
Parameters
The parameters for asset_search.php are described below. At least one parameter is
required to identify target hosts.
Target Hosts
The search target identifies target hosts. You must specify target_ips with IP
addresses/ranges and/or target_asset_groups with asset group titles. All specified
hosts are searched and results are returned for hosts matching the host parameters given.
Parameter Description
target_ips={addresses} (Optional) For the search target, specify hosts based on one or
more IP addresses. Enter IP addresses and/or ranges to be
included. Multiple entries are comma separated.
Host Parameters
Specifying host parameters allows you to limit search results to hosts having certain
attributes. Attributes include operating system, open ports, running services and others.
When host parameters are specified, only hosts in the search target with the specified
attributes are returned.
Parameter Description
dns={prefix:text} (Optional) Search for hosts based on a DNS host name that
matches a string you specify.
A valid prefix is: begin, match, contain, or end. The host name
string may have a maximum of 256 characters.
netbios={prefix:text} (Optional) Search for hosts based on a NetBIOS host name that
matches a string you specify.
A valid prefix is: begin, match, contain, or end. The host name
string may have a maximum of 256 characters.
host_os={prefix:text} (Optional) Search for hosts with an operating system name
using a text match prefix. For example, to search for operating
system names containing Linux, specify this:
host_os=contain:Linux
Parameter Description
vuln_qid={qid} (Optional) Specifies one or more QIDs (Qualys IDs) to search
for hosts with particular vulnerabilities. Up to 20 QIDs may be
entered. Multiple QIDs are comma separated.
Examples
The URL below searches for hosts in the asset group Critical Servers that are
vulnerable to QID 27279 FTP Backdoor Allows Administrator Privileges:
https://qualysapi.qualys.com/msp/asset_search.php?target_asset_
groups=Critical+Servers&vuln_qid=27279
The URL below searches for hosts in the asset group Critical Servers that have
vulnerabilities on TCP ports 80 and 443:
https://qualysapi.qualys.com/msp/asset_search.php?
target_asset_groups=Critical+Servers&vuln_port=80,443
The URL below searches for hosts in the IP range 10.10.10.1-10.10.10.255 that were
scanned within the last 10 days:
https://qualysapi.qualys.com/msp/asset_search.php?
target_ips=10.10.10.1-10.10.10.255&last_scan=within:10
The URL below searches for hosts which have a DNS host name starting with the string
demo:
https://qualysapi.qualys.com/msp/asset_search.php?
target_asset_groups=All&dns=begin:demo
XML Report
The DTD for the XML asset search results returned by the asset_search.php function
can be found at the following URL:
https://qualysapi.qualys.com/asset_search_report.dtd
Appendix D provides information about the XML report generated by the
asset_search.php function, including a recent DTD and XPath listing.
The template_id parameter is used to request an asset data report based on template
ID for an automatic type scan report To download a report for template ID 13527, use
the following URL:
https://qualysapi.qualys.com/msp/asset_data_report.php?
template_id=13527
<GLOBAL>0</GLOBAL>
</REPORT_TEMPLATE>
<REPORT_TEMPLATE>
<ID>232556</ID>
<TYPE>Auto</TYPE>
<TEMPLATE_TYPE>Scan</TEMPLATE_TYPE>
<TITLE><![CDATA[Executive Report]]></TITLE>
<USER>
<LOGIN><![CDATA[quays_ak12]]></LOGIN>
<FIRSTNAME><![CDATA[Jason]]></FIRSTNAME>
<LASTNAME><![CDATA[Kim]]></LASTNAME>
</USER>
<LAST_UPDATE>2008-11-11T17:11:55Z</LAST_UPDATE>
<GLOBAL>1</GLOBAL>
</REPORT_TEMPLATE>
<REPORT_TEMPLATE>
<ID>232557</ID>
<TYPE>Auto</TYPE>
<TEMPLATE_TYPE>Scan</TEMPLATE_TYPE>
<TITLE><![CDATA[Technical Report]]></TITLE>
<USER>
<LOGIN><![CDATA[quays_ak12]]></LOGIN>
<FIRSTNAME><![CDATA[Jason]]></FIRSTNAME>
<LASTNAME><![CDATA[Kim]]></LASTNAME>
</USER>
<LAST_UPDATE>2008-11-11T17:11:55Z</LAST_UPDATE>
<GLOBAL>1</GLOBAL>
</REPORT_TEMPLATE>
...
</REPORT_TEMPLATE_LIST>
XML Report
The DTD for the XML report returned by the asset_data_report.php function can
be found at the following URL:
https://qualysapi.qualys.com/asset_data_report.dtd
Appendix D provides information about the XML report generated by the
asset_data_report.php function, including a recent DTD and XPath listing.
Parameters
The parameters for asset_range_info.php are described below.
Parameter Description
target_ips={addresses} (Optional) Specifies one or more IP addresses and/or ranges to
be included in the report target. Multiple entries are comma
separated.
Parameter Description
target_asset_groups= (Optional) Specifies one or more asset group titles to be
{title1,title2,...} included in the report target. The asset group title All may be
specified to include all IP addresses in the user account.
Multiple titles are comma separated.
Examples
Use the following URL to download an asset range info report for the target IP address
range 10.10.10.1-10.10.10.17 and 10.0.100.0/24 as well as the target IP addresses
10.10.10.52.
https://qualysapi.qualys.com/msp/asset_range_info.php?
target_ips=10.10.10.1-10.10.10.17,10.0.100.0/24,10.10.10.52
Use the following URL to download an asset range info report for the asset group with
the title New York:
https://qualysapi.qualys.com/msp/asset_range_info.php?
target_asset_groups=New+York
Use the following URL to download an asset range info report for the target IP address
range 10.0.100.0/24 and the asset groups New York and Tokyo:
https://qualysapi.qualys.com/msp/asset_range_info.php?
target_ips=10.0.100.0/24&target_asset_groups=New+York,Tokyo
XML Report
The DTD for the XML report returned by the asset_range_info.php function can be
found at the following URL:
https://qualysapi.qualys.com/asset_range_info.dtd
Appendix D provides information about the XML report generated by the
asset_range_info.php function, including a recent DTD and XPath listing.
For complete information on report templates, refer to the Report section in the Qualys
online help.
Ticket Lifecycle
Qualys Manager users have the option to enable the Remediation Workflow feature for
the subscription using the Qualys user interface. Remediation Workflow is an automated
ticketing system based on remediation policy created by users. When this feature is
enabled, new tickets are created automatically based on the user-defined policy.
Ticket updates occur automatically by the service, triggered by security audits, and by
users editing tickets. Role-based access controls determine which users have the ability to
view which tickets, ensuring that only the appropriate users can access ticket
information. As new scan results become available, tickets are updated.
Users perform ticket updates when they take action on tickets by fixing vulnerabilities,
adding comments, or reassigning to other users as appropriate. Users also have the
ability to create tickets manually to track vulnerabilities which are not created
automatically by the policy in place.
Ticket Information
A remediation ticket tracks a vulnerability detected on a particular host and port. Each
ticket includes the following information:
Properties Every ticket is assigned a unique ticket number and ticket state
(Open, Resolved, Closed/Fixed, Closed/Ignored). Tickets may have a designated
assignee and may be marked as overdue or invalid.
Host information Host related information including IP address, operating
system detected, DNS host name and NetBIOS host name (if applicable).
Vulnerability information Information about the vulnerability associated with
this ticket, including the vulnerability title, its severity level as well as a description
of the threat and a verified solution to fix the issue.
History Ticket history including a complete history of ticket actions.
With this information, users with access rights to the ticket may take action on the ticket
to fix the vulnerability on the host.
Ticket Functions
A summary of the ticket functions that are available in the Qualys API are described
below.
XML results returned using the deleted ticket list output DTD:
https://qualysapi.qualys.com/ticket_list_deleted_output.dtd
get_tickets.php Get ticket information for selected tickets which the API user
has permission to access. Methods for ticket selection are by
ticket number or date/time since last update.
Overdue Tickets
Each ticket has a due date for ticket resolution. The number of days allowed for ticket
resolution is set as part of the policy rule configuration. Overdue tickets are those tickets
for which the due date for resolution has passed.
Invalid Tickets
Tickets are invalid due to the changing status of the IP address or ticket owner. Regarding
the IP address, a ticket is marked invalid when the tickets IP address is removed from
the ticket owners account (applies to Unit Manager, Scanner, or Reader). Regarding the
ticket owner, a ticket is marked invalid when the ticket owner's account is inactive,
deleted, or the user's role was changed to Contact.
Ticket State/Status
Several events trigger ticket updates as described earlier in Ticket Update Events.
Certain ticket updates result in changes to ticket state/status as indicated below.
Open refers to new and reopened tickets. Tickets are reopened in these cases: 1) when the
service detected vulnerabilities for tickets with state/status Resolved or Closed/Fixed,
and 2) when users or the service reopened Closed/Ignored tickets.
Resolved refers to tickets marked as resolved by users.
Closed/Fixed refers to tickets with vulnerabilities verified as fixed by the service.
Closed/Ignored refers to tickets ignored by users or the service (based on a user policy).
Also, users can ignore vulnerabilities on hosts. If tickets exist for vulnerabilities set to
ignore status, the service sets them to Closed/Ignored, and if tickets do not exist for these
issues the service adds new tickets and changes them to Closed/Ignored. See Set
Vulnerabilities to Ignore on Hosts for more information.
Permissions
User permissions for the ticket_list.php function are described below.
User Role Permissions
Manager View tickets for all IP addresses in subscription.
Unit Manager View tickets for IP addresses in users business unit.
Scanner View tickets for IP addresses in users account.
Reader View tickets for IP addresses in users account.
Parameters
Several parameters for ticket_list.php allow you to select tickets to include in the
ticket list. These parameters are described earlier in the section titled Ticket Selection
Parameters.All ticket selection parameters are optional. At least one ticket selection
parameter is required. Multiple parameters are combined with a logical and.
Examples
Using an account with more than 1,000 tickets (or potentially more than 1,000 tickets), it
is recommended that you write a script that makes multiple ticket_list.php
requests until all tickets are retrieved.
To view Open tickets owned by James Adrian (comp_ja), use the following URL:
https://qualysapi.qualys.com/msp/ticket_list.php?
ticket_assignee=comp_ja&states=OPEN
To view tickets from ticket #001800 to ticket #002800, use the following URL:
https://qualysapi.qualys.com/msp/ticket_list.php?
ticket_numbers=001800-002800
To view tickets that have been marked as Closed/Fixed or Closed/Ignored since June 1,
2006, use the following URL:
https://qualysapi.qualys.com/msp/ticket_list.php?states=CLOSED,
IGNORED&modified_since_datetime=2006-06-01
If there are ignored vulnerabilities in your account, you can list all ignored vulnerabilities
in the account using the following URL:
https://qualysapi.qualys.com/msp/ticket_list.php?asset_groups=
All&states=IGNORED
To view Invalid tickets for hosts in the Desktops or Servers asset groups, use the
following URL:
https://qualysapi.qualys.com/msp/ticket_list.php?asset_groups=
Desktops,Servers&invalid=1
To view Overdue tickets assigned to James Adrian (comp_ja) that have not been modified
since September 30, 2005 at 16:30:00 (UTC/GMT) for vulnerabilities with a severity level
of 3, 4 or 5 and to include vulnerability details in the results, use the following URL:
https://qualysapi.qualys.com/msp/ticket_list.php?
unmodified_since_datetime=2005-09-30T16:30:00Z
&vuln_severities=3,4,5&overdue=1&ticket_assignee=comp_ja
&show_vuln_details=1
XML Report
The DTD for the XML ticket list output returned by the ticket_list.php function can
be found at the following URL:
https://qualysapi.qualys.com/ticket_list_output.dtd
Appendix E provides information about the XML report generated by the
ticket_list.php function, including a recent DTD and XPath listing.
Edit Tickets
ticket_edit.php Function
The ticket_edit.php function is used to edit remediation tickets in a Qualys
subscription. This function allows Managers and Unit Managers to edit multiple tickets
at once in bulk. Using this function Managers can make requests to change the ticket
assignee, open and close tickets, flag Closed/Ignored tickets to be reopened
automatically by the service, and add comments to tickets. Several input parameters are
available for ticket selection. For example, these parameters support selecting tickets
modified since a given date and/or since a given ticket number.
Upon success the ticket_edit.php function returns a report with ticket edit XML
output with a listing of the edited tickets.
Editing tickets can be a time intensive task, especially when batch editing many tickets.
To ensure best performance, a maximum of 20,000 tickets can be edited in one
ticket_edit.php request. Its recommended best practice that you choose to schedule
batch updates to occur when ticket processing will least impact user productivity. If the
ticket_edit.php request identifies more than 20,000 tickets to be edited, then an error
is returned.
Permissions
User permissions for the ticket_edit.php function are described below.
User Role Permissions
Manager Edit tickets for all IP addresses in subscription.
Unit Manager Edit tickets for IP addresses in users business unit.
Scanner No permission to edit tickets.
Reader No permission to edit tickets.
Parameters
The parameters for ticket_edit.php are described below. At least one ticket selection
parameter is required, and one edit parameter is required.
Ticket Selection Parameters. Several parameters for ticket_edit.php allow you to
select tickets to edit. These parameters are described earlier in the section titled Ticket
Selection Parameters. At least one ticket selection parameter is required. Multiple ticket
selection parameters are combined with a logical and.
Edit Parameters. The following parameters are used to specify the ticket data to be edited.
At least one of the following edit parameters is required.
Parameter Description
change_assignee= (Optional) Used to change the ticket assignee, specified by
{value} user login, in all selected tickets. The assignees account must
have a user role other than Contact, and the hosts associated
with the selected tickets must be in the user account.
change_state={value} (Optional) Used to change the ticket state/status to the
specified state/status in all selected tickets. A valid value is
OPEN (for state/status Open and Open/Reopened),
RESOLVED (for state Resolved), or IGNORED (for state/status
Closed/Ignored). See Ticket State/Status Transitions below
for information on valid changes.
add_comment={value} (Optional) Used to add a comment in all selected tickets. The
comment text may include a maximum of 2,000 characters
(ascii).
reopen_ignored_days={value} (Optional) Used to reopen Closed/Ignored tickets in a set
number of days. Specify the due date in N days, where N is a
number of days from today. A valid value is an integer from 1
to 730.
When the due date is reached, the ticket state is changed from
Closed/Ignored to Open, assuming the issue still exists, and
the ticket is marked as overdue. If the issue was resolved at
some point while the ticket was in the Closed/Ignored state,
then the ticket state is changed from Closed/Ignored to
Closed/Fixed.
Examples
To edit ticket #00123456 and add a comment, use this URL:
https://qualysapi.qualys.com/msp/ticket_edit.php?ticket_numbers
=00123456&add_comment=Host+patched,+ready+for+re-scan
To edit multiple tickets to change the ticket owner to Alice Cook (acme_ac) for tickets
since ticket number #00215555 (tickets with numbers greater than or equal to #00215555)
which are marked invalid, use this URL:
https://qualysapi.qualys.com/msp/ticket_edit.php?since_ticket_n
umber=00215555&invalid=1&change_assignee=acme_ac
To edit Open tickets on IP addresses in asset groups New York and London and
change the ticket state to Ignored, use this URL:
https://qualysapi.qualys.com/msp/ticket_edit.php?states=OPEN&as
set_groups=New+York,London&change_state=IGNORED
To edit Open tickets unmodified since August 1, 2012 that are assigned to Tim Burke
(acme_tb) and change the ticket assignee to Alice Cook (acme_ac), use this URL:
https://qualysapi.qualys.com/msp/ticket_edit.php?states=OPEN&un
modified_since=2012-08-01&ticket_assignee=acme_tb&change_assign
ee=acme_ac
To reopen all Closed/Ignored tickets on host 10.10.10.120 in 7 days, use this URL:
https://qualysapi.qualys.com/msp/ticket_edit.php?ips=10.10.10.1
20&reopen_ignored_days=7
XML Report
The DTD for the XML ticket edit output returned by the ticket_edit.php function
can be found at the following URL:
https://qualysapi.qualys.com/ticket_edit_output.dtd
Appendix E provides information about the XML report generated by the
ticket_edit.php function, including a recent DTD and XPath listing.
Delete Tickets
ticket_delete.php Function
The ticket_delete.php function is used to delete remediation tickets in a Qualys
subscription. This function allows Managers and Unit Managers to delete multiple
tickets at once in bulk. Several input parameters are available for ticket selection. For
example, these parameters support selecting tickets modified since a given date and/or
since a given ticket number.
Upon success the ticket_delete.php function returns a report with ticket delete
XML output with a listing of the deleted tickets.
Deleting tickets can be a time intensive task, especially when batch deleting many tickets.
To ensure best performance, a maximum of 20,000 tickets can be deleted in one
ticket_delete.php request. Its recommended best practice that you choose to
schedule batch updates to occur when ticket processing will least impact user
productivity. If the ticket_delete.php request identifies more than 20,000 tickets to
be deleted, then an error is returned.
Permissions
User permissions for the ticket_delete.php function are described below.
User Role Permissions
Manager Delete tickets for all IP addresses in subscription.
Unit Manager Delete tickets for IP addresses in same business unit.
Scanner No permission to delete tickets.
Reader No permission to delete tickets.
Parameters
Several parameters for ticket_delete.php allow you to select tickets to delete. These
parameters are described earlier in the section titled Ticket Selection Parameters. All
ticket selection parameters are optional. At least one ticket selection parameter is
required with each request. Multiple parameters are combined with a logical and.
Examples
To delete ticket #002487, use this URL:
https://qualysapi.qualys.com/msp/ticket_delete.php?
ticket_numbers=2487
To delete tickets between ticket #001000 and ticket #002500, use the following URL:
https://qualysapi.qualys.com/msp/ticket_delete.php?
since_ticket_number=1000&until_ticket_number=2500
To delete Closed/Fixed tickets owned by James Adrian (comp_ja), use the following
URL:
https://qualysapi.qualys.com/msp/ticket_delete.php?
states=CLOSED&ticket_assignee=comp_ja
To delete Overdue tickets assigned to James Adrian (comp_ja) that have not been
modified since July 04, 2006 at 12:00:00 (UTC/GMT), use the following URL:
https://qualysapi.qualys.com/msp/ticket_delete.php?
unmodified_since_datetime=2006-07-04T12:00:00Z
&overdue=1&ticket_assignee=comp_ja
XML Report
The DTD for the XML ticket delete output returned by the ticket_delete.php
function can be found at the following URL:
https://qualysapi.qualys.com/ticket_delete_output.dtd
Appendix E provides information about the XML report generated by the
ticket_delete.php function, including a recent DTD and XPath listing.
Parameters
The parameters for ticket_list_deleted.php are described below. All parameters
are optional. At least one parameter is required. Multiple parameters are combined with
a logical and.
Ticket Number Parameters. The following parameters are used to select deleted tickets by
ticket number. These same parameters are available with other ticket functions.
Parameter Description
ticket_numbers= (Optional) Specifies certain ticket numbers. Specify one or
{nnn,nnn-nnn,...} more ticket numbers and/or ranges. Ticket range start and end
is separated by a dash (-). Multiple entries are comma
separated.
Parameter Description
since_ticket_number={value} (Optional) Specifies tickets since a certain ticket number.
Specify the lowest ticket number to be selected. Selected tickets
will have numbers greater than or equal to the ticket number
specified.
until_ticket_number={value} (Optional) Specifies tickets until a certain ticket number.
Specify the highest ticket number to be selected. Selected
tickets will have numbers less than or equal to the ticket
number specified.
Deletion Date Parameters. The following parameters are used to select deleted tickets
based on the date/time when tickets were deleted.
Parameter Selects these tickets
deleted_since_datetime= (Optional) Specifies tickets deleted since a certain date/time.
{value} Specify a date (required) and time (optional) to identify this
timeframe. Tickets deleted on or after the date/time are
selected.
Examples
To view tickets deleted from #000120 to #000200, use this URL:
https://qualysapi.qualys.com/msp/ticket_list_deleted.php?
ticket_numbers=120-200
To view tickets deleted since ticket number #000400, use this URL:
https://qualysapi.qualys.com/msp/ticket_list_deleted.php?
since_ticket_number=400
XML Report
The DTD for the XML deleted ticket list output returned by the
ticket_list_deleted.php function can be found at the following URL:
https://qualysapi.qualys.com/ticket_list_deleted_output.dtd
Appendix E provides information about the XML report generated by the
ticket_list_deleted.php function, including a recent DTD and XPath listing.
Parameters
The parameters for get_tickets.php are described below.
Parameter Description
ticket_numbers={nnn,nnn,..} (Optional) Specifies ticket numbers for which ticket
information will be retrieved. Ticket numbers are integers,
assigned by the service automatically. A maximum of 1,000
ticket numbers may be specified. Multiple ticket numbers are
comma separated.
Examples
To retrieve remediation tickets that have been updated since July 15, 2005 at
1:00:00 AM (UTC/GMT) and that have any state (Open, Resolved, or Closed), use the
following URL:
https://qualysapi.qualys.com/msp/get_tickets.php?
since=2005-07-15T01:00:00Z
To retrieve remediation tickets that have been updated since July 15, 2005 at
4:20:00 PM (UTC/GMT) and with the current state of Open, use the following URL:
https://qualysapi.qualys.com/msp/get_tickets.php?
since=2005-07-15T16:20:00Z&state=OPEN
To retrieve remediation tickets 002737, 002738, and 002740 with vulnerability details, use
the following URL:
https://qualysapi.qualys.com/msp/get_tickets.php?
ticket_numbers=002737,002738,002740&vuln_details=1
XML Report
The DTD for the XML ticket information report returned by the get_tickets.php
function can be found at the following URL:
https://qualysapi.qualys.com/remediation_tickets.dtd
Appendix E provides information about the XML report generated by the
get_tickets.php function, including a recent DTD and XPath listing.
Host Functions
These Qualys API functions support host-level remediation management in the
enterprise. These functions allow you to:
View Host Information
Set Vulnerabilities to Ignore on Hosts
The get_host_info.php function returns a host information report
(get_host_info.dtd) based on the most recent host scan data available in the user account.
Several parameters allow you to specify the amount of detail to include in the report to
customize it as needed. The host scan data is part of a hosts vulnerability history which
is saved separately from saved scan results. For more information, see Automatic Host
Scan Data in Chapter 5.
The ignore_vuln.php function allows you to ignore vulnerabilities on certain hosts.
This functionality mirrors the ignored vulnerabilities feature available in the Qualys user
interface. The ignore_vuln.php function returns a status message with a list of tickets
that were modified.
An ignored vulnerability is defined to be a vulnerability on a certain host and port. Users
may set vulnerabilities to ignore so that they are removed from automatic scan reports,
host information reports, asset search portal results as well as other views in the Qualys
user interface.
When your account has ignored vulnerabilities you can use ignore_vuln.php to
restore (un-ignore) selected issues. Also since the service automatically creates tickets for
ignored vulnerabilities, you have the option to un-ignore issues using the
ticket_delete.php function. For more information, see Delete Tickets earlier in
this chapter.
The sections that follow describe how to view host information using
get_host_info.php and how to ignore vulnerabilities using ignore_vuln.php.
Instead of an IP address, you may specify the DNS host name or the NetBIOS host name
when the host name is available. See Host Identification for further information.
If you specify no parameters for a get_host_info.php request, the resulting report
includes host parameters and standard host remediation data. Host parameters identify
the hosts IP address, DNS host name and NetBIOS host name when available, the
operating system, and which host tracking method is enabled. Statistics on current
vulnerabilities and tickets associated with the host are provided.
Several parameters allow you to request additional information to be included in the host
information report. Multiple parameters may be specified for the desired report output.
Permissions
User permissions for the get_host_info.php function are described below.
User Role Permissions
Manager View host information for all IP addresses in subscription.
Unit Manager View host information for IP addresses in users business
unit.
Scanner View host information for IP addresses in users account.
Reader View host information for IP addresses in users account.
Parameters
The parameters for get_host_info.php are described below.
Host Identification
Identify the host for which host information will be retrieved. You must specify one of
these values: IP address, DNS or NetBIOS host name. The DNS or NetBIOS host name
may be specified when the host name is available in your account. The service detects
these host names when running scans, during host discovery.
The parameters for identifying the host are described below.
Parameter Description
host_ip={value} (Optional) Specifies the hosts IP address.
host_dns={value} (Optional) Specifies the hosts DNS host name, as in
mycompany.com.
host_netbios={value} (Optional) Specify the hosts NetBIOS host name.
Vulnerability Levels
The parameters for specifying the vulnerability and severity levels to be included in the
report are described below. By default all vulnerability and severity levels are included.
Parameter Description
vuln_severity= (Optional) Specifies whether confirmed vulnerabilities will be
{1,2,3,4,5 |all | none} retrieved. By default, all confirmed vulnerabilities will be
retrieved. Specify none to not retrieve any confirmed
vulnerabilities. Specify one or more severity levels, 1 to 5 to
retrieve certain severity levels. Multiple levels are comma
separated.
potential_vuln_severity= (Optional) Specifies whether potential vulnerabilities will be
{1,2,3,4,5 |all | none} retrieved. By default, all potential vulnerabilities will be
retrieved. Specify none to not retrieve any potential
vulnerabilities. Specify one or more severity levels, 1 to 5, to
retrieve certain severity levels. Multiple levels are comma
separated.
ig_severity= (Optional) Specifies whether information gathered detected
{1,2,3,4,5 |all | none} on the host will be retrieved. By default, all information
gathered will be retrieved. Specify none to not retrieve
information gathered. Specify one or more severity levels, 1 to
3, to retrieve certain severity levels. Multiple levels are comma
separated.
Examples
To retrieve host information for IP address 64.41.134.60, use the following URL:
https://qualysapi.qualys.com/msp/get_host_info.php?host_ip=64.4
1.134.60
To retrieve host information for DNS host namedemo02.qualys.com, use the following
URL:
https://qualysapi.qualys.com/msp/get_host_info.php?host_dns=dem
o02.qualys.com
To retrieve host information for IP address 64.41.134.60 with general host information,
vulnerability details, and ticket details, use the following URL:
https://qualysapi.qualys.com/msp/get_host_info.php?host_ip=64.4
1.134.60&general_info=1&vuln_details=1&ticket_details=1
XML Report
The DTD for the XML host information report returned by the get_host_info.php
function can be found at the following URL:
https://qualysapi.qualys.com/get_host_info.dtd
Appendix E provides information about the XML report generated by the
get_host_info.php function, including a recent DTD and XPath listing.
Target Hosts
A vulnerability can be set to ignore/restore only on hosts with scan results. If a host was
previously scanned and then purged, the scan results are removed and no longer
available. In this case an ignore vulnerability request will have no effect until a re-scan
populates the host with fresh scan results.
The ignore/restore request applies to the target hosts at the time of the request. For
example, if you specify an ignore action on asset groups, the request applies to the
IP addresses in the asset groups at the time of the request. Subsequently, if an asset group
is updated with new IP addresses, the new IPs are not set to the ignore status.
Permissions
User permissions for the ignore_vuln.php function are described below.
User Role Permissions
Manager Ignore/Restore vulnerabilities and potential vulnerabilities on
all hosts in subscription.
Unit Manager Ignore/Restore vulnerabilities and potential vulnerabilities on
hosts in users business unit.
Scanner Ignore/Restore vulnerabilities and potential vulnerabilities on
hosts in users account, when a certain remediation policy
option is enabled. *
Reader Ignore/Restore vulnerabilities and potential vulnerabilities on
hosts in users account, when a certain remediation policy
option is enabled.*
Parameters
The parameters for ignore_vuln.php are described below.
Request Parameters. The request parameters are below.
Parameter Description
action=ignore|restore A flag indicating an ignore or restore request. When
unspecified, the action is set to ignore. Specify restore to
restore (un-ignore) vulnerabilities.
Ignore request: Optional
Restore request: Required
qids={qid,qid,...} (Required) Specifies the QIDs (Qualys IDs) to ignore/restore.
A maximum of 10 QIDs may be specified. Multiple QIDs are
comma separated.
Parameter Description
comments={value} (Required) Specify comments for the action. The comments
may include a maximum of 255 characters. Comments are
stored with ignored vulnerabilities, and are visible to users in
the Qualys user interface.
reopen_ignored_days={date} (Optional) Set to reopen ignored vulnerabilities that are
detected after a number of days (1-730). If the ignored
vulnerability is reopened by the service, the corresponding
tickets state/status is changed from Closed/Ignored to
Open/Reopened.
Host Selection Parameters. These host parameters are optional and mutually exclusive
(only one may be specified per request). At least one parameter must be specified.
Parameter Description
asset_groups={ag1,ag2,...} (Optional) Selects hosts by asset group. The hosts included in
the one or more asset groups provided are selected. A
maximum of 5 asset group titles may be specified. The asset
group title All as defined in the Qualys user interface may be
specified. Multiple asset groups are comma separated.
This parameter or another host selection parameter is required.
ips={nnn, nnn-nnn,...} (Optional) Selects hosts by IP address. Enter one or more
IP addresses and/or ranges. Multiple entries are comma
separated. The parameter value may include a maximum of
512 characters (ascii).
This parameter or another host selection parameter is required.
dns_contains={value} (Optional) Selects hosts by DNS host name. Specify a text
string contained in one or more DNS host names. The text
string may include a maximum of 100 characters (ascii).
This parameter or another host selection parameter is required.
netbios_contains={value} (Optional) Selects hosts by NetBIOS host name. Specify a text
string contained in one or more NetBIOS host names. The text
string may include a maximum of 100 characters (ascii).
This parameter or another host selection parameter is required.
Examples
To ignore QID 19070 MS-SQL 8.0 UDP Slammer Worm Buffer Overflow Vulnerability
for the hosts in asset group New York, use a URL like this:
https://qualysapi.qualys.com/msp/ignore_vuln.php?action=ignore&
qids=19070&asset_groups=New+York&comments=security+policy
To restore (un-ignore) QIDs 90305 and 100035 on IP address 10.10.10.33 and IP range
10.10.10.100-10.10.10.120, use a URL like this:
https://qualysapi.qualys.com/msp/ignore_vuln.php?action=restore
&qids=90305,100035&ips=10.10.10.33,10.10.10.100-10.10.10.120&co
mments=request+by+GStevenson
If there are ignored vulnerabilities in your account, you can list all ignored vulnerabilities
in the account using the ticket_list.php function as shown in the following URL:
https://qualysapi.qualys.com/msp/ticket_list.php?asset_groups=
All&states=IGNORED
XML Report
The DTD for the XML ignored vulnerability output returned by the ignore_vuln.php
function can be found at the following URL:
https://qualysapi.qualys.com/ignore_vuln_output.dtd
Appendix E provides information about the XML report generated by the
ignore_vuln.php function, including a recent DTD and XPath listing.
Add/Edit Users
user.php Function
Function Overview
The User API (/msp/user.php) is used to manage user accounts in an active Qualys
subscription. With additional users, you can delegate responsibility across the
organization. Using the user.php function, Managers and Unit Managers can add new
user accounts and update existing accounts.
Express Lite: This API is available to Express Lite users. A total of 3 users can be added
per subscription.
The API user can make a user.php request to add an account or edit an existing
account. Upon success the function performs the requested update and returns an XML
document indicating the status of the request as success or failure. For each new account
(except when the user role is Contact) the service automatically generates login
credentials, including a login ID and strong password.
To add a new user using user.php, there are several required parameters such as the
users name, general information, business unit and user role. Default parameters are set
for email notifications and extended permissions (for Scanner or Unit Manager only). The
account recipient can update these default settings using the Qualys user interface.
Using user.php you can add users to the Unassigned business unit or an existing,
custom business unit. To add users to a custom business unit, follow these steps:
1 With a Manager account, log into the Qualys user interface and create the business
unit. Note that business units may be created using the Qualys user interface only.
2 If a Unit Manager is not already assigned to the business unit, you must add one.
With a Manager account, make a user.php request to add a Unit Manager who is
automatically assigned as the business units point of contact (POC).
3 With a Manager or Unit Manager account, make a user.php request to add other
users to the custom business unit. A Manager can add a user to any business unit,
while a Unit Manager can add a user to their own business unit.
There are several default values when adding a new user. For more information, see
Default Parameters New User.
When adding a new user (except Contact), the API user has the option to deliver login
credentials directly to the user via email or through the application as follows.
By default the user.php function sends the new user an email notification with a secure
link to their login credentials. When the user clicks the secure link to view the credentials,
the service changes the account status automatically from Pending Activation to
Active. Instead of sending an email notification, the API user has the option to return
the new users login credentials in the XML output document. To do this, make a
user.php request with the send_email=0 input parameter. As a result the service
returns the users login ID and password as XML value pairs in the XML output, and the
account status is automatically set to Active.
To complete account registration, a new user must log into the Qualys user interface with
their assigned login information (platform URL and login credentials). When the user has
been created using the user.php function the user can login using the Qualys user
interface or using the acceptEULA.php API function. See User Registration Process
and Accept the Qualys EULA or more information.
For an existing account, you can edit and clear account parameters as follows.
Edit Parameters. An existing user may be edited using user.php to update the user
name, general information and user interface style. Additional parameters can be edited
using the Qualys user interface. When editing parameters using user.php, existing
parameter values are replaced with newly specified ones. For example, if you edit an
existing Scanner with the assigned asset group New York and you wish to add the
asset group Hong Kong, then the edit request must include the parameter (for
example, asset_groups=New+York,Hong+Kong).
Clear Parameters. When editing a user using user.php, an edit request can be used to
clear (reset) parameters by assigning the empty string . For example, if the user
interface style is set to olive green and you want to reset the interface to the system
default, which is standard blue, send an edit request with this parameter equal to empty
string (ui_interface_style=).
User Permissions
User permissions for using the user.php function to create and edit user accounts are
described below.
User Role Permissions
Manager Add user account to any business unit.
Edit user data for any user account.
Unit Manager Add user account to API users same business unit.
Edit user data for any user account in same business unit.
Scanner No permission to add/edit user accounts.
Reader No permission to add/edit user accounts.
Auditor No permission to add/edit user accounts.
Parameters
The parameters for using the user.php function to create and edit user accounts are
described below.
There are numerous parameters for user.php. Each parameter should appear at most
once in a single API request. If the same parameter is specified multiple times, typically
the last instance overrides the rest. Both GET and POST methods are supported. For more
information, see API Conventions in Chapter 1.
Request Type
These parameters specify whether the request is to add or edit a user account.
Parameter Description
action=add|edit A flag indicating an add or edit request. Specify add to add
a new user, or edit to edit an existing user.
Add request: Required
Edit request: Required
login={login} Specifies the Qualys user login of the user account you wish to
edit. This parameter is invalid for an add request.
Add Request: Invalid
Edit Request: Required
Permissions
When adding a user, you must specify the user role and business unit. For a Scanner,
Reader or Contact, at least one asset group must be assigned to the user account.
Parameter Description
user_role={role} Specifies the user role. A valid value is: manager,
unit_manager, scanner, reader, or contact. The first user added
to a new custom business unit must be unit_manager.
Add request: Required (Invalid for Express Lite user)
Edit request: Invalid
business_unit={title} Specifies the users business unit. A valid value is
Unassigned, or the title of an existing custom business unit.
Note a custom business unit may be added using the Qualys
user interface.
Add request: Required (Invalid for Express Lite user)
Edit request: Invalid
asset_groups={grp1,grp2...} Specifies the asset groups assigned to the user, when the user
role is Scanner, Reader or Contact. Multiple asset groups are
comma separated. This parameter is invalid when the user
role is Manager or Unit Manager.
Add request: Optional
Edit request: Optional
ui_interface_style={style} Specifies the user interface style. A valid value is:
standard_blue, navy_blue, coral_red, olive_green,
accessible_high_contrast. When adding a new user, the default
is set to standard_blue.
Add request: Optional
Edit request: Optional
General Information
General information parameters are described below.
Parameter Description
first_name={name} Specifies the user's first name. The name may include a
maximum of 50 characters.
Add request: Required
Edit Request: Optional
Parameter Description
last_name={name} Specifies the user's last name. The name may include a
maximum of 50 characters.
Add request: Required
Edit request: Optional
title={title} Specifies the user's job title. The title may include a maximum
of 100 characters.
Add request: Required
Edit request: Optional
phone={value} Specifies the user's phone number. This value may include a
maximum of 40 characters.
Add request: Required
Edit request: Optional
fax={value} The user's FAX number. This value may include a maximum
of 40 characters.
Add request: Optional
Edit request: Optional
email={value} Specifies the user's email address. The address must be a
properly formatted address with a maximum of 100
characters.
Add request: Required
Edit request: Optional
address1={value} Specifies the users address line 1. This value may include a
maximum of 80 characters.
Add request: Required
Edit request: Optional
address2={value} Specifies the users address line 2. This value may include a
maximum of 80 characters.
Add request: Optional
Edit request: Optional
city={value} Specifies the users city. This value may include a maximum of
50 characters.
Add request: Required
Edit request: Optional
Parameter Description
country={code} Specifies the users country code. See Examples to find an
appropriate country code.
Add request: Required
Edit request: Optional
state={code} Specifies the users state code. A valid value depends on the
country code specified for the country parameter.
You must enter a state code using the state parameter when
the country code is one of: United States of America,
Australia, Canada or India. See State Codes to find an
appropriate state code.
Set Timezone
Assign a timezone to a user using the optional parameter time_zone_code.
Sample request Set the user profile to a specific timezone (i.e. pass timezone code).
https://qualysapi.qualys.com/msp/user.php?action=add&user_role=scanner&bu
siness_unit=Unassigned&asset_groups=New+York,Dallas&ui_interface_style=st
andard_blue&first_name=Chris&last_name=Woods&title=Security+Consultant&ph
one=2126667777&fax=2126667778&[email protected]&address1=500+Char
les_Avenue&address2=Suite+1260&city=New+York&country=United+States+of+Ame
rica&state=New+York&zip_code=10004&time_zone_code=US-NY
Sample request Set the user profile to the browsers timezone (i.e. pass empty/null).
https://qualysapi.qualys.com/msp/user.php?action=edit&login=acme_ab&time_
zone_code="
Looking for timezone codes? Use the time zone code list function to request the list
(where qualysapi.qualys.com is your Qualys API server URL):
https://qualysapi.qualys.com/msp/time_zone_code_list.php
Unit
Manager Manager Scanner Reader Contact
Extended Permissions
Add assets n/a NO n/a n/a n/a
Create option profiles n/a YES YES n/a n/a
Purge host n/a NO NO n/a n/a
information/history
Create/edit remediation n/a NO n/a n/a n/a
policy
Create/edit authentication n/a NO n/a n/a n/a
records
Some of the default parameters values may be edited by the account users. For more
information, see the Qualys online help.
Country Codes
Valid country codes:
Afghanistan | Albania | Algeria | Andorra | Angola | Anguilla | Antartica | Antigua and Barbuda |
Argentina | Armenia | Aruba |Australia | Austria | Azerbaijan | Bahamas | Bahrain | Bangladesh |
Barbados | Belarus | Belgium | Belize | Benin | Bermuda | Bhutan | Bolivia | Bosnia-Herzegovina |
Botswana | Bouvet Island | Brazil | British Indian Ocean Territory | Brunei Darussalam | Bulgaria |
Burkina Faso | Burundi | Cambodia | Cameroon | Canada | Cape Verde | Cayman Islands |
Central African Republic | Chad | Chile | China | Christmas Island | Cocos (Keeling) Islands | Colombia |
Comoros | Congo | Cook Islands | Costa Rica | Cote D'Ivoire | Croatia | Cuba | Cyprus | Czech Republic |
Denmark | Djibouti | Dominica | Dominican Republic | East Timor | Ecuador | Egypt | El Salvador |
Equatorial Guinea | Estonia | Ethiopia | Faeroe Islands | Falkland Islands (Malvinas) | Fiji | Finland |
France | French Guiana | French Polynesia | French Southern Territories| Gabon | Gambia | Georgia |
Germany | Ghana | Gibraltar | Greece | Greenland | Grenada | Guadeloupe | Guatemala | Guernsey, C.I. |
Guinea | Guinea-Bissau | Guyana | Haiti | Heard and McDonald Islands | Honduras | Hong Kong |
Hungary | Iceland | India | Indonesia | Iran (Islamic Republic of) | Iraq | Ireland | Isle of Man | Israel |
Italy | Jamaica | Japan | Jersey, C.I. | Jordan | Kazakhstan | Kenya | Kiribati | Korea | Kuwait |
Kyrgyzstan | Lao Peoples Democratic Republi | Latvia | Lebanon | Lesotho | Liberia |
Libyan Arab Jamahiriya | Liechtenstein | Lithuania | Luxembourg | Macau | Macedonia | Madagascar|
Malawi | Malaysia | Maldives | Mali | Malta | Marshall Islands | Martinique | Mauritania | Mauritius |
Mexico | Micronesia, Fed. States of | Moldova, Republic of | Monaco | Mongolia | Montserrat | Morocco |
Mozambique | Myanmar | Namibia | Nauru | Nepal | Netherland Antilles | Netherlands |
Neutral Zone (Saudi/Iraq) | New Caledonia | New Zealand | Nicaragua | Niger | Nigeria | Niue |
Norfolk Island | Northern Mariana Islands | Norway | Oman | Pakistan | Palau | Panama Canal Zone |
Panama | Papua New Guinea | Paraguay | Peru | Philippines | Pitcairn | Poland | Portugal | Puerto Rico |
Qatar | Reunion | Romania | Russia | Rwanda | Saint Kitts and Nevis | Saint Lucia | Samoa | San Marino |
Sao Tome and Principe | Saudi Arabia | Senegal | Seychelles | Sierra Leone | Singapore | Slovak Republic |
Slovenia | Solomon Islands | Somalia | South Africa | Spain | Sri Lanka | St. Helena |
St. Pierre and Miquelon | St. Vincent and the Grenadines | Sudan | Suriname |
Svalbard and Jan Mayen Islands | Swaziland | Sweden | Switzerland | Syrian Arab Republic | Taiwan |
Tajikistan | Tanzania, United Republic of | Thailand | Togo | Tokelau | Tonga | Trinidad and Tobago |
Tunisia | Turkey | Turkmenistan | Turks and Caicos Islands | Tuvalu | U.S.Minor Outlying Islands |
Uganda | Ukraine | United Arab Emirates | United Kingdom | United States of America | Uruguay |
Uzbekistan | Vanuatu | Vatican City State | Venezuela | Vietnam | Virgin Islands (British) |
Wallis and Futuna Islands | Western Sahara | Yemen | Yugoslavia | Zaire | Zambia | Zimbabwe
State Codes
State Codes for United States
Value state codes when country is United States of America:
Alabama | Alaska | Arizona | Arkansas | Armed Forces Asia | Armed Forces Europe | Armed Forces
Pacific | California | Colorado | Connecticut | Delaware | District of Columbia |Florida | Georgia | Hawaii |
Idaho | Illinois | Indiana | Iowa | Kansas | Kentucky | Louisiana | Maine | Maryland | Massachusetts |
Michigan | Minnesota | Mississippi | Missouri | Montana | Nebraska | Nevada | New Hampshire |
New Jersey| New Mexico | New York | North Carolina | North Dakota | Ohio | Oklahoma | Oregon |
Pennsylvania | Rhode Island |South Carolina | South Dakota | Tennessee | Texas | Utah | Vermont |
Virginia | Washington | West Virginia | Wisconsin | Wyoming
Examples
Use this URL to add a new user, Chris Woods, to the Unassigned business unit with the
Scanner user role, assign the user two asset groups, and automatically send the user an
email notification with a secure link to his login credentials:
https://qualysapi.qualys.com/msp/user.php?action=add&user_role=
scanner&business_unit=Unassigned&asset_groups=New+York,Dallas&u
i_interface_style=standard_blue&first_name=Chris&last_name=Wood
s&title=Security+Consultant&phone=2126667777&fax=2126667778&ema
[email protected]&address1=500+Charles_Avenue&address2=Sui
te+1260&city=New+York&country=United+States+of+America&state=Ne
w+York&zip_code=10004
Use this URL to edit the Chris Woods account to add the asset group Atlanta:
https://qualysapi.qualys.com/msp/user.php?action=edit&login=myc
orp_cw&asset_groups=New+York,Dallas,Atlanta
Use this URL to edit the Chris Woods account and change the user interface style:
https://qualysapi.qualys.com/msp/user.php?action=edit&login=myc
orp_cw&ui_interface_style=olive_green
To add the external ID Qualys123 to the existing user account qualys_ab5 when that
account does not already have an external ID:
https://qualysapi.qualys.com/msp/user.php?action=edit&
login=qualys_ab5&external_id=Qualys123
To add the external ID Qualy123 to the existing user account qualys_ab when that
account already has an external ID:
https://qualysapi.qualys.com/msp/user.php?action=edit&
login=qualys_ab5&external_id=Qualys123
To delete the external ID currently defined for the user account qualys_ab5:
https://qualysapi.qualys.com/msp/user.php?action=edit&
login=qualys_ab5&external_id=
XML Report
The DTD for the XML user output returned by the user.php function can be found at
the following URL (where qualysapi.qualys.com is the Qualys API server where your
account is located):
https://qualysapi.qualys.com/user_output.dtd
Appendix F provides information about the XML report generated by the user.php
function, including a recent DTD and XPath listing.
User Permissions
User permissions for using the acceptEULA.php function to complete the user
registration process and accept the Qualys EULA are described below.
User Role Permissions
Manager Complete user registration and accept EULA.
Unit Manager Complete user registration and accept EULA.
Scanner Complete user registration and accept EULA.
Reader Complete user registration and accept EULA.
Auditor Complete user registration and accept EULA.
Example
To accept the Qualys EULA on behalf of a user, use the following URL:
https://qualysapi.qualys.com/msp/acceptEULA.php
The DTD for the message returned by the acceptEULA.php function can be found at the
following URL:
https://qualysapi.qualys.com/generic-return.dtd
Activate/Deactivate Users
user.php Function
Function Overview
The User API (/msp/user.php) is used to manage user accounts in an active Qualys
subscription. With additional users, you can delegate responsibility across the
organization. Using the user.php function, Managers and Unit Managers can add new
user accounts and update existing accounts.
Express Lite: This API is available to Express Lite users.
The API user can make a user.php request to activate and deactivate user accounts.
These actions correspond to the activate/deactivate options in the Qualys UI. Note new
accounts are activated by default after the user completes the account activation process
(registration) by logging into the service for the first time. Upon success the function
performs the requested update and returns an XML document indicating the status of the
request as success or failure.
User Permissions
User permissions for using the user.php function to activate and deactivate user
accounts are described below.
User Role Permissions
Manager Activate any user account that has an Inactive status.
Deactivate any user account that has an Active status.
Unit Manager Activate a user account which is in the users business unit and
which has an Inactive status.
Parameters
The parameters for using the user.php function to activate and deactivate user accounts
are described below.
Parameter Description
action=activate|deactivate (Required) A flag indicating the desired action. Specify
activate to activate a user account that has an Inactive
status, or specify deactivate to deactivate a user account
that has an Active status. When an account is
deactivated, the users account settings will not be deleted.
Examples
Sample user.php API requests that demonstrate how to activate/deactivate a user
account are provided below. Note the syntax used assumes qualysapi.qualys.com is the
name of the Qualys API server where the users account is located.
To deactivate the user account qualys_ab3 (and this account has an Active status):
https://qualysapi.qualys.com/msp/user.php?action=deactivate&
login=qualys_ab3
To activate the user account qualys_ab3 (and this account has an Inactive status):
https://qualysapi.qualys.com/msp/user.php?action=activate&
login=qualys_ab3
XML Report
The DTD for the XML user output returned by the user.php function can be found at
the following URL (where qualysapi.qualys.com is the Qualys API server where your
account is located):
https://qualysapi.qualys.com/user_output.dtd
Appendix F provides information about the XML report generated by the user.php
function, including a recent DTD and XPath listing.
If Restrict view of user information for users outside of business unit is selected, then
Unit Managers have a restricted view and cannot see any details for users who are not in
their assigned business unit. For example, Unit Managers in Business Unit A would not
be able to view general information or asset group assignments for users in Business
Unit B.
The following table describes the amount of detail visible to Unit Managers for different
types of users based on whether the Unit Manager has a restricted or unrestricted view.
Amount of Detail Visible
User Type Being Viewed Unrestricted View Restricted View
Unit Manager, Scanner or Reader in the business unit Full Full
Scanner or Reader not in the business unit Partial None
Unit Manager not in the business unit Partial None
Manager Partial None
Full user account details include: user login, general information, assigned asset groups,
user role, business unit, the Unit Manager Point of Contact (POC), the Manager POC,
extended permissions, email notifications and user interface style.
With a Partial view, the following details are not visible: user login, extended
permissions, email notifications and user interface style.
Parameters
The optional parameters available for the user_list.php function are described below.
These parameters are mutually exclusive.
Parameter Description
external_id_contains={string} (Optional) Show only user accounts with an external ID
value that contains a certain string. The string you specify
can have a maximum of 256 characters. The characters can
be in uppercase, lowercase or mixed case (the service
performs case sensitive matching). HTML or PHP tags
cannot be included.
XML Report
The DTD for the XML user list output returned by the user_list.php function can be
found at the following URL (where qualysapi.qualys.com is the Qualys API server
where your account is located):
https://qualysapi.qualys.com/user_list_output.dtd
Appendix F provides information about the XML report generated by the
user_list.php function, including a recent DTD and XPath listing.
Parameters
The parameters for action_log_report.php are described below.
Parameter Description
date_from={value} (Required) Specifies the start date/time of the time window
for downloading action log entries. The start time is optional.
Examples
To download all user actions since May 1, 2006, use the following URL:
https://qualysapi.qualys.com/msp/action_log_report.php?
date_from=2006-05-01
To download user actions between May 1, 2006 and June 1, 2006, use the following URL:
https://qualysapi.qualys.com/msp/action_log_report.php?
date_from=2006-05-01&date_to=2006-06-01
To download all user actions performed by user ID john_doe since July 15, 2006 at
16:30:00 (UTC/GMT), use the following URL:
https://qualysapi.qualys.com/msp/action_log_report.php?
date_from=2006-07-15T16:30:00Z&user_login=john_doe
XML Report
The DTD for the XML action log report returned by the action_log_report.php
function can be found at the following URL (where qualysapi.qualys.com is the Qualys
API server where your account is located):
https://qualysapi.qualys.com/action_log_report.dtd
Appendix F provides information about the XML report generated by the
action_log_report.php function, including a recent DTD and XPath listing.
Permissions
User permissions for the password_change.php function are described below. Note
this function cannot be used to change the password of the requesting user (Manager or
Unit Manager).
User Role Permissions
Manager Change passwords for all users in subscription, except the user
making the request.
Unit Manager Change passwords for all users in same business unit, except
the user making the request.
Scanner No permission to change passwords.
Parameters
The parameters for password_change.php are described below.
Parameter Description
user_logins={value} (Required) Specifies one or more Qualys user login IDs of
target user accounts. Multiple user login IDs are comma
separated. Specify user_logins=all to change the password
for all users in the users account, except the requesting user.
See the Permissions section for more information.
email={0|1} (Optional) Specifies whether users will receive an email
notification alerting them to the password change.
Examples
To make a password change request for two accounts and send affected users an email
notification including a secure link to their new password, use this URL:
https://qualysapi.qualys.com/msp/password_change.php?
user_logins=acme_jr,acme_dd
To make a password change request for all users in the API users account (except the
API user) and return the login ID and password for each affected user in the password
change XML report, use this URL:
https://qualysapi.qualys.com/msp/password_change.php?
user_logins=all&email=0
XML Report
The DTD for the XML password change output returned by the
password_change.php function can be found at the following URL (where
qualysapi.qualys.com is the Qualys API server where your account is located):
https://qualysapi.qualys.com/password_change_output.dtd
Appendix F provides information about the XML report generated by the
password_change.php function, including a recent DTD and XPath listing.
Scan Results
The vulnerability scan results report is an XML report returned from the functions:
scan.php and scan_report.php. The scan report includes summary and host-based
results.
A selective vulnerability scan may be performed when the option profile is configured to
scan user-selected vulnerabilities. If certain checks are not included, then certain
vulnerability assessment data will not be available in your scan results and related
vulnerability history in other scan reports and views in the user interface. For more
information, see Scan Results and Host Scan Data in Chapter 5.
The report summary in the header section provides summary information about the scan,
including the user who requested the scan, the time when the scan was initiated, the
target hosts, and how long the scan took to complete. Host-based results include detailed
information on vulnerabilities detected for each scanned host.
<!-- NAME of the asset group with the TYPE attribute with possible values
of (DEFAULT | EXTERNAL | ISCANNER) -->
<!ELEMENT ASSET_GROUP (ASSET_GROUP_TITLE)>
<!ELEMENT ASSET_GROUPS (ASSET_GROUP+)>
<!ELEMENT ASSET_GROUP_TITLE (#PCDATA)>
<!ELEMENT OPTION_PROFILE (OPTION_PROFILE_TITLE)>
<!ELEMENT OPTION_PROFILE_TITLE (#PCDATA)>
<!ATTLIST OPTION_PROFILE_TITLE
option_profile_default CDATA #IMPLIED
>
<!-- IP -->
<!ELEMENT IP (OS?, OS_CPE?, NETBIOS_HOSTNAME?, INFOS?, SERVICES?, VULNS?,
PRACTICES?)>
<!ATTLIST IP
value CDATA #REQUIRED
name CDATA #IMPLIED
status CDATA #IMPLIED
>
<!ELEMENT OS (#PCDATA)>
<!ELEMENT OS_CPE (#PCDATA)>
<!ELEMENT NETBIOS_HOSTNAME (#PCDATA)>
<!-- CATEGORIES OF INFO, SERVICE, VULN or PRACTICE -->
<!ELEMENT CAT (INFO+ | SERVICE+ | VULN+ | PRACTICE+)>
<!ATTLIST CAT
value CDATA #REQUIRED
fqdn CDATA #IMPLIED
port CDATA #IMPLIED
protocol CDATA #IMPLIED
misc CDATA #IMPLIED
>
<!-- IP INFORMATIONS -->
<!ELEMENT INFOS (CAT)+>
<!ELEMENT INFO (TITLE, LAST_UPDATE?, PCI_FLAG, INSTANCE?,
VENDOR_REFERENCE_LIST?, CVE_ID_LIST?, BUGTRAQ_ID_LIST?,
DIAGNOSIS?, DIAGNOSIS_COMMENT?, CONSEQUENCE?,
CONSEQUENCE_COMMENT?, SOLUTION?, SOLUTION_COMMENT?,
COMPLIANCE?, CORRELATION?, RESULT?)>
<!ATTLIST INFO
severity CDATA #IMPLIED
standard-severity CDATA #IMPLIED
number CDATA #IMPLIED
>
<!-- MAP OF SERVICES -->
<!ELEMENT SERVICES (CAT)+>
<!ELEMENT SERVICE (TITLE, LAST_UPDATE?, PCI_FLAG, INSTANCE?,
VENDOR_REFERENCE_LIST?, CVE_ID_LIST?, BUGTRAQ_ID_LIST?,
DIAGNOSIS?, DIAGNOSIS_COMMENT?, CONSEQUENCE?,
CONSEQUENCE_COMMENT?, SOLUTION?, SOLUTION_COMMENT?,
COMPLIANCE?, CORRELATION?, RESULT?)>
<!ATTLIST SERVICE
severity CDATA #REQUIRED
standard-severity CDATA #IMPLIED
number CDATA #IMPLIED
>
<!-- VULNERABILITIES -->
<!ELEMENT VULNS (CAT)+>
<!ELEMENT VULN (TITLE, LAST_UPDATE?, CVSS_BASE?, CVSS_TEMPORAL?,
CVSS3_BASE?, CVSS3_TEMPORAL?, PCI_FLAG,
INSTANCE?, VENDOR_REFERENCE_LIST?, CVE_ID_LIST?,
BUGTRAQ_ID_LIST?, DIAGNOSIS?, DIAGNOSIS_COMMENT?,
CONSEQUENCE?, CONSEQUENCE_COMMENT?,
SOLUTION?, SOLUTION_COMMENT?, COMPLIANCE?, CORRELATION?,
RESULT?)>
<!-- number is Qualys numeric ID -->
<!-- cveid is the CVE identification code (if any) -->
<!-- severity is Qualys severity level 1 to 5 (possibly customized) -->
<!-- standard-severity is the original Qualys severity level 1 to 5 if it
has been customized by the user -->
<!ATTLIST VULN
number CDATA #REQUIRED
cveid CDATA #IMPLIED
severity CDATA #REQUIRED
standard-severity CDATA #IMPLIED
>
Header Information
/SCAN/IP/OS (#PCDATA)
The operating system name detected on the host.
/SCAN/IP/OS_CPE (#PCDATA)
The OS CPE name assigned to the operating system detected on the host. (The OS
CPE name appears only when the OS CPE feature is enabled for the subscription,
and an authenticated scan was run on this host after enabling this feature.)
/SCAN/IP/NETBIOS_HOSTNAME (#PCDATA)
The NetBIOS host name, when available.
Information Gathered
Information gathered vulnerabilities are grouped under the <INFOS> element.
INFOS Element
XPath element specification / notes
/SCAN/IP/INFOS (CAT)+
/SCAN/IP/INFOS/CAT (INFO+)
Note: When CAT is a child of INFOS, it can only contain INFO elements.
attribute: value value is required and will be one vulnerability category name
attribute: fqdn fqdn is implied and, if present, is the fully qualified Internet host name
attribute: port port is implied and, if present, is the port number that the information gathered
was detected on
attribute: protocol protocol is implied and, if present, is the protocol used to detect the information
gathered, such as TCP or UDP
attribute: misc misc is implied and, if present, will be over ssl, indicating the information
gathered was detected using SSL
Services
Service vulnerabilities are grouped under the <SERVICES> element.
SERVICES Element
XPath element specification / notes
/SCAN/IP/SERVICES (CAT)+
/SCAN/IP/SERVICES/CAT (SERVICE+)
Note: When CAT is a child of SERVICES, it can only contain SERVICE elements.
attribute: value value is required and will be one vulnerability category name
attribute: fqdn fqdn is implied and, if present, is the fully qualified Internet host name
attribute: port port is implied and, if present, is the port number that the service was detected on
attribute: protocol protocol is implied and, if present, is the protocol used to detect the service, such
as TCP or UDP
attribute: misc misc is implied and, if present, will contain over ssl, indicating the service was
detected using SSL
Confirmed Vulnerabilities
Confirmed vulnerabilities are grouped under the <VULNS> element.
VULNS Element
XPath element specifications / notes
/SCAN/IP/VULNS (CAT)+
/SCAN/IP/VULNS/CAT (VULN+)
Note: When CAT is a child of VULNS, it can only contain VULN elements.
attribute: value value is required and will be one vulnerability category name
attribute: fqdn fqdn is implied and, if present, is the fully qualified Internet host name
attribute: port port is implied and, if present, is the port number the confirmed vulnerability was
detected on
attribute: protocol protocol is implied and, if present, is the protocol used to detect the confirmed
vulnerability, such as TCP or UDP
attribute: misc misc is implied and, if present, will contain over ssl, indicating the confirmed
vulnerability was detected using SSL
Potential Vulnerabilities
Potential vulnerabilities are grouped under the <PRACTICES> element.
PRACTICES Element
XPath element specifications / notes
/SCAN/IP/PRACTICES (CAT)+
/SCAN/IP/PRACTICES/CAT (PRACTICE+)
Note: When CAT is a child of PRACTICES, it can only contain PRACTICE
elements. A practice is a potential vulnerability.
attribute: value value is required and will be one vulnerability category name
attribute: fqdn fqdn is implied and, if present, is the fully qualified Internet host name
attribute: port port is implied and, if present, is the port number that he potential vulnerability
was detected on
attribute: protocol protocol is implied and, if present, is the protocol used to detect the potential
vulnerability, such as TCP or UDP
attribute: misc misc is implied and, if present, will contain over ssl, indicating the potential
vulnerability was detected using SSL
Vulnerability Details
Vulnerability details are provided for each detected vulnerability using the vulnerability
elements. The details for each vulnerability instance appear under grouping and category
elements: confirmed vulnerability (VULNS/CAT/VULN), potential vulnerability
(PRACTICES/CAT/PRACTICE), information gathered (INFOS/CAT/INFO), and
service (SERVICES/CAT/SERVICE).
Vulnerability Details Element
XPath element specifications / notes
/SCAN/IP/VULNS/CAT/vulnerability_element
(TITLE, LAST_UPDATE, CVSS_BASE?, CVSS_TEMPORAL?, PCI_FLAG,
INSTANCE?, VENDOR_REFERENCE_LIST?, CVE_ID_LIST,
BUGTRAQ_ID_LIST?, DIAGNOSIS?, DIAGNOSIS_COMMENT?,
CONSEQUENCE?, CONSEQUENCE?_COMMENT, SOLUTION?,
SOLUTION_COMMENT?, COMPLIANCE?, CORRELATION?, RESULT?)
The vulnerability element, where the variable vulnerability_elements represents
a vulnerability element grouping: VULNS for confirmed vulnerabilities,
PRACTICES for potential vulnerabilities, INFOS for information gathered, or
SERVICES for services. The variable vulnerability_element represents a
vulnerability element for a single vulnerability instance: VULN for confirmed
vulnerability, PRACTICE for potential vulnerability, INFO for information
gathered, or SERVICE for service.
attribute: number number is required and is the Qualys ID number assigned to the vulnerability
attribute: cveid cveid is implied and, if present, is the CVE ID (name) for the vulnerability
attribute: severity severity is required and is the severity level assigned to the vulnerability, an
integer between 1 and 5
attribute: standard-severity standard-severity is implied and, if present, is the standard severity level
assigned to the vulnerability by Qualys, an integer between 1 and 5
/SCAN/IP/VULNS/CAT/vulnerability_element/TITLE (#PCDATA)
The title of the vulnerability, from the Qualys KnowledgeBase.
/SCAN/IP/VULNS/CAT/vulnerability_element/LAST_UPDATE (#PCDATA)
The date and time when the vulnerability was last updated in the Qualys
KnowledgeBase, in YYYY-MM-DDTHH:MM:SSZ format (UTC/GMT).
/SCAN/IP/VULNS/CAT/vulnerability_element/CVSS_BASE (#PCDATA)
The CVSS2 base score assigned to the vulnerability.
attribute: source Note: This attribute is never present in XML output for this release.
/SCAN/IP/VULNS/CAT/vulnerability_element/CVSS_TEMPORAL (#PCDATA)
The CVSS2 temporal score assigned to the vulnerability.
/SCAN/IP/VULNS/CAT/vulnerability_element/CVSS3_BASE (#PCDATA)
The CVSS3 base score assigned to the vulnerability.
/SCAN/IP/VULNS/CAT/vulnerability_element/CVSS3_TEMPORAL (#PCDATA)
The CVSS3 temporal score assigned to the vulnerability.
In the saved scan report returned by the scan_report.php function, the <IP> tag
appears without the status attribute like this:
<IP value="194.55.109.7" name="tiger.corp.us.com">
<HEADER>
<KEY value="USERNAME">user_name</KEY>
<KEY value="COMPANY"><![CDATA[company_name]]></KEY>
<KEY value="DATE">2005-11-08T17:36:53Z</KEY>
<KEY value="TITLE"><![CDATA[Vulnerability analysis on
197.45.100.53]]</KEY>
<KEY value="TARGET">197.45.100.53</KEY>
<KEY value="DURATION">00:02:30</KEY>
<KEY value="SCAN_HOST">hostname (Scanner version, Web version, Vulnsigs
version)</KEY>
<KEY value="NBHOST_ALIVE">1</KEY>
<KEY value="NBHOST_TOTAL">1</KEY>
<KEY value="REPORT_TYPE">API (default option profile)</KEY>
<KEY value="OPTIONS">option settings</KEY>
<KEY value="ISCANNER_NAME">scanner_appliance_name</KEY>
<KEY value="STATUS">NOVULNSFOUND</KEY>
<OPTION_PROFILE>
<OPTION_PROFILE_TITLE option_profile_default="1"><![CDATA[Initial
Options]]></OPTION_PROFILE_TITLE>
</OPTION_PROFILE>
</HEADER>
</SCAN>
Scan reports with no vulnerabilities found that are saved on the Qualys server may be
viewed using the scan_report.php function or the Qualys user interface.
Empty scan results that are saved on the Qualys server may be viewed using the
scan_report.php function or the Qualys user interface.
QUEUED - A user launched the scan or the service started a scan based on a
scan schedule. The scan job is waiting to be distributed to scanner(s).
RUNNING - The scanner(s) are actively running the scan job.
FINISHED - The scanner(s) have finished the scan job, the scan results were
loaded onto the platform, and vulnerabilities were found.
NOVULNSFOUND - The scanner(s) have finished the scan job, the scan
results were loaded onto the platform, and no vulnerabilities were found.
NOHOSTALIVE - The scanner(s) have finished the scan job, the scan results
were loaded onto the platform, and target hosts were down (not alive).
LOADING - The scanner(s) have finished the scan job, the scan results are
being loaded onto the platform, and some scan results may be available.
CANCELING - A user canceled the scan, and the scanner(s) are in the process
of stopping the scan job.
CANCELED - A user canceled the scan, the scanner(s) have stopped the scan
job, and some scan results may be available.
PAUSING - A user paused the scan, and the scanner(s) are in the process of
stopping the scan.
PAUSED - A user paused the scan, the scanner(s) stopped the scan job
(segment), and some scan results may be available.
RESUMING - A user resumed the scan, and the scanner(s) are starting to run
the scan job (a new scan segment).
ERROR - An error occurred during scan, and the scan did not complete.
INTERRUPTED - The scan was interrupted and did not complete.
/SCAN_RUNNING_LIST/ERROR
attribute: number number is implied and, if present, will be an error code
/SCAN_RUNNING_LIST/ASSET_GROUPS (ASSET_GROUP+)
/SCAN_RUNNING_LIST/ASSET_GROUPS/ASSET_GROUP (ASSET_GROUP_TITLE)
/SCAN_RUNNING_LIST/ASSET_GROUPS/ASSET_GROUP/ASSET_GROUP_TITLE (#PCDATA)
The title of an asset group that was specified as a scan or map target.
KnowledgeBase Download
The KnowledgeBase download output is an XML report returned from the
knowledgebase_download.php function. This includes vulnerability data from the
Qualys KnowledgeBase.
The KnowledgeBase download output DTD and XPaths are described below.
Optional Elements
XPath element specifications / notes
/VULNS/VULN/CATEGORY (#PCDATA)
The vulnerability category, from the Qualys KnowledgeBase.
/VULNS/VULN/LAST_UPDATE (#PCDATA)
The date this vulnerability was last updated in the Qualys KnowledgeBase, in
YYYY-MM-DDTHH:MM:SSZ format (UTC/GMT).
/VULNS/VULN/BUGTRAQ_ID_LIST
(BUGTRAQ_ID+)
/VULNS/VULN/BUGTRAQ_ID_LIST/BUGTRAQ_ID
(ID, URL)
A Bugtraq ID assigned to the vulnerability, and the URL to this Bugtraq ID.
/VULNS/VULN/PATCHABLE (#PCDATA)
A flag indicating whether there is a patch available to fix the vulnerability. The
value 1 indicates a patch is available to fix the vulnerability. The value 0 indicates
a patch is not available to fix the vulnerability.
/VULNS/VULN/VENDOR_REFERENCE_LIST
(VENDOR_REFERENCE+)
/VULNS/VULN/VENDOR_REFERENCE_LIST/VENDOR_REFERENCE
(ID, URL)
The name of a vendor reference, and the URL to this vendor reference.
/VULNS/VULN/CVE_ID_LIST (CVE_ID+)
/VULNS/VULN/CVE_ID_LIST/CVE_ID (ID, URL)
A CVE name assigned to the vulnerability, and the URL to this CVE name.
<!ATTLIST MAP
value CDATA #IMPLIED>
<!-- value of a link, indicates the need to go trough a server to see -->
<!-- another (ie. gateway or router) -->
<!ELEMENT LINK EMPTY>
<!ATTLIST LINK
value CDATA #REQUIRED>
FINISHED - The scanner(s) have finished the map job, the map results were
loaded onto the platform, and hosts were discovered.
NOHOSTALIVE - The scanner(s) have finished the map job, the map results
were loaded onto the platform, and no devices were discovered.
LOADING - The scanner(s) have finished the map job, and the map results are
being loaded onto the platform.
CANCELED - A user canceled the map, and the scanner(s) have stopped the
map job.
ERROR - An error occurred during the map, and the map did not complete.
INTERRUPTED - The map was interrupted and did not complete.
/MAP/IP/PORT (#PCDATA)
attribute: value value is required and will be one of the following:
21 ..................................... FTP
22 ..................................... SSH
23 ..................................... Telnet
25 ..................................... SMTP
53 ..................................... DNS
80 ..................................... HTTP
110 ................................... POP3
139 ................................... NetBios
443 ................................... HTTPS
Note: The PORT element no longer appears in map reports, including new reports
and existing reports saved on the Qualys platform. The PORT element may appear
in existing reports that you have saved locally.
/MAP/IP/LINK EMPTY
attribute: value value is required. If /MAP/IP[@type="router"] then there will be one
/MAP/IP/LINK per host found in the domain that is served by that router. In this
case, value will be the IP address of the host that this router serves. Otherwise,
value is the IP address of the router that serves this host; if value is empty in this
case, it means that the router was protected by a firewall or otherwise shielded
from discovery.
No Devices Detected
When a network discovery does not detect any devices, live map results are returned.
Live map results include header information and an error message. Live map results are
not saved on the Qualys server and cannot be retrieved. Sample live map results are
shown below.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE MAP_REQUEST SYSTEM "https://qualysapi.qualys.com/map-2.dtd">
<!-- Map is running on: mydomain.com -->
<!-- keep-alive -->
<MAP_REQUEST>
<MAP value="map/1112217109.26598">
<HEADER>
<KEY value="USERNAME">username</KEY>
<KEY value="COMPANY"><![CDATA[My Company]]></KEY>
<KEY value="DATE">2005-03-30T21:11:48Z</KEY>
<KEY value="TITLE"><![CDATA[My Map]]></KEY>
<KEY value="TARGET">mydomain.com</KEY>
<KEY value="NBHOST_TOTAL">0</KEY>
<KEY value="DURATION">00:00:31</KEY>
<KEY value="SCAN_HOST">hostname (SCANNER 2.9.39-1, WEB 4.0.102-1,
VULNSIGS 1.10.74-1)</KEY>
<KEY value="REPORT_TYPE">API (default option profile)</KEY>
<KEY value="STATUS">NOHOSTALIVE</KEY>
<KEY value="OPTIONS"><![CDATA[Information gathering: All Hosts,
Perform live host sweep, Standard TCP port list, ICMP Host
Discovery]]></KEY>
<USER_ENTERED_DOMAINS>
<DOMAIN><![CDATA[mydomain.com]]></DOMAIN>
</USER_ENTERED_DOMAINS>
<OPTION_PROFILE>
<OPTION_PROFILE_TITLE option_profile_default="1"><![CDATA[Initial
Options]]></OPTION_PROFILE_TITLE>
</OPTION_PROFILE>
</HEADER>
</ERROR number="4503">No host found</ERROR>
</MAP>
</ERROR number="4503">No host found</ERROR>
</MAP_REQUEST>
<!-- value of a link, indicates the need to go trough a server to see -->
<!-- another (ie. gateway or router) -->
<!ELEMENT LINK EMPTY>
<!ATTLIST LINK
value CDATA #REQUIRED>
FINISHED - The scanner(s) have finished the map job, the map results were
loaded onto the platform, and hosts were discovered.
NOHOSTALIVE - The scanner(s) have finished the map job, the map results
were loaded onto the platform, and no devices were discovered.
LOADING - The scanner(s) have finished the map job, and the map results are
being loaded onto the platform.
CANCELED - A user canceled the map, and the scanner(s) have stopped the
map job.
ERROR - An error occurred during the map, and the map did not complete.
INTERRUPTED - The map was interrupted and did not complete.
/MAP/IP/PORT (#PCDATA)
attribute: value value is required and will be one of the following:
21 ..................................... FTP
22 ..................................... SSH
23 ..................................... Telnet
25 ..................................... SMTP
53 ..................................... DNS
80 ..................................... HTTP
110 ................................... POP3
139 ................................... NetBios
443 ................................... HTTPS
Note: The PORT element no longer appears in map reports, including new reports
and existing reports saved on the Qualys platform. The PORT element may appear
in existing reports that you have saved locally.
/MAP/IP/LINK EMPTY
attribute: value value is required. If /MAP/IP[@type="router"] then there will be one
/MAP/IP/LINK per host found in the domain that is served by that router. In this
case, value will be the IP address of the host that this router serves. Otherwise,
value is the IP address of the router that serves this host; if value is empty in this
case, it means that the router was protected by a firewall or otherwise shielded
from discovery.
QUEUED - A user launched the map or the service started a map based
on a map schedule. The map job is waiting to be distributed to
scanner(s).
RUNNING - The scanner(s) are actively running the map job.
LOADING - The scanner(s) finished the map job, and the map results
are being loaded onto the platform.
FINISHED - The scanner(s) have finished the map job, and the map
results were loaded onto the platform.
CANCELED - A user canceled the map, the scanner(s) have stopped the
map job, and some results may be available.
NOHOSTALIVE - The scanner(s) finished the map job, the map results
were loaded onto the platform, and target hosts were down (not alive).
ERROR - An error occurred during map, and the map did not complete.
INTERRUPTED - The map was interrupted and did not complete.
/MAP_REPORT_LIST/MAP_REPORT/TITLE (#PCDATA)*
The map title.
/MAP_REPORT_LIST/MAP_REPORT/ASSET_GROUPS (ASSET_GROUP+)
<!ELEMENT SCAN
(TITLE,TARGETS,SCHEDULE,NEXTLAUNCH_UTC?,DEFAULT_SCANNER?,ISCANNER_NAME?,O
PTION?,TYPE, ASSET_GROUPS?, EXCLUDE_IP_PER_SCAN?, USER_ENTERED_DOMAINS?,
USER_ENTERED_IPS?, NETWORK_ID?,OPTION_PROFILE?)>
<!ATTLIST SCAN
active (yes|no) #REQUIRED
ref CDATA #REQUIRED>
<!--
Schedule is daily or weekly or monthly.
Start_Date is CCYY-MM-DD-Thh:mm:ss
end_after implies number of hours after which scan
should be terminated if not finished.
Recurrence is max count the schedule will be executed.
-->
<!ELEMENT SCHEDULE
((DAILY|WEEKLY|MONTHLY|RELAUNCH_ON_FINISH),START_DATE_UTC,START_HOUR,STAR
T_MINUTE,END_AFTER_HOURS?,PAUSE_AFTER_HOURS?,RESUME_IN_DAYS?,TIME_ZONE,DS
T_SELECTED,RECURRENCE?)>
<!-- either day of month, or (day of week and week of month) must be
provided -->
<!ELEMENT MONTHLY EMPTY>
<!ATTLIST MONTHLY
frequency_months CDATA #REQUIRED
day_of_month CDATA #IMPLIED
day_of_week (0|1|2|3|4|5|6) #IMPLIED
week_of_month (1|2|3|4|5) #IMPLIED>
<!--
NEXTLAUNCH_UTC is in CCYY-MM-DD-Thh:mm:ss see:
http://www.w3.org/TR/xmlschema-2/#dateTime
-->
<!-- NAME of the asset group with the TYPE attribute with possible values
of (DEFAULT | EXTERNAL | ISCANNER) -->
<!ELEMENT ASSET_GROUP (ASSET_GROUP_TITLE, NETWORK_ID?)>
<!ELEMENT ASSET_GROUPS (ASSET_GROUP+)>
<!ELEMENT ASSET_GROUP_TITLE (#PCDATA)>
<!ELEMENT NETWORK_ID (#PCDATA)>
If a GMT shift value was specified to add the task in the time_zone parameter of
scheduled_scans.php, the GMT shift value is translated automatically to an
equivalent time zone code and reported in this element. For more information, see
Automatic Translation GMT Shift to Time Zone Code below.
/SCHEDULEDSCANS/SCAN/SCHEDULE/TIME_ZONE/TIME_ZONE_DETAILS (#PCDATA)
The time zone details (description) for the local time zone, identified in the
<TIME_ZONE_CODE> element. For example:, (GMT-0800) United States
(California): Los Angeles, Sacramento, San Diego, San Francisco.
/SCHEDULEDSCANS/SCAN/SCHEDULE/DST_SELECTED
When set to 1, Daylight Saving Time (DST) is enabled for the task.
/SCHEDULEDSCANS/SCAN/SCHEDULE/RECURRENCE
attribute: value value is required and indicates the number of times the task will be run before it is
deactivated (from 1 to 99)
/SCHEDULEDSCANS/SCAN/NEXTLAUNCH_UTC (#PCDATA)
The next date and time when the task will be launched.
/SCHEDULEDSCANS/SCAN/DEFAULT_SCANNER (#PCDATA)
A value (0 or 1) indicating whether the default scanner is enabled for the task. 1 is
returned when the default scanner is enabled for the task, and 0 is returned when
the default scanner is disabled for the task. This element is included in the report
only when one or more scanner appliances are in the user account.
GMT
shift code details
-11 AS American Samoa: Pago Pago
-10 US-HI United States (Hawaii): Honolulu
-9 US-AK United States (Alaska): Anchorage, Juneau, Nome
-8 US-CA United States (California): Los Angeles, Sacramento, San Diego, San Francisco
-7 US-AZ United States (Arizona): Phoenix. Tuscon
-6 US-TX United States (Texas): Austin, Dallas, Houston, San Antonio
-5 US-NY United States (New York): New York, Albany, Buffalo
-4 PR Puerto Rico: San Juan
-3 BR-RJ Brazil (Rio de Janeiro): Rio de Janeiro
-2 BR-FN Brazil (Fernando de Noronha)
-1 CV Cape Verde: Praia
0 GB United Kingdom: London, Belfast, Birmingham, Cardiff, Edinburgh, Glasgow
+1 FR France: Paris
+2 GR Greece: Athens
+3 RU-MOW Russia (Moscow City)
+4 AE United Arab Emirates: Abu Dhabi, Dubai
+5 PK Pakistan: Islamabad, Karachi
+6 LK Sri Lanka, Colombo
+7 TH Thailand, Bangkok
+8 CN China: Beijing, Chengdu, Chongqing, Shanghai, Wuhan
+9 JP Japan: Kyoto, Osaka, Tokyo, Yokohama
+10 AU-NSW Austalia (New South Wales): Sydney
+11 NC New Caledonia
+12 NZ New Zealand: Auckland, Wellington
Each <TIME_ZONE> element identifies a time zone properties, including the code, in the
sub-elements described below.
Element Description
<TIME_ZONE_CODE> A time zone code. These are pre-defined codes.
<TIME_ZONE_DETAILS> Text describing the time zone.
<DST_SUPPORTED> A value (0 or 1) indicating whether the time zone supports
Daylight Saving Time (DST). 1 is reported when DST is
supported, and 0 is reported when DST is not supported.
/SCANNEROPTIONS/LOADBALANCER
attribute: value value is required and is one of the following:
yes.................................... The service checks for load balanced hosts; when
found, all systems behind load balanced hosts are
scanned
no ..................................... The service does not check for load balanced hosts
/SCANNEROPTIONS/ERROR
attribute: number number is implied and, if present, is an error code
/SCANNEROPTIONS/ERROR/FIELD
attribute: name name is required and is one of the following:
scandeadhosts................ Error with scan dead hosts setting
portstoscan ..................... Error with scan port range setting
customrange................... Error with scan custom range setting
loadbalancer................... Error with scan load balanced hosts setting
attribute: error_type error_type is required and is one of the following:
invalid ............................. The field value is invalid
missing............................ A required field is missing
/SCANNEROPTIONS/ERROR/SUMMARY
Group List
The group list is an XML report is returned from the group_list.php function. This
report includes information about the asset groups defined in the user account.
The group list DTD is described below.
Asset IP List
The asset IP list is an XML report that is returned from the asset_ip_list.php
function and the ip_list.php function. This report includes information about the
IP addresses in the subscription.
The asset IP list DTD and XPaths are described below.
<!ELEMENT IP (#PCDATA)>
<!ELEMENT IP (#PCDATA)>
<!ELEMENT HOST_TAGS (#PCDATA)>
<!ELEMENT DNS (#PCDATA)>
<!ELEMENT NETBIOS (#PCDATA)>
<!ELEMENT OPERATING_SYSTEM (#PCDATA)>
<!ELEMENT OS_CPE (#PCDATA)>
<!ELEMENT QID_LIST (QID+)>
<!ELEMENT QID (ID, RESULT?)>
<!ELEMENT ID (#PCDATA)>
<!-- if format is set to "table" -->
<!-- tab '\t' is the col separator -->
<!-- and new line '\n' is the end of row -->
<!ELEMENT RESULT (#PCDATA)>
<!ATTLIST RESULT
format CDATA #IMPLIED
>
<!ELEMENT PORT_SERVICE_LIST (PORT_SERVICE+)>
This request searched for hosts in the asset group Dallas that are tracked by NetBIOS
host name. The search report is empty since no hosts were found to match the search
criteria.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE ASSET_SEARCH_REPORT SYSTEM
"https://qualysapi.qualys.com/asset_search_report.dtd">
<ASSET_SEARCH_REPORT>
<HEADER>
<COMPANY><![CDATA[Acme]]></COMPANY>
<USERNAME>acme_bb</USERNAME>
<GENERATION_DATETIME>2007-10-20T20:08:07Z</GENERATION_DATETIME>
<FILTERS>
<ASSET_GROUPS>
<ASSET_GROUP_TITLE><![CDATA[Dallas]]></ASSET_GROUP_TITLE>
</ASSET_GROUPS>
<TRACKING_METHOD>netbios</TRACKING_METHOD>
</FILTERS>
</HEADER>
</ASSET_SEARCH_REPORT>
<!ELEMENT IP (#PCDATA)>
<!ELEMENT TRACKING_METHOD (#PCDATA)>
<!ELEMENT DNS (#PCDATA)>
<!ELEMENT NETBIOS (#PCDATA)>
<!ELEMENT OPERATING_SYSTEM (#PCDATA)>
<!ELEMENT ASSET_GROUPS (ASSET_GROUP_TITLE+)>
<!ELEMENT VULN_INFO_LIST (VULN_INFO+)>
<!ELEMENT IP (#PCDATA)>
<!ATTLIST IP
network_id CDATA #IMPLIED
v6 CDATA #IMPLIED
>
<!ELEMENT TRACKING_METHOD (#PCDATA)>
<!ELEMENT ASSET_TAGS (ASSET_TAG+)>
<!ELEMENT ASSET_TAG (#PCDATA)>
Report Sections
There are four main sections to the asset data report Header, Host List, Glossary and
Appendices. These sections are summarized below.
XPath element specifications / notes
/ASSET_DATA_REPORT (ERROR | (HEADER, RISK_SCORE_PER_HOST?, HOST_LIST?, GLOSSARY?,
APPENDICES?))
/ASSET_DATA_REPORT/HEADER
(COMPANY, USERNAME, GENERATION_DATETIME, TEMPLATE, TARGET,
RISK_SCORE_SUMMARY?)
Report summary information.
/ASSET_DATA_REPORT/RISK_SCORE_PER_HOST (HOSTS+)
Risk score summary per host. This is included when the report template has the
Text Summary setting selected.
/ASSET_DATA_REPORT/HOST_LIST (HOST+)
Detected vulnerabilities for each host. For each detected vulnerability, information
specific to its detection on the host is also provided.
/ASSET_DATA_REPORT/GLOSSARY (VULN_DETAILS_LIST)
Vulnerability information applicable to all hosts.
/ASSET_DATA_REPORT/APPENDICES (NO_RESULTS?, NO_VULNS?, TEMPLATE_DETAILS?)
Additional data such as hosts with no scan results and template settings.
/ASSET_DATA_REPORT/ERROR (#PCDATA)
attribute: number number is implied and, if present, will be an error code.
Header
Host List
The host list section includes a list of hosts in your report with detected vulnerabilities.
For each vulnerability, information specific to its detection on the host is also included.
XPath element specifications / notes
/ASSET_DATA_REPORT/HOST_LIST (HOST+)
/ASSET_DATA_REPORT/HOST_LIST/HOST
(ERROR | (IP, NETWORK?, TRACKING_METHOD, ASSET_TAGS?, DNS?,
NETBIOS?, OPERATING_SYSTEM?, OS_CPE?, ASSET_GROUPS?,
VULN_INFO_LIST?))
/ASSET_DATA_REPORT/HOST_LIST/HOST/VULN_INFO_LIST/VULN_INFO/TYPE (#PCDATA)
The type of vulnerability check. A valid value is Vuln for a confirmed
vulnerability, Practice for a potential vulnerability, or Ig for an information
gathered.
/ASSET_DATA_REPORT/HOST_LIST/HOST/VULN_INFO_LIST/VULN_INFO/PORT (#PCDATA)
The port number that the vulnerability was detected on.
A valid value is New for an active vulnerability that was detected one time,
Active for an active vulnerability that was detected at least two times,
Re-Opened for an active vulnerability that was fixed and then re-opened, and
Fixed for a vulnerability that was detected previously and is now fixed.
/ASSET_DATA_REPORT/HOST_LIST/HOST/VULN_INFO_LIST/VULN_INFO/LAST_FIXED (#PCDATA)
The last fixed date/time for the vulnerability on the host.
/ASSET_DATA_REPORT/HOST_LIST/HOST/VULN_INFO_LIST/VULN_INFO/CVSS_FINAL (#PCDATA)
The final CVSS score calculated for the host.
/ASSET_DATA_REPORT/HOST_LIST/HOST/VULN_INFO_LIST/VULN_INFO/CVSS3_FINAL (#PCDATA)
The final CVSS3 score calculated for the host. If Access Vector is not defined by
NIST, this is the Temporal score.
/ASSET_DATA_REPORT/HOST_LIST/HOST/VULN_INFO_LIST/VULN_INFO/TICKET_NUMBER (#PCDATA)
The number of the ticket that applies to the vulnerability instance on the host.
/ASSET_DATA_REPORT/HOST_LIST/HOST/VULN_INFO_LIST/VULN_INFO/TICKET_STATE (#PCDATA)
The state/status of the ticket that applies to the vulnerability instance on the host.
Glossary
The glossary section includes static vulnerability details.
XPath element specifications / notes
/ASSET_DATA_REPORT/GLOSSARY (VULN_DETAILS_LIST)
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST (VULN_DETAILS+)
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS
(QID, TITLE, SEVERITY, CATEGORY, CUSTOMIZED?, THREAT,
THREAT_COMMENT?, IMPACT, IMPACT_COMMENT?, SOLUTION,
SOLUTION_COMMENT?, COMPLIANCE?, CORRELATION?, PCI_FLAG,
LAST_UPDATE?, CVSS_SCORE?, CVSS3_SCORE?,
VENDOR_REFERENCE_LIST?, CVE_ID_LIST?, BUGTRAQ_ID_LIST?)
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS/QID (#PCDATA)
The Qualys ID (QID) assigned to the vulnerability.
attribute: id id is required and is a reference ID that corresponds to a QID listed in the Host List
section. For more information, see
/ASSET_DATA_REPORT/HOST_LIST/HOST/VULN_INFO_LIST/VULN_INFO/QID
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS/TITLE (#PCDATA)
The title of the vulnerability.
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS/SEVERITY (#PCDATA)
The severity level assigned to the vulnerability.
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS/CATEGORY (#PCDATA)
The category of the vulnerability.
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS/CUSTOMIZED
(DISABLED?, CUSTOM_SEVERITY?)
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS/CUSTOMIZED/DISABLED
(#PCDATA)
Identifies whether the vulnerability was disabled by a Manager users. If disabled,
the vulnerabilities is filtered from reports.
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS/CUSTOMIZED/
CUSTOM_SEVERITY (#PCDATA)
Identifies whether the severity level was changed. Managers can change the
severity level by editing the vulnerability in the Qualys KnowledgeBase.
/ASSET_DATA_REPORT/GLOSSARY/VULN_DETAILS_LIST/VULN_DETAILS/THREAT (#PCDATA)
The Qualys provided description of the threat.
Appendices
The appendices section includes additional report information including hosts for which
there are no scan results and report template settings.
XPath element specifications / notes
/ASSET_DATA_REPORT/APPENDICES (NO_RESULTS?, NO_VULNS?, TEMPLATE_DETAILS?)
/ASSET_DATA_REPORT/APPENDICES/NO_RESULTS (IP_LIST)
A list of IPs for which there are no available scan results. This includes hosts that
were not alive at the time of the scan.
/ASSET_DATA_REPORT/APPENDICES/NO_RESULTS /IP_LIST (NETWORK?, RANGE*)
/ASSET_DATA_REPORT/APPENDICES/NO_RESULTS /IP_LIST/NETWORK (#PCDATA)
The network the IPs belong to, when network support is enabled.
/ASSET_DATA_REPORT/APPENDICES/NO_RESULTS/IP_LIST/RANGE (START, END)
/ASSET_DATA_REPORT/APPENDICES/NO_RESULTS/IP_LIST/RANGE/START (#PCDATA)
The first IP address in the range.
/ASSET_DATA_REPORT/APPENDICES/NO_RESULTS/IP_LIST/RANGE/END (#PCDATA)
The last IP address in the range.
/ASSET_DATA_REPORT/APPENDICES/NO_VULNS (IP_LIST)
A list of IPs for which you have saved scan results but the results are not
displayed because all vulnerability checks have been filtered out. To display these
results, make changes to the filter settings in your report template.
This appendix also lists IPs for which no vulnerabilities were detected by the
service. Verify the scan options specified in your option profile.
LAST_CLOSED_DATETIME?, LAST_IGNORED_DATETIME?)>
<!ELEMENT FIRST_FOUND_DATETIME (#PCDATA)>
<!ELEMENT LAST_FOUND_DATETIME (#PCDATA)>
<!ELEMENT LAST_SCAN_DATETIME (#PCDATA)>
<!ELEMENT TIMES_FOUND (#PCDATA)>
<!ELEMENT TIMES_NOT_FOUND (#PCDATA)>
<!ELEMENT LAST_OPEN_DATETIME (#PCDATA)>
<!ELEMENT LAST_RESOLVED_DATETIME (#PCDATA)>
<!ELEMENT LAST_CLOSED_DATETIME (#PCDATA)>
<!ELEMENT LAST_IGNORED_DATETIME (#PCDATA)>
<!--
If the "format" attribute is set to "table", then column
values are separated by tab '\t', and rows are terminated
by new line '\n'.
-->
<!ATTLIST RESULT format CDATA #IMPLIED>
Note: The "Mid-air collision detected" reason is returned when two Qualys
entities (end users, API requests, and/or the service itself) attempts to change a
ticket at the same time. In this case, the first request is processed and any
additional requests return an error.
<!ELEMENT TICKET_LIST_DELETED_OUTPUT
((HEADER,(TICKET_LIST|ERROR|TRUNCATION)*) | ERROR)>
<!ATTLIST STATE
old-state CDATA #IMPLIED
new-state CDATA #IMPLIED>
<!--
standard-severity is the original Qualys severity level 1 to 5
if it has been customized by the user
-->
<!ATTLIST VULNINFO
type (VULN|POSS) #REQUIRED
qid CDATA #REQUIRED
severity CDATA #REQUIRED
standard-severity CDATA #IMPLIED
>
<!ATTLIST VENDOR
ref CDATA #REQUIRED>
<!ELEMENT TITLE (#PCDATA) >
/REMEDIATION_TICKETS/ACCOUNT
attribute: account-id account-id is required and will be the MD5 hash of the Qualys subscription ID
associated with the Qualys user account specified in the header key
USERNAME.
/REMEDIATION_TICKETS/ERROR
attribute: number number is implied and, if present, is an error code.
SEVERITY_LEVEL_3?, SEVERITY_LEVEL_4?,
SEVERITY_LEVEL_5?)>
<!ELEMENT INFO_GATHERED (SEVERITY_LEVEL_1?, SEVERITY_LEVEL_2?,
SEVERITY_LEVEL_3?, SEVERITY_LEVEL_4?,
SEVERITY_LEVEL_5?)>
CVSS_ENV_IR,
CVSS_ENV_AR)>
A valid value is New for an active vulnerability that was detected one time,
Active for an active vulnerability that was detected at least two times,
Re-Opened for an active vulnerability that was fixed and then re-opened, and
Fixed for a vulnerability that was detected previously and is now fixed.
/HOST/vuln_level/SEVERITY_LEVEL_n/COUNT/VULNINFO/CATEGORY (#PCDATA)
The category of the vulnerability.
/HOST/vuln_level/SEVERITY_LEVEL_n/COUNT/VULNINFO/PORT (#PCDATA)
The port number that the vulnerability was detected on.
/HOST/vuln_level/SEVERITY_LEVEL_n/COUNT/VULNINFO/SERVICE (#PCDATA)
The service that the vulnerability was detected on.
/HOST/vuln_level/SEVERITY_LEVEL_n/COUNT/VULNINFO/PROTOCOL (#PCDATA)
The protocol that the vulnerability was detected on.
/HOST/vuln_level/SEVERITY_LEVEL_n/COUNT/VULNINFO/INSTANCE (#PCDATA)
The Oracle DB instance the vulnerability was detected on.
/HOST/vuln_level/SEVERITY_LEVEL_n/COUNT/VULNINFO/FIRST_FOUND (#PCDATA)
The date and time when the vulnerability was first detected on the host, in YYYY-
MM-DDTHH:MM:SSZ format (UTC/GMT).
User Output
The user output is an XML report returned from the user.php function.
The user output DTD and XPaths are described below.
<!ELEMENT IP (#PCDATA)>
domain names F
map requests 63, 69
none domain 55 function name
domain parameter 60, 69 action_log_report.php 199
domain_list.php function 103 asset_data_report.php 137
DTDs for reports asset_domain_list.php 121
action log report 201 asset_domain.php 118
asset data report 140 asset_group_delete.php 131
asset domain list 121 asset_group_list.php 130
asset group list 130 asset_group.php 122
asset IP list 117 asset_ip_list.php 116
asset range info report 142 asset_ip.php 110
asset search report 136 asset_range_info.php 141
host information report 171 asset_search.php 132
ignore vulnerability output 175 get_host_info.php 168
KnowledgeBase download output 50 get_tickets.php 164
map report 66, 70 ignore_vuln.php 172
map report list 75 iscanner_list.php 101
password change output 204 knowledgebase_download.php 48
running scans and maps list 34, 71 map_report_list.php 74
scan options report 100 map_report.php 76
scan report 33 map.php 67
scan report list 38 map-2.php 58
scan target history output 47 password_change.php 202
scanner appliance list 101 report_template_list.php 138
scheduled scans report 97 scan_cancel.php 35, 72
ticket delete output 160 scan_options.php 98
ticket edit output 158 scan_report_delete.php 41, 78
ticket information report 166 scan_report_list.php 37
ticket list deleted output 163 scan_report.php 39
ticket list output 155 scan_running_list.php 34, 71
user list output 198 scan_target_history.php 43
user output 190, 195 scan.php 27
DTDs, most recent 13 scheduled_scans.php 84
ticket_delete.php 159
E ticket_edit.php 156
ticket_list_deleted.php 161
email notification 31, 61 ticket_list.php 153
error codes 379 time_zone_code_list.php 93
external scanners 64 user_list.php 196
user.php 180, 192, 194
G L
GET method 14 load balancer check 99
get_host_info.php function 168
get_tickets.php function 164 M
group_list.php function 104
map functions
H asset_domain_list.php 121
asset_group_list.php 130
host information function cancel a running map 72
get_host_info.php 168 delete a saved map report 78
host information report list running maps 71
DTD 171, 349 map_report_list.php 74
XPath elements 353 map_report.php 76
host remediation functions 167 map.php 67
host scan data 108 map-2.php 58
host target 31, 32 overview 10, 52
host tracking method 109, 110 scan_cancel.php 72
scan_report_delete.php 78
I scan_running_list.php 71
summary of functions 56
ignore vulnerability output map report
DTD 175, 363 DTD 66, 70, 77, 244, 250
XPath elements 364 internal network 52
ignore_vuln.php function 172 network perimeter 52
invalid tickets 151 XPath elements 246, 252
IP addresses 31, 32 map report list 74
IP ranges 31 DTD 75, 255
ip_list.php function 102 XPath elements 256
iscanner_list.php function 101 map request 58, 67
iscanner_name parameter 29, 60, 87 map summary notification 61
map_report_list.php function 74
K map_report.php function 76
map.php function 67
keep alive line 28, 59, 67 map-2.php function 58
KnowledgeBase download 48
N Q
NAC option, scanner appliance 272 Qualys
NAM option, scanner appliance 272 API server 14
netblocks 54 network discovery 51
network discovery 10, 51, 52 network security audits 21
network IP address blocks 54 reporting 205, 243
network security audits 10, 21 user account 13
ng 217 Qualys API server 14
Qualys End User Agreement (EULA) 192
O Qualys EULA 192
Qualys platform 12
option parameter 30, 61, 88 Qualys Support 7
option profile 22, 53, 211, 246, 252 Qualys user account 13
overdue tickets 151 Qualys user interface 81
P R
password change output range of IP addresses 31
DTD 376 remediation management functions
XPath elements 377 get_tickets.php 164
password change output DTD 204 ignore_vuln.php 172
password_change.php function 202 summary of functions 148, 167
PCI flag in scan report 217 ticket_delete.php 159
ports ticket_edit.php 156
custom list 100 ticket_list_deleted.php 161
default 100 ticket_list.php 153
full 100 report DTDs, most recent 13
range 100 report template ID 138
ports to scan 99, 100 report template list 138
POST method 14 report_template_list.php function 138
preferences functions
iscanner_list.php 101
scan_options.php 98
scheduled_scans.php 84
summary of functions 82
profile 22, 53, 211, 246, 252