InsightVM

Community Platform

runZero integrates with Rapid7 InsightVM by importing data from the InsightVM API.

Both Rapid7 InsightVM Cloud and on-premises InsightVM are supported. For on-premises use you will need to use the InsightVM connector as a scan probe from a runZero Explorer which has network access to the InsightVM deployment.

The Insight Platform API is distinct from the InsightVM API, and is not supported.

Getting started with InsightVM

To set up the InsightVM integration, you’ll need to:

  1. Create or obtain user credentials to use with the InsightVM API.
  2. Add the InsightVM API username, password, and API URL in runZero.
  3. Choose whether to configure the integration as a scan probe or connector task.
  4. Activate the InsightVM integration to pull your data into runZero.

Requirements

Before you can set up the InsightVM integration:

  • Verify that you have runZero Enterprise.
  • Obtain credentials for an InsightVM user with administrator access to the InsightVM portal.
  • Scan your InsightVM with a runZero Explorer if you want to use trusted authentication (optional).

Step 1: Add the InsightVM credentials to runZero

  1. Create a new credential via the runZero Credentials page.
  2. Provide a name for the credentials, like InsightVM.
  3. Choose InsightVM Username & Password from the list of credential types.
  4. Provide the following information:
    • InsightVM username - The username you want to use to connect to the InsightVM API. This account requires the User role or greater permissions in InsightVM.
    • InsightVM password - The password for your InsightVM username.
    • InsightVM API URL - The URL of your InsightVM API instance. By default, the InsightVM API uses port 3780. The expected format is https://ip:3780 or https://domain.tld:3780. (Note: runZero automatically appends api/3/sites?size=500 to this URL.)
    • InsightVM insecure - Set this to Yes if you want to attempt authentication without a verified thumbprint.
    • InsightVM thumbprints (optional) - A set of IP=SHA256:B64HASH or domain.tld=SHA256:B64HASH pairs to trust for authentication.
      • You will need to scan your InsightVM instance with runZero in order to obtain the TLS thumbprint. The TLS fingerprints service attribute report lists all previously seen fingerprints.
      • If InsightVM insecure is set to No and no thumbprints are provided:
        • With a self-signed certificate, the connection will fail because the certificate chain cannot be verified.
        • With a valid certificate from a public CA, the connection can work without thumbprints.
  5. If you want all other organizations to be able to use this credential, select the Make this a global credential option. Otherwise, you can configure access on a per-organization basis.
  6. Save the credential.

You’re now ready to set up and activate the connection to bring in data from InsightVM.

Step 2: Choose how to configure the Rapid7 integration

The Rapid7 InsightVM integration can be configured as either a scan probe or a connector task. Scan probes gather data from integrations during scan tasks. Connector tasks run independently from either the cloud or one of your Explorers, only performing the integration sync. Scan probes will be the right option for most users. Setting up a connector will only work for if you’re self-hosting runZero or your InsightVM instance is publicly accessible.

Step 3: Sync your InsightVM data

After you add your InsightVM credential, you’ll need to activate the integration to sync your data.

Step 3a: Configure the InsightVM scan probe

You can run the InsightVM integration as a scan probe so that the runZero Explorer will pull your vulnerability data into the runZero Console.

In a new or existing scan configuration:

  • Ensure that the INSIGHTVM option is set to Yes in the Probes and SNMP tab and change any of the default options if needed.
  • Set the correct InsightVM credential to Yes in the Credentials tab.
  • Optionally, set the severity and risk levels for ingested vulnerability scan results.

Step 3b: Configure the InsightVM connector

A connection requires you to specify a schedule and choose a site. The schedule determines when the sync occurs, and the site determines where any new InsightVM-only assets are created.

  1. Activate a connection to InsightVM. You can access all available third-party connections from the integrations page, your inventory, or the tasks page.
  2. Choose the credentials you added earlier. If you don’t see the credentials listed, make sure the credentials have access to the organization you are currently in.
  3. Set the severity and risk levels you want to import (optional).
  4. Set the Fingerprint only toggle to Yes if you want vulnerability records to be ingested for fingerprint analysis but not stored in your runZero vulnerability inventory (optional).
  5. Enter a name for the task, like InsightVM sync (optional).
  6. Choose the Explorer to perform this connector task from (optional).
  7. Choose the site you want to add your assets to. All newly discovered assets will be stored in this site.
  8. Enter a description for the task (optional).
  9. If you want to exclude assets that have not been scanned by runZero from your integration import, switch the Exclude unknown assets toggle to Yes. By default, the integration will include assets that have not been scanned by runZero.
  10. Schedule the sync. A sync can be set to run on a recurring schedule or run once. The schedule will start on the date and time you have set.
  11. Activate the connection when you are done. The sync will run on the defined schedule. You can always check the Scheduled tasks to see when the next sync will occur.

Step 4: View InsightVM assets and vulnerabilities

After a successful sync, you can go to your inventory to view your InsightVM assets. These assets will have a Rapid7 icon listed in the Source column.

The InsightVM integration gathers details about vulnerabilities detected in addition to enriching asset inventory data. Go to Inventory > Vulnerabilities to view the vulnerability data provided by InsightVM.

To filter by Rapid7 assets, consider running the following queries:

Click into each asset to see its individual attributes. runZero will show you the attributes gathered from the Rapid7 scan data.

Troubleshooting

If you are having trouble using this integration, the questions and answers below may assist in your troubleshooting.

Why is the Rapid7 InsightVM integration unable to connect?

  1. Are you getting any data from the Rapid7 InsightVM integration?
    • Make sure to query the inventory rather than look at the task details to review all the data available from this integration.
    • In some cases, integrations have a configuration set that limits the amount of data that comes into the runZero console.
  2. Some integrations require very specific actions that are easy to overlook. If a step is missed when setting up the intergration, it may not work correctly. Please review this documentation and follow the steps exactly.
  3. If the Rapid7 InsightVM integration is unable to connect be sure to check the task log for errors. Some common errors include:
    • 500 - server error, unable to connect to the endpoint
    • 404 - hitting an unknown endpoint on the server
    • 403 - not authorized, likely a credential issue

How can I get a TLS thumbprint for the InsightVM credential?

Here is a set of example commands that would calculate your TLS thumbprint, where is the IP address of your InsightVM instance:

$ (echo|openssl s_client -connect <IP address>:3780 -showcerts 2>/dev/null) | openssl x509 -inform PEM -outform DER |  openssl dgst -sha256 -binary | base64

An example value returned by this set of commands would look something like this: X1NWttnkIQprK6zSre/VweKpbRlj7Dt4M6hNfUacytE= Use the following entry for the corresponding TLS thumbprint: 192.168.0.3:3780=SHA256:X1NWttnkIQprK6zSre/VweKpbRlj7Dt4M6hNfUacytE=

Updated