Dynamic Scanning with Delinea Secret Server
The Tenable integration with Delinea Secret Server Auto-Discovery provides the dynamic scanning feature that offers the following significant advantages.
-
When using Delinea Secret Server Auto-Discovery, the scan automatically adds discovered hosts as scan targets with their respective credentials.
-
With the Auto-Discovery feature, there is no need to scan multiple targets in the target list. Only one target is required within the target(s) list. This target can be any pingable IP address or hostname, such as the IP address of the scanner, 127.0.0.1, or the address of one of the intended targets. This initial target kicks off the collection process. You can configure up to five Delinea Secret Server Auto-Discovery credentials.
The Delinea Secret Server Auto-Discovery feature functions with Tenable One Vulnerability Management, Tenable Nessus, or Tenable Security Center to perform credentialed scanning of SSH, Windows (SMB), and Database credential types.
How Dynamic Scanning Works
Caution: Tenable recommends utilizing scan zones with one scanner when using Auto-Discovery credentials, and users should only enter a single initial host in the scan. If multiple scanners are used in an Auto-Discovery scan, targets retrieved from the integration may be scanned multiple times.
Integrating with the standard Delinea Secret Server integration setup requires you to specify a particular secret within the scan credential configuration. This designated secret acts as the authentication method for all hosts specified in the target list, which must be provided at the start of the scan configuration. If different targets require distinct accounts for authentication, multiple credentials may need to be configured within the scan.
Conversely, the Delinea Secret Server Auto-Discovery integration enables the retrieval of multiple accounts via a search query. It then dynamically populates these accounts along with their associated machines into the scan targets list, ensuring each target is correctly paired with its corresponding credential.
Collection
The initial collection of accounts occurs once the arbitrary target/host appears in the target settings of the scan policy. Logs for the initial collection are located in the Debugging Log Report plugin output on this host in the following logs:
-
Database: pam_database_auto_collect.nbin~Delinea Secret Server AutoDiscovery
-
SSH: pam_ssh_auto_collect.nbin~Delinea Secret Server Auto-Discovery
-
Windows: pam_smb_auto_collect.nbin~Delinea Secret Server Auto-Discovery
Adding Targets to the Scan with Credentials
After the initial collection, the integration automatically adds the hosts and necessary knowledge base (KB) entries for an authenticated scan. Logs from this stage are located in the Debugging Log Report plugin output on this host in the following logs:
-
Database: pam_database_auto_collect.log
-
SSH: pam_ssh_auto_collect.log
-
Windows: pam_smb_auto_collect.log
To automatically add a target to the scan, the integration must collect an account that includes a Machine field containing either an IP address or a resolvable hostname. If a machine is not a valid IP address or resolvable hostname, it does not add the host to the scan. In this case, errors from the function fqdn_resolv() trigger the creation of separate detailed logs:
-
Database: pam_database_auto_collect_resolv_func.log
-
SSH: pam_ssh_auto_collect_resolv_func.log
-
Windows: pam_smb_auto_collect_resolv_func.log
Querying for Accounts
You must provide a query defining the exact set of accounts to use for the scan. The Delinea Secret Server Auto-Discovery credential gives a flexible set of options for how to select these accounts. It is essential to know how to construct a query for accounts to use Delinea Secret Server Auto-Discovery. The following table describes the possible combinations of query values and their effects.
| Query values | Effect |
|---|---|
| Query Mode: Simple Folder: 10 Search Field: (empty) Search Text: (empty) Exact Match: false |
Use all accounts contained in the folder with ID 10. GET /v1/secrets/lookup?filter.folderId=10 |
| Query Mode: Simple Folder: (empty) Search Field: (empty) Search Text: tenable Exact Match: false |
Use all accounts contained in the folder with ID 10. GET /v1/secrets/lookup?filter.folderId=10 |
| Query Mode: Simple Folder: (empty) Search Field: notes Search Text: tenable Exact Match: false |
Use all accounts that contain "tenable" in the notes. GET /v1/secrets/lookup?filter.searchText=tenable&filter.searchField=notes |
| Query Mode: Simple Folder: (empty) Search Field: notes Search Text: tenable Exact Match: true |
Use all accounts whose "notes" field ONLY contains "tenable." GET /v1/secrets/lookup?filter.searchText=tenable&filter.searchField=notes&exactMatch=true |
| Query Mode: Advanced Query String: filter.folderId=10&includeInactive=true |
Use folder ID 10, and include inactive secrets. GET /v1/secrets/lookup?filter.folderId=10&includeInactive=true |
If using the Advanced query mode, the documentation on Lookup Secrets with Search contains a full list of parameters that can be used in the query string.
Note: Advanced query strings must be URL-encoded (for example, replacing space characters with %20).
The initial query uses the Lookup Secrets with Search method of the Delinea Secret Server REST API. You can find an exact API reference in the Secret Server web interface under Administration > REST API Guide.
Folder ID is the integer ID of the folder within Delinea Secret Server. A folder ID is visible in its URL when the folder is open in a web browser. For example, if its URL displays https://SECRETSERVER/app/#/secrets/view/folder/10, then the folder ID is 10.
Privilege Escalation
The Delinea Secret Server Auto-Discovery integration supports privilege escalation. If login and escalation use two different credentials (for example, using an escalation method of su), then you must enter a separate query to collect the escalation accounts. Otherwise, you can leave the escalation query fields empty. For example, with sudo escalation the authenticated user would enter their own password to escalate. In all cases, you may optionally specify a user for escalation.
Limitations
-
It is only possible to use one account per host. If the search collects multiple accounts with the same machine, the first account that the search returns is used. Additionally, the Debugging Log Report includes a warning in the collection phase logs. Generally, Tenable recommends configuring scans to collect only a single account per machine to reduce the number of unnecessary requests.
-
A credential is limited to a single target authentication protocol. Delinea Secret Server Auto-Discovery is an authentication method of the SSH, Windows, or Database credential, so it is not possible to configure a single credential that collects both SSH and Windows accounts or targets.
-
You cannot use secrets with SSH private key authentication in the same credential as secrets with password authentication, because you must select the Use Private Key option that applies to the entire credential. To use both private keys and password authentication, configure separate Delinea SSH Auto-Discovery credentials.
-
For Auto-Discovery to use a secret, it must have a Machine or Server field defining the secret's associated address or hostname.
