Understanding the reporting data model: Facts

Facts are provided by the Reporting Data Model. Each fact table provides access to only information allowed by the configuration of the report.

Understanding facts

Any vulnerability status, severity or category filters will be applied in the facts, only allowing those results, findings, and counts for vulnerabilities in the scope to be exposed. Similarly, only assets within the scope of the report configuration are made available in the fact tables. By default, all facts are interpreted to be asset-centric, and therefore expose information for all assets in the scope of the report, regardless as to whether they were configured to be in scope with the use of an asset, scan, asset group, or site selection.

Data model 2.0.0 exposes information about linking assets across sites.

All previous information is still available, and in the same format. As of data model 2.0.0, there is a sites column in the dim_asset dimension that lists the sites to which an asset belongs.

For each fact, a dimensional star or snowflake schema is provided. For brevity and readability, only one level in a snowflake schema is detailed, and only two levels of dimensions are displayed. For more information on the attributes of these dimensions, refer to the Dimensions section below.

When dates are displayed as measures of facts, they will always be converted to match the time zone specified in the report configuration.

Only data from fully completed scans of assets are included in the facts. Results from aborted or interrupted scans will not be included.

Common measures

It will be helpful to keep in mind some characteristics of certain measures that appear in the following tables.

  • asset_compliance - This attribute measures the ratio of assets that are compliant with the policy rule to the total number of assets that were tested for the policy rule.
  • assets - This attribute measures the number of assets within a particular level of aggregation.
  • compliant_assets - This attribute measures the number of assets that are compliant with the policy rule (taking into account policy rule overrides).
  • exploits - This attribute measures the number of distinct exploit modules that can be used exploit vulnerabilities on each asset. When the level of grain aggregates multiple assets, the total is the summation of the exploits value for each asset. If there are no vulnerabilities found on the asset or there are no vulnerabilities that can be exploited with a exploit module, the count will be zero.
  • malware_kits - This attribute measures the number of distinct malware kits that can be used exploit vulnerabilities on each asset. When the level of grain aggregates multiple assets, the total is the summation of the malware kits value for each asset. If there are no vulnerabilities found on the asset or there are no vulnerabilities that can be exploited with a malware kit, the count will be zero.
  • noncompliant_assets - This attribute measures the number of assets that are not compliant with the policy rule (taking into account policy rule overrides).
  • not_applicable_assets - This attribute measures the number of assets that are not applicable for the policy rule (taking into account policy rule overrides).
  • riskscore - This attribute measures the risk score of each asset, which is based on the vulnerabilities found on that asset. When the level of grain aggregates multiple assets, the total is the summation of the riskscore value for each asset.
  • rule_compliance - This attribute measures the ratio of policy rule test result that are compliant or not applicable to the total number of rule test results.
  • vulnerabilities - This attribute measures the number of vulnerabilities discovered on each asset. When the level of grain aggregates multiple assets, the total is the summation of the vulnerabilities on each asset. If a vulnerability was discovered multiple times on the same asset, it will only be counted once per asset. This count may be zero if no vulnerabilities were found vulnerable on any asset in the latest scan, or if the scan was not configured to perform vulnerability checks (as in the case of discovery scans). The vulnerabilities count is also provided for each severity level:
    • Critical: The number of vulnerabilities that are critical.
    • Severe: The number of vulnerabilities that are severe.
    • Moderate: The number of vulnerabilities that are moderate.
  • vulnerabilities_with_exploit - This attribute measures the total number of a vulnerabilities on all assets that can be exploited with a published exploit module. When the level of grain aggregates multiple assets, the total is the summation of the vulnerabilities_with_exploit value for each asset. This value is guaranteed to be less than the total number of vulnerabilities. If no vulnerabilities are present, or none are subject to an exploit, the value will be zero.
  • vulnerabilities_with_malware_kit - This attribute measures the number of vulnerabilities on each asset that are exploitable with a malware kit. When the level of grain aggregates multiple assets, the total is the summation of the vulnerabilities_with_malware_kit value for each asset. This value is guaranteed to be less than the total number of vulnerabilities. If no vulnerabilities are present, or none are subject to a malware kit, the value will be zero.
  • vulnerability_instances - This attribute measures the number of occurrences of all vulnerabilities found on each asset. When the level of grain aggregates multiple assets, the total is the summation of the vulnerability_instances value for each asset. This value will count each instance of a vulnerability on each asset. This value may be zero if no instances were tested or found vulnerable (e.g. discover scans).

Attributes with a timestamp datatype, such as a first_discovered, honor the time zone specified in the report configuration.

Fact_all

Asset Groups

Asset Policy

Asset Scans

Asset Scan Vulnerabilities

PCI Asset Scans

Policy

Fact Remediation

Sites

Tags

Vulnerabilities