Host
Tenable.io supports the following forms of host authentication:
Use SNMPv3 credentials to scan remote systems that use an encrypted network management protocol (including network devices). Tenable.io uses these credentials to scan for patch auditing or compliance checks.
Note: SNMPv3 options are only available in the Advanced Network Scan template.
Click SNMPv3 in the Credentials list to configure the following settings:
Option | Description |
Required |
---|---|---|
Username |
The username for the SNMPv3 based account that Tenable.io uses to perform the checks on the target system. |
yes |
Port |
The port on which SNMP is running on the target system. By default, this value is 161. |
no |
Security level |
The security level for SNMP:
|
yes |
Authentication algorithm |
The algorithm the remove service supports (MD5 or SHA1). |
yes (if you select authentication) |
Authentication password |
The password for the username specified. |
yes (if you select authentication) |
Privacy algorithm |
The encryption algorithm to use for SNMP traffic. |
yes (if you select authentication with privacy) |
Privacy password |
A password used to protect encrypted SNMP communication. |
yes (if you select authentication with privacy) |
Use SSH credentials for host-based checks on Unix systems and supported network devices.
Note: Non-privileged users with local access on Linux systems can determine basic security issues, such as patch levels or entries in the /etc/passwd file. For more comprehensive information, such as system configuration data or file permissions across the entire system, an account with root privileges is required.
Note: You can add up to 1000 SSH credentials in a single scan. For best performance, Tenable recommends adding no more than 10 SSH credentials per scan.
Select SSH in the Credentials list to configure the settings for the following SSH authentication methods:

Public Key Encryption, also referred to as asymmetric key encryption, provides a more secure authentication mechanism by the use of a public and private key pair. In asymmetric cryptography, the public key is used to encrypt data and the private key is used to decrypt it. The use of public and private keys is a more secure and flexible method for SSH authentication. Tenable.io supports both DSA and RSA key formats.
Like Public Key Encryption, Tenable.io supports RSA and DSA OpenSSH certificates. Tenable.io also requires the user certificate, which is signed by a Certificate Authority (CA), and the user’s private key.
Note:Tenable.io supports the OpenSSH SSH public key format. Formats from other SSH applications, including PuTTY and SSH Communications Security, must be converted to OpenSSH public key format.
The most effective credentialed scans are when the supplied credentials have root privileges. Since many sites do not permit a remote login as root, Tenable.io can invoke su, sudo, su+sudo, dzdo, .k5login, or pbrun with a separate password for an account that has been set up to have su or sudo privileges. In addition, Tenable.io can escalate privileges on Cisco devices by selecting Cisco ‘enable’ or .k5login for Kerberos logins.
Note:Tenable.io supports the blowfish-cbc, aes-cbc, and aes-ctr cipher algorithms. Some commercial variants of SSH do not have support for the blowfish algorithm, possibly for export reasons. It is also possible to configure an SSH server to only accept certain types of encryption. Check your SSH server to ensure the correct algorithm is supported.
Tenable.io encrypts all passwords stored in policies. However, the use of SSH keys for authentication rather than SSH passwords is recommended. This helps ensure that the same username and password you are using to audit your known SSH servers is not used to attempt a log in to a system that may not be under your control.
Note: For supported network devices, Tenable.io only supports the network device’s username and password for SSH connections.
If an account other than root must be used for privilege escalation, it can be specified under the Escalation account with the Escalation password.
Option | Description | Required |
---|---|---|
Username |
The username to authenticate to the host. |
yes |
Private Key |
The RSA or DSA Open SSH key file of the user. |
yes |
Private key passphrase |
The passphrase of the Private Key. |
no |
Elevate privileges with | The privilege escalation method you want to use to increase users' privileges after initial authentication. Your selection determines the specific options you must configure. For more information, see Privilege Escalation. | no |

Option | Description | Required |
---|---|---|
Username |
The username to authenticate to the host. |
yes |
User Certificate |
The RSA or DSA Open SSH certificate file of the user. |
yes |
Private Key |
The RSA or DSA Open SSH key file of the user. |
yes |
Private key passphrase |
The passphrase of the Private Key. |
no |
Elevate privileges with | The privilege escalation method you want to use to increase users' privileges after initial authentication. Your selection determines the specific options you must configure. For more information, see Privilege Escalation. | no |

CyberArk is a popular enterprise password vault that helps you manage privileged credentials. Tenable.io can get credentials from CyberArk to use in a scan.
Option | Description | Required |
---|---|---|
CyberArk Host |
The IP address or FQDN name for the CyberArk AIM Web Service. |
yes |
Port |
The port on which the CyberArk API communicates. By default, Tenable uses 443. |
yes |
AppID |
The Application ID associated with the CyberArk API connection. |
yes |
Client Certificate | The file that contains the PEM certificate used to communicate with the CyberArk host. |
no |
Client Certificate Private Key | The file that contains the PEM private key for the client certificate. |
yes, if private key is applied |
Client Certificate Private Key Passphrase | The passphrase for the private key, if required. |
yes, if private key is applied |
Kerberos Target Authentication |
If enabled, Kerberos authentication is used to log in to the specified Linux or Unix target. |
no |
Key Distribution Center (KDC) |
(Required if Kerberos Target Authentication is enabled.) This host supplies the session tickets for the user. |
yes |
KDC Port |
The port on which the Kerberos authentication API communicates. By default, Tenable uses 88. |
no |
KDC Transport |
The KDC uses TCP by default in Linux implementations. For UDP, change this option. If you need to change the KDC Transport value, you may also need to change the port as the KDC UDP uses either port 88 or 750 by default, depending on the implementation. |
no |
Realm |
(Required if Kerberos Target Authentication is enabled.) The Realm is the authentication domain, usually noted as the domain name of the target (for example, example.com). By default, Tenable.io uses 443. |
yes |
Get credential by |
The method with which your CyberArk API credentials are retrieved. Can be Username, Identifier, or Address. Note: The frequency of queries for Username is one query per target. The frequency of queries for Identifier is one query per chunk. This feature requires all targets have the same identifier. Note: The Username option also adds the Address parameter of the API query and assigns the target IP of the resolved host to the Address parameter. This may lead to failure to fetch credentials if the CyberArk Account Details Address field contains a value other than the target IP address. |
yes |
Username |
(If Get credential by is Username) The username of the CyberArk user to request a password from. |
no |
Safe |
The CyberArk safe the credential should be retrieved from. |
no |
Address | The option should only be used if the Address value is unique to a single CyberArk account credential. | no |
Account Name | (If Get credential by is Identifier) The unique account name or identifier assigned to the CyberArk API credential. | no |
Use SSL |
If enabled, the scanner uses SSL through IIS for secure communications. Enable this option if CyberArk is configured to support SSL through IIS. |
no |
Verify SSL Certificate |
If enabled, the scanner validates the SSL certificate. Enable this option if CyberArk is configured to support SSL through IIS and you want to validate the certificate. |
no |
Option | Description | Required |
---|---|---|
Username |
The username of the target system. |
yes |
CyberArk AIM Service URL |
The URL for the CyberArk AIM web service. By default, Tenable.io uses /AIMWebservice/v1.1/AIM.asmx. |
no |
Central Credential Provider Host |
The CyberArk Central Credential Provider IP/DNS address. |
yes |
Central Credential Provider Port |
The port on which the CyberArk Central Credential Provider is listening. |
yes |
Central Credential Provider Username |
The username of the vault, if the CyberArk Central Credential Provider is configured to use basic authentication. |
no |
Central Credential Provider Password |
The password of the vault, if the CyberArk Central Credential Provider is configured to use basic authentication. |
no |
Safe |
The safe on the CyberArk Central Credential Provider server that contained the authentication information that you want to retrieve. |
yes |
CyberArk Client Certificate | The file that contains the PEM certificate used to communicate with the CyberArk host. |
no |
CyberArk Client Certificate Private Key | The file that contains the PEM private key for the client certificate. |
no |
CyberArk Client Certificate Private Key Passphrase | The passphrase for the private key, if required. |
no |
AppId |
The AppId that has been allocated permissions on the CyberArk Central Credential Provider to retrieve the target password. |
yes |
Folder |
The folder on the CyberArk Central Credential Provider server that contains the authentication information that you want to retrieve. |
yes |
PolicyId |
The PolicyID assigned to the credentials that you want to retrieve from the CyberArk Central Credential Provider. |
no |
Use SSL |
If CyberArk Central Credential Provider is configured to support SSL through IIS check for secure communication. |
no |
Verify SSL Certificate |
If CyberArk Central Credential Provider is configured to support SSL through IIS and you want to validate the certificate check this. Refer to custom_CA.inc documentation for how to use self-signed certificates. |
no |
CyberArk Account Details Name | The unique name of the credential you want to retrieve from CyberArk. |
no |
CyberArk Address | The domain for the user account. |
no |
CyberArk elevate privileges with | The privilege escalation method you want to use to increase users' privileges after initial authentication. Your selection determines the specific options you must configure. For more information, see Privilege Escalation. |
no |
Custom password prompt | The password prompt used by the target host. Only use this setting when an interactive SSH session fails due to Tenable.io receiving an unrecognized password prompt on the target host's interactive SSH shell. |
no |

Option | Description | Required |
---|---|---|
Delinea Secret Name |
The value of the secret on the Delinea server. The secret is labeled Secret Name on the Delinea server. |
yes |
Delinea Host |
The Delinea Secret Server host to pull the secrets from. |
yes |
Delinea Port |
The Delinea Secret Server Port for API requests. By default, Tenable uses 443. |
yes |
Delinea Login Name |
The username to authenticate to the Delinea server. |
yes |
Delinea Password |
The password to authenticate to the Delinea server. This is associated with the Delinea Login Name you provided. |
yes |
Use Private Key |
If enabled, uses key-based authentication for SSH connections instead of password authentication. |
no |
Use SSL |
Enable if the Delinea Secret Server is configured to support SSL. |
no |
Verify SSL Certificate |
If enabled, verifies the SSL Certificate on the Delinea server. |
no |
Delinea elevate privileges with | The privilege escalation method you want to use to increase users' privileges after initial authentication. Multiple options for privilege escalation are supported, including su, su+sudo and sudo. Your selection determines the specific options you must configure. For more information, see Privilege Escalation. |
no |
Custom password prompt | Some devices are configured to prompt for a password with a non-standard string (for example, "secret-passcode"). This setting allows recognition of these prompts. Leave this blank for most standard password prompts. |
no |

HashiCorp Vault is a popular enterprise password vault that helps you manage privileged credentials. Tenable.io can retrieve credentials from HashiCorp Vault to use in a scan.
Option | Default Value | Required |
---|---|---|
Hashicorp Vault host |
(Required) The Hashicorp Vault IP address or DNS address. Note: If your Hashicorp Vault installation is in a subdirectory, you must include the subdirectory path. For example, type IP address or hostname/subdirectory path. |
yes |
Hashicorp Vault port |
(Required) The port on which Hashicorp Vault listens. |
yes |
Hashicorp Vault API URL | The URL Tenable.io uses to access Hashicorp Vault. | yes |
Authentication Type |
Specifies the authentication type for connecting to the instance: App Role or Certificates. If you select Certificates, additional options for Hashicorp Client Certificate and Hashicorp Client Certificate Private Key appear. Click Add File to select files for the client certificate and private key. |
yes |
Role ID |
Required if you select App Role for Authentication Type. The GUID provided by Hashicorp Vault when you configured your App Role. |
yes |
Role Secret ID |
Required if you select App Role for Authentication Type. The GUID generated by Hashicorp Vault when you configured your App Role. |
yes |
Authentication URL |
The URL Tenable.io uses to access Hashicorp Vault. |
yes |
Namespace | The name of a specified team in a multi-team environment. For more information about multi-team environments, see the Hashicorp documentation. | no |
KV Engine URL | The URL Tenable.io uses to access the Hashicorp Vault secrets engine. | yes |
Username Source |
Specifies if the username is input manually or pulled from Hashicorp Vault. |
yes |
Username Key |
The name in Hashicorp Vault that usernames are stored under. |
yes |
Password Key | The key in Hashicorp Vault that passwords are stored under. | yes |
Secret Name | The key secret you want to retrieve values for. | yes |
Use SSL | When enabled, Tenable.io uses SSL through IIS for secure communications. You must configure SSL through IIS in Hashicorp Vault before enabling this option. | no |
Verify SSL | When enabled, Tenable.io validates the SSL certificate. You must configure SSL through IIS in Hashicorp Vault before enabling this option. | no |

Kerberos, developed by MIT’s Project Athena, is a client/server application that uses a symmetric key encryption protocol. In symmetric encryption, the key used to encrypt the data is the same as the key used to decrypt the data. Organizations deploy a KDC (Key Distribution Center) that contains all users and services that require Kerberos authentication. Users authenticate to Kerberos by requesting a TGT (Ticket Granting Ticket). Once a user is granted a TGT, it can be used to request service tickets from the KDC to be able to utilize other Kerberos based services. Kerberos uses the CBC (Cipher Block Chain) DES encryption protocol to encrypt all communications.
Note: You must already have a Kerberos environment established to use this method of authentication.
The Tenable.io implementation of Unix-based Kerberos authentication for SSH supports the aes-cbc and aes-ctr encryption algorithms. An overview of how Tenable.io interacts with Kerberos is as follows:
- The end-user gives the IP of the KDC.
- The nessusd asks sshd if it supports Kerberos authentication.
- The sshd says yes.
- The nessusd requests a Kerberos TGT, along with login and password.
- Kerberos sends a ticket back to nessusd.
- The nessusd gives the ticket to sshd.
- The nessusd is logged in.
In both Windows and SSH credentials settings, you can specify credentials using Kerberos keys from a remote system. Note that there are differences in the configurations for Windows and SSH.
Option | Description | Required |
---|---|---|
Username |
The username of the target system. |
yes |
Password |
The password of the username specified. |
yes |
Key Distribution Center (KDC) |
This host supplies the session tickets for the user. |
yes |
KDC Port |
Directs Tenable.io to connect to the KDC if it is running on a port other than 88. |
no |
KDC Transport |
The method by which you want to access the KDC server. Note: if you set KDC Transport to UDP, you may also need to change the port number, because depending on the implementation, the KDC UDP protocol uses either port 88 or 750 by default. |
no |
Realm |
The authentication domain, usually noted as the domain name of the target (for example, example.com). |
yes |
Elevate privileges with | The privilege escalation method you want to use to increase users' privileges after initial authentication. Your selection determines the specific options you must configure. For more information, see Privilege Escalation. | no |
If Kerberos is used, sshd must be configured with Kerberos support to verify the ticket with the KDC. Reverse DNS lookups must be properly configured for this to work. The Kerberos interaction method must be gssapi-with-mic.

Option | Description | Required |
---|---|---|
Username |
The username of the target system. |
yes |
Password |
The password of the username specified. |
yes |
Elevate privileges with | The privilege escalation method you want to use to increase users' privileges after initial authentication. Your selection determines the specific options you must configure. For more information, see Privilege Escalation. |
no |
Custom password prompt |
The password prompt used by the target host. Only use this setting when an interactive SSH session fails due to Tenable.io receiving an unrecognized password prompt on the target host's interactive SSH shell. |
no |

Lieberman is a popular enterprise password vault that helps you manage privileged credentials. Tenable.io can get credentials from Lieberman to use in a scan.
Option | Description | Required |
---|---|---|
Username | The target system’s username. |
yes |
Lieberman host |
The Lieberman IP/DNS address. Note: If your Lieberman installation is in a subdirectory, you must include the subdirectory path. For example, type IP address or hostname / subdirectory path. |
yes |
Lieberman port | The port on which Lieberman listens. |
yes |
Lieberman API URL | The URL Tenable.io uses to access Lieberman. | no |
Lieberman user | The Lieberman explicit user for authenticating to the Lieberman RED API. |
yes |
Lieberman password | The password for the Lieberman explicit user. |
yes |
Lieberman Authenticator |
The alias used for the authenticator in Lieberman. The name should match the name used in Lieberman. Note: If you use this option, append a domain to the Lieberman user option, i.e., domain\user. |
no |
Lieberman Client Certificate |
The file that contains the PEM certificate used to communicate with the Lieberman host. Note: If you use this option, you do not have to enter information in the Lieberman user, Lieberman password, and Lieberman Authenticator fields. |
no |
Lieberman Client Certificate Private Key | The file that contains the PEM private key for the client certificate. | no |
Lieberman Client Certificate Private Key Passphrase | The passphrase for the private key, if required. | no |
Use SSL |
If Lieberman is configured to support SSL through IIS, check for secure communication. |
no |
Verify SSL Certificate |
If Lieberman is configured to support SSL through IIS and you want to validate the certificate, check this option. Refer to Custom CA documentation for how to use self-signed certificates. |
no |
System Name | In the rare case your organization uses one default Lieberman entry for all managed systems, enter the default entry name. |
no |
Custom password prompt | The password prompt used by the target host. Only use this setting when an interactive SSH session fails due to Tenable.io receiving an unrecognized password prompt on the target host's interactive SSH shell. |
no |

Option | Description | Required |
---|---|---|
Username |
The username to authenticate via SSH to the system. |
yes |
Thycotic Secret Name |
The value of the secret on the Thycotic server. The secret is labeled Secret Name on the Thycotic server. |
yes |
Thycotic Secret Server URL |
The transfer method, target , and target directory for the scanner. You can find this value on the Thycotic server in Admin > Configuration > Application Settings > Secret Server URL. For example, consider the following address:
|
yes |
Thycotic Login Name |
The username to authenticate to the Thycotic server. |
yes |
Thycotic Password |
The password to authenticate to the Thycotic server. |
yes |
Thycotic Organization |
The organization you want to query. You can use this value for cloud instances of Thycotic. |
no |
Thycotic Domain |
The domain of the Thycotic server. |
no |
Use Private Key |
The key for the SSH connection, if you do not use a password. |
no |
Verify SSL Certificate |
Whether you want to verify if the SSL Certificate on the server is signed by a trusted CA. |
no |
Thycotic elevate privileges with | The privilege escalation method you want to use to increase users' privileges after initial authentication. Multiple options for privilege escalation are supported, including su, su+sudo and sudo. Your selection determines the specific options you must configure. For more information, see Privilege Escalation. |
no |
Custom password prompt | The password prompt used by the target host. Only use this setting when an interactive SSH session fails due to Tenable.io receiving an unrecognized password prompt on the target host's interactive SSH shell. |
no |

Option | Description | Required |
---|---|---|
Username |
The username to log in to the hosts you want to scan. |
yes |
BeyondTrust host |
The BeyondTrust IP address or DNS address. |
yes |
BeyondTrust port |
The port on which BeyondTrust listens. |
yes |
BeyondTrust API user |
The API user provided by BeyondTrust. |
yes |
BeyondTrust API key |
The API key provided by BeyondTrust. |
yes |
Checkout duration |
The length of time, in minutes, that you want to keep credentials checked out in BeyondTrust. Configure the Checkout duration to exceed the typical duration of your Tenable.io scans. If a password from a previous scan is still checked out when a new scan begins, the new scan fails. Note: Configure the password change interval in BeyondTrust so that password changes do not disrupt your Tenable.io scans. If BeyondTrust changes a password during a scan, the scan fails. |
yes |
Use SSL |
When enabled, Tenable.io uses SSL through IIS for secure communications. You must configure SSL through IIS in BeyondTrust before enabling this option. |
no |
Verify SSL certificate |
When enabled, Tenable.io validates the SSL certificate. You must configure SSL through IIS in BeyondTrust before enabling this option. |
no |
Use private key |
When enabled, Tenable.io uses private key-based authentication for SSH connections instead of password authentication. If it fails, the password is requested. |
no |
Use privilege escalation |
When enabled, BeyondTrust uses the configured privilege escalation command. If it returns something, it will use it for the scan. |
no |
Custom password prompt | The password prompt used by the target host. Only use this setting when an interactive SSH session fails due to Tenable.io receiving an unrecognized password prompt on the target host's interactive SSH shell. |
no |

These settings apply to all SSH-type credentials in the current scan. You can edit these settings in any instance of the credential type in the current scan; your changes automatically apply to the other credentials of that type in the scan.
Option | Default Value | Description |
---|---|---|
known_hosts file |
None |
If you upload an SSH known_hosts file, Tenable.io only attempts to log in to hosts in this file. This can ensure that the same username and password you are using to audit your known SSH servers is not used to attempt a log into a system that may not be under your control. |
Preferred port |
22 |
The port on which SSH is running on the target system. |
Client version |
OpenSSH_5.0 |
The type of SSH client Tenable.io impersonates while scanning. |
Attempt least privilege |
Cleared |
Enables or disables dynamic privilege escalation. When enabled, Tenable.io attempts to run the scan with an account with lesser privileges, even if the Elevate privileges with option is enabled. If a command fails, Tenable.io escalates privileges. Plugins 101975 and 101976 report which plugins ran with or without escalated privileges. Note: Enabling this option may increase scan run time by up to 30%. |

Option | Description |
---|---|
Centrify Host |
(Required) The Centrify IP address or DNS address. Note: If your Centrify installation is in a subdirectory, you must include the subdirectory path. For example, type IP address or hostname/subdirectory path. |
Centrify Port | (Required) The port on which Centrify listens. By default, Tenable.io uses port 443. |
API User | (Required) The API user provided by Centrify. |
API Key | (Required) The API key provided by Centrify. |
Tenant | (Required) The Centrify tenant associated with the API. By default, Tenable.io uses centrify. |
Authentication URL | (Required) The URL Tenable.io uses to access Centrify. By default, Tenable.io uses /Security. |
Password Query URL | (Required) The URL Tenable.io uses to query the passwords in Centrify. By default, Tenable.sc uses /RedRock. |
Password Engine URL |
(Required) The URL Tenable.io uses to access the passwords in Centrify. By default, Tenable.io uses /ServerManage. |
Username | (Required) The username to log in to the hosts you want to scan. |
Checkout Duration |
(Required) The length of time, in minutes, that you want to keep credentials checked out in Centrify. Configure the Checkout Duration to exceed the typical duration of your Tenable.sc scans so that password changes do not disrupt your Tenable.io scans. If Centrify changes a password during a scan, the scan fails. If a password from a previous scan is still checked out when a new scan begins, the new scan fails. |
Use SSL | When enabled, Tenable.io uses SSL through IIS for secure communications. You must configure SSL through IIS in Centrify before enabling this option. |
Verify SSL Certificate | When enabled, Tenable.io validates the SSL certificate. You must configure SSL through IIS in Centrify before enabling this option. |

Option | Description |
---|---|
Arcon Host |
(Required) The Arcon IP address or DNS address. Note: If your Arcon installation is in a subdirectory, you must include the subdirectory path. For example, type IP address or hostname/subdirectory path. |
Arcon Port | (Required) The port on which Arcon listens. By default, Tenable.io uses port |
API User | (Required) The API user provided by Arcon. |
API Key | (Required) The API key provided by Arcon. |
Authentication URL | (Required) The URL Tenable.io uses to access Arcon. |
Password Engine URL |
(Required) The URL Tenable.io uses to access the passwords in Arcon. |
Username | (Required) The username to log in to the hosts you want to scan. |
Checkout Duration |
(Required) The length of time, in minutes, that you want to keep credentials checked out in Arcon. Configure the Checkout Duration to exceed the typical duration of your Tenable.io scans. If a password from a previous scan is still checked out when a new scan begins, the new scan fails. Tip: Configure the password change interval in Arcon so that password changes do not disrupt your Tenable.io scans. If Arcon changes a password during a scan, the scan fails. |
Use SSL | When enabled, Tenable.io uses SSL through IIS for secure communications. You must configure SSL through IIS in Arcon before enabling this option. |
Verify SSL Certificate | When enabled, Tenable.io validates the SSL certificate. You must configure SSL through IIS in Arcon before enabling this option. |
Note: Non-privileged users with local access on Unix systems can determine basic security issues, such as patch levels or entries in the /etc/passwd file. For more comprehensive information, such as system configuration data or file permissions across the entire system, an account with root privileges is required.
Click Windows in the Credentials list to configure settings for the Windows-based authentication methods described below.

CyberArk is a popular enterprise password vault that helps you manage privileged credentials. Tenable.io can get credentials from CyberArk to use in a scan.
Option | Description | Required |
---|---|---|
CyberArk Host |
The IP address or FQDN name for the CyberArk AIM Web Service. This can be the host, or the host with a custom URL added on in a single string. |
yes |
Port |
The port on which the CyberArk API communicates. By default, Tenable uses 443. |
yes |
AppID |
The Application ID associated with the CyberArk API connection. |
yes |
Client Certificate | The file that contains the PEM certificate used to communicate with the CyberArk host. |
no |
Client Certificate Private Key | The file that contains the PEM private key for the client certificate. |
yes, if private key is applied |
Client Certificate Private Key Passphrase | The passphrase for the private key, if required. |
yes, if private key is applied |
Kerberos Target Authentication |
If enabled, Kerberos authentication is used to log in to the specified Linux or Unix target. |
no |
Key Distribution Center (KDC) |
(Required if Kerberos Target Authentication is enabled.) This host supplies the session tickets for the user. |
yes |
KDC Port |
The port on which the Kerberos authentication API communicates. By default, Tenable uses 88. |
no |
KDC Transport |
The KDC uses TCP by default in Linux implementations. For UDP, change this option. If you need to change the KDC Transport value, you may also need to change the port as the KDC UDP uses either port 88 or 750 by default, depending on the implementation. |
no |
Get credential by |
The method with which your CyberArk API credentials are retrieved. Can be Username, Identifier, or Address. Note: The frequency of queries for Username is one query per target. The frequency of queries for Identifier is one query per chunk. This feature requires all targets have the same identifier. Note: The Username option also adds the Address parameter of the API query and assigns the target IP of the resolved host to the Address parameter. This may lead to failure to fetch credentials if the CyberArk Account Details Address field contains a value other than the target IP address. |
yes |
Username |
(If Get credential by is Username) The username of the CyberArk user to request a password from. |
no |
Safe |
The CyberArk safe the credential should be retrieved from. |
no |
Address | The option should only be used if the Address value is unique to a single CyberArk account credential. | no |
Account Name | (If Get credential by is Identifier) The unique account name or identifier assigned to the CyberArk API credential. | no |
Use SSL |
If enabled, the scanner uses SSL through IIS for secure communications. Enable this option if CyberArk is configured to support SSL through IIS. |
no |
Verify SSL Certificate |
If enabled, the scanner validates the SSL certificate. Enable this option if CyberArk is configured to support SSL through IIS and you want to validate the certificate. |
no |
Option | Description | Required |
---|---|---|
Username |
The username of the target system. |
yes |
CyberArk AIM Service URL | The URL for the CyberArk AIM web service. By default, Tenable.io uses /AIMWebservice/v1.1/AIM.asmx. |
no |
Domain |
The domain to which the username belongs. |
no |
Central Credential Provider Host |
The CyberArk Central Credential Provider IP/DNS address. |
yes |
Central Credential Provider Port |
The port on which the CyberArk Central Credential Provider is listening. |
yes |
Central Credential Provider Username |
The username of the vault, if the CyberArk Central Credential Provider is configured to use basic authentication. |
no |
Central Credential Provider Password |
The password of the vault, if the CyberArk Central Credential Provider is configured to use basic authentication. |
no |
Safe |
The safe on the CyberArk Central Credential Provider server that contained the authentication information that you want to retrieve. |
yes |
CyberArk Client Certificate | The file that contains the PEM certificate used to communicate with the CyberArk host. |
no |
CyberArk Client Certificate Private Key | The file that contains the PEM private key for the client certificate. |
no |
CyberArk Client Certificate Private Key Passphrase | The passphrase for the private key, if required. |
no |
AppId |
The AppId that has been allocated permissions on the CyberArk Central Credential Provider to retrieve the target password. |
yes |
Folder |
The folder on the CyberArk Central Credential Provider server that contains the authentication information that you want to retrieve. |
yes |
PolicyId |
The PolicyID assigned to the credentials that you want to retrieve from the CyberArk Central Credential Provider. |
no |
Use SSL |
If CyberArk Central Credential Provider is configured to support SSL through IIS check for secure communication. |
no |
Verify SSL Certificate |
If CyberArk Central Credential Provider is configured to support SSL through IIS and you want to validate the certificate check this. Refer to custom_CA.inc documentation for how to use self-signed certificates. |
no |
CyberArk Account Details Name | The unique name of the credential you want to retrieve from CyberArk. |
no |

HashiCorp Vault is a popular enterprise password vault that helps you manage privileged credentials. Tenable.io can retrieve credentials from HashiCorp Vault to use in a scan.
Option | Default Value | Required |
---|---|---|
Hashicorp Vault host |
(Required) The Hashicorp Vault IP address or DNS address. Note: If your Hashicorp Vault installation is in a subdirectory, you must include the subdirectory path. For example, type IP address or hostname/subdirectory path. |
yes |
Hashicorp Vault port |
The port on which Hashicorp Vault listens. |
yes |
Authenticaton Type |
Specifies the authentication type for connecting to the instance: App Role or Certificates. If you select Certificates, additional options for Hashicorp Client Certificate and Hashicorp Client Certificate Private Key appear. Click Add File to select files for the client certificate and private key. |
yes |
Role ID |
Required if you select App Role for Authentication Type. The GUID provided by Hashicorp Vault when you configured your App Role. |
yes |
Role Secret ID | Required if you select App Role for Authentication Type. The GUID generated by Hashicorp Vault when you configured your App Role. | yes |
Authentication URL | The URL Tenable.io uses to access Hashicorp Vault. | yes |
Namespace |
The name of a specified team in a multi-team environment. For more information about multi-team environments, see the Hashicorp documentation. |
no |
KV Engine URL |
The URL Tenable.io uses to access the Hashicorp Vault secrets engine. |
yes |
Username Source | Specifies if the username is input manually or pulled from Hashicorp Vault. | yes |
Username Key | The name in Hashicorp Vault that usernames are stored under. | yes |
Password Key | The key in Hashicorp Vault that passwords are stored under. | yes |
Secret Name | (Required) The key secret you want to retrieve values for. | yes |
Use SSL | When enabled, Tenable.io uses SSL through IIS for secure communications. You must configure SSL through IIS in Hashicorp Vault before enabling this option. | no |
Verify SSL | When enabled, Tenable.io validates the SSL certificate. You must configure SSL through IIS in Hashicorp Vault before enabling this option. | no |

Option | Default | Description | Required |
---|---|---|---|
Username |
None |
The username on the target system. |
yes |
Password |
None |
The user password on the target system. |
yes |
Key Distribution Center (KDC) |
None |
The host that supplies the session tickets for the user. |
yes |
KDC Port |
88 |
Directs Tenable.io to connect to the KDC if it is running on a port other than 88. |
no |
KDC Transport |
TCP |
The method by which you want to access the KDC server. Note: if you set KDC Transport to UDP, you may also need to change the port number, because depending on the implementation, the KDC UDP protocol uses either port 88 or 750 by default. |
no |
Domain |
None |
The Windows domain that the KDC administers. |
yes |

Lieberman is a popular enterprise password vault that helps you manage privileged credentials. Tenable.io can get credentials from Lieberman to use in a scan.
Option | Description | Required |
---|---|---|
Username | The target system’s username. |
yes |
Domain | The domain, if the username is part of a domain. |
no |
Lieberman host |
The Lieberman IP/DNS address. Note: If your Lieberman installation is in a subdirectory, you must include the subdirectory path. For example, type IP address or hostname / subdirectory path. |
yes |
Lieberman port | The port on which Lieberman listens. |
yes |
Lieberman API URL | The URL Tenable.io uses to access Lieberman. | no |
Lieberman user | The Lieberman explicit user for authenticating to the Lieberman RED API. |
yes |
Lieberman password | The password for the Lieberman explicit user. |
yes |
Lieberman Authenticator |
The alias used for the authenticator in Lieberman. The name should match the name used in Lieberman. Note: If you use this option, append a domain to the Lieberman user option, i.e., domain\user. |
no |
Lieberman Client Certificate |
The file that contains the PEM certificate used to communicate with the Lieberman host. Note: If you use this option, you do not have to enter information in the Lieberman user, Lieberman password, and Lieberman Authenticator fields. |
no |
Lieberman Client Certificate Private Key | The file that contains the PEM private key for the client certificate. | no |
Lieberman Client Certificate Private Key Passphrase | The passphrase for the private key, if required. | no |
Use SSL |
If Lieberman is configured to support SSL through IIS, check for secure communication. |
no |
Verify SSL Certificate |
If Lieberman is configured to support SSL through IIS and you want to validate the certificate, check this. Refer to custom_CA.inc documentation for how to use self-signed certificates. |
no |
System Name | In the rare case your organization uses one default Lieberman entry for all managed systems, enter the default entry name. |
no |

The Lanman authentication method was prevalent on Windows NT and early Windows 2000 server deployments. It is retained for backward compatibility.
Option | Description | Required |
---|---|---|
Username |
The username on the target system. |
yes |
Hash |
The hash you want to use. |
yes |
Domain |
The Windows domain to which the username belongs. |
no |

Option | Description | Required |
---|---|---|
Username |
The username on the target system. |
yes |
Hash |
The hash you want to use. |
yes |
Domain |
The Windows domain to which the username belongs. |
no |

Option | Description | Required |
---|---|---|
Username |
The username on the target system. |
yes |
Password |
The user password on the target system. |
yes |
Domain |
The Windows domain to which the username belongs. |
no |

Option | Description | Required |
---|---|---|
Username |
The username to authenticate via SSH to the system. |
yes |
Domain |
The domain to which the username belongs. |
no |
Thycotic Secret Name |
The value of the secret on the Thycotic server. The secret is labeled Secret Name on the Thycotic server. |
yes |
Thycotic Secret Server URL |
The transfer method, target , and target directory for the scanner. You can find this value on the Thycotic server in Admin > Configuration > Application Settings > Secret Server URL. For example, consider the following address:
|
yes |
Thycotic Login Name |
The username to authenticate to the Thycotic server. |
yes |
Thycotic Password |
The password to authenticate to the Thycotic server. |
yes |
Thycotic Organization |
The organization you want to query. You can use this value for cloud instances of Thycotic. |
no |
Thycotic Domain |
The domain of the Thycotic server. |
no |
Verify SSL Certificate |
Whether you want to verify if the SSL Certificate on the server is signed by a trusted CA. |
no |

Option | Description | Required |
---|---|---|
Username |
The username to log in to the hosts you want to scan. |
yes |
Domain | The domain of the username, if required by BeyondTrust. |
no |
BeyondTrust host |
The BeyondTrust IP address or DNS address. |
yes |
BeyondTrust port |
The port on which BeyondTrust listens. |
yes |
BeyondTrust API user | The API user provided by BeyondTrust. |
yes |
BeyondTrust API key |
The API key provided by BeyondTrust. |
yes |
Checkout duration |
The length of time, in minutes, that you want to keep credentials checked out in BeyondTrust. Configure the Checkout duration to exceed the typical duration of your Tenable.io scans. If a password from a previous scan is still checked out when a new scan begins, the new scan fails. Note: Configure the password change interval in BeyondTrust so that password changes do not disrupt your Tenable.io scans. If BeyondTrust changes a password during a scan, the scan fails. |
yes |
Use SSL |
When enabled, Tenable.io uses SSL through IIS for secure communications. You must configure SSL through IIS in BeyondTrust before enabling this option. |
no |
Verify SSL certificate |
When enabled, Tenable.io validates the SSL certificate. You must configure SSL through IIS in BeyondTrust before enabling this option. |
no |

These settings apply to all Windows-type credentials in the current scan. You can edit these settings in any instance of the credential type in the current scan; your changes automatically apply to the other credentials of that type in the scan.
Option | Default | Description |
---|---|---|
Never send credentials in the clear |
Enabled |
By default, for security reasons, this option is enabled. |
Do not use NTLMv1 authentication |
Enabled |
If the Do not use NTLMv1 authentication option is disabled, then it is theoretically possible to trick Tenable.io into attempting to log into a Windows server with domain credentials via the NTLM version 1 protocol. This provides the remote attacker with the ability to use a hash obtained from Tenable.io. This hash can be potentially cracked to reveal a username or password. It may also be used to directly log into other servers. Force Tenable.io to use NTLMv2 by enabling the Only use NTLMv2 setting at scan time. This prevents a hostile Windows server from using NTLM and receiving a hash. Because NTLMv1 is an insecure protocol, this option is enabled by default. |
Start the Remote Registry service during the scan |
Disabled |
This option tells Tenable.io to start the Remote Registry service on computers being scanned if it is not running. This service must be running in order for Tenable.io to execute some Windows local check plugins. |
Enable administrative shares during the scan |
Disabled |
This option allows Tenable.io to access certain registry entries that can be read with administrator privileges. |
Start the Server service during the scan | Disabled |
When enabled, the scanner temporarily enables the Windows Server service, which allows the computer to share files and other devices on a network. The service is disabled after the scan completes. By default, Windows systems have the Windows Server service enabled, which means you do not need to enable this setting. However, if you disable the Windows Server service in your environment, and want to scan using SMB credentials, you must enable this setting so that the scanner can access files remotely. |

Option | Description |
---|---|
Centrify Host |
(Required) The Centrify IP address or DNS address. Note: If your Centrify installation is in a subdirectory, you must include the subdirectory path. For example, type IP address or hostname/subdirectory path. |
Centrify Port | (Required) The port on which Centrify listens. By default, Tenable.io uses port 443. |
API User | (Required) The API user provided by Centrify. |
API Key | (Required) The API key provided by Centrify. |
Tenant | (Required) The Centrify tenant associated with the API. By default, Tenable.io uses centrify. |
Authentication URL | (Required) The URL Tenable.io uses to access Centrify. By default, Tenable.io uses /Security. |
Password Query URL | (Required) The URL Tenable.io uses to query the passwords in Centrify. By default, Tenable.sc uses /RedRock. |
Password Engine URL |
(Required) The URL Tenable.io uses to access the passwords in Centrify. By default, Tenable.io uses /ServerManage. |
Username | (Required) The username to log in to the hosts you want to scan. |
Checkout Duration |
(Required) The length of time, in minutes, that you want to keep credentials checked out in Centrify. Configure the Checkout Duration to exceed the typical duration of your Tenable.sc scans so that password changes do not disrupt your Tenable.io scans. If Centrify changes a password during a scan, the scan fails. If a password from a previous scan is still checked out when a new scan begins, the new scan fails. |
Use SSL | When enabled, Tenable.io uses SSL through IIS for secure communications. You must configure SSL through IIS in Centrify before enabling this option. |
Verify SSL Certificate | When enabled, Tenable.io validates the SSL certificate. You must configure SSL through IIS in Centrify before enabling this option. |

Option | Description |
---|---|
Arcon Host |
(Required) The Arcon IP address or DNS address. Note: If your Arcon installation is in a subdirectory, you must include the subdirectory path. For example, type IP address or hostname/subdirectory path. |
Arcon Port | (Required) The port on which Arcon listens. By default, Tenable.io uses port |
API User | (Required) The API user provided by Arcon. |
API Key | (Required) The API key provided by Arcon. |
Authentication URL | (Required) The URL Tenable.io uses to access Arcon. |
Password Engine URL |
(Required) The URL Tenable.io uses to access the passwords in Arcon. |
Username | (Required) The username to log in to the hosts you want to scan. |
Checkout Duration |
(Required) The length of time, in minutes, that you want to keep credentials checked out in Arcon. Configure the Checkout Duration to exceed the typical duration of your Tenable.io scans. If a password from a previous scan is still checked out when a new scan begins, the new scan fails. Tip: Configure the password change interval in Arcon so that password changes do not disrupt your Tenable.io scans. If Arcon changes a password during a scan, the scan fails. |
Use SSL | When enabled, Tenable.io uses SSL through IIS for secure communications. You must configure SSL through IIS in Arcon before enabling this option. |
Verify SSL Certificate | When enabled, Tenable.io validates the SSL certificate. You must configure SSL through IIS in Arcon before enabling this option. |
Windows Authentication Considerations
Regarding the authentication methods:
- Tenable.io automatically uses SMB signing if it is required by the remote Windows server. SMB signing is a cryptographic checksum applied to all SMB traffic to and from a Windows server. Many system administrators enable this feature on their servers to ensure that remote users are 100% authenticated and part of a domain. In addition, make sure you enforce a policy that mandates the use of strong passwords that cannot be easily broken via dictionary attacks from tools like John the Ripper and L0phtCrack. Note that there have been many different types of attacks against Windows security to illicit hashes from computers for re-use in attacking servers. SMB Signing adds a layer of security to prevent these man-in-the-middle attacks.
- The SPNEGO (Simple and Protected Negotiate) protocol provides Single Sign On (SSO) capability from a Windows client to a variety of protected resources via the users’ Windows login credentials. Tenable.io supports use of SPNEGO Scans and Policies: Scans 54 of 151 with either NTLMSSP with LMv2 authentication or Kerberos and RC4 encryption. SPNEGO authentication happens through NTLM or Kerberos authentication; nothing needs to be set in the Tenable.io scan configuration.
- If an extended security scheme (such as Kerberos or SPNEGO) is not supported or fails, Tenable.io attempts to log in via NTLMSSP/LMv2 authentication. If that fails, Tenable.io then attempts to log in using NTLM authentication.
- Tenable.io also supports the use of Kerberos authentication in a Windows domain. To configure this, the IP address of the Kerberos Domain Controller (actually, the IP address of the Windows Active Directory Server) must be provided.
Server Message Block (SMB) is a file-sharing protocol that allows computers to share information across the network. Providing this information to Tenable.io allows it to find local information from a remote Windows host. For example, using credentials enables Tenable.io to determine if important security patches have been applied. It is not necessary to modify other SMB parameters from default settings.
The SMB domain field is optional and Tenable.io is able to log on with domain credentials without this field. The username, password, and optional domain refer to an account that the target machine is aware of. For example, given a username of joesmith and a password of my4x4mpl3, a Windows server first looks for this username in the local system’s list of users, and then determines if it is part of a domain.
Regardless of credentials used, Tenable.io always attempts to log into a Windows server with the following combinations:
- Administrator without a password
- A random username and password to test Guest accounts
- No username or password to test null sessions
The actual domain name is only required if an account name is different on the domain from that on the computer. It is entirely possible to have an Administrator account on a Windows server and within the domain. In this case, to log onto the local server, the username of Administrator is used with the password of that account. To log onto the domain, the Administrator username is also used, but with the domain password and the name of the domain.
When multiple SMB accounts are configured, Tenable.io attempts to log in with the supplied credentials sequentially. Once Tenable.io is able to authenticate with a set of credentials, it checks subsequent credentials supplied, but only uses them if administrative privileges are granted when previous accounts provided user access.
Some versions of Windows allow you to create a new account and designate it as an administrator. These accounts are not always suitable for performing credentialed scans. Tenable recommends that the original administrative account, named Administrator be used for credentialed scanning to ensure full access is permitted. On some versions of Windows, this account may be hidden. To unhide the real administrator account, open a DOS prompt with administrative privileges and run the following command:
C:\> net user administrator /active:yes
If an SMB account is created with limited administrator privileges, Tenable.io can easily and securely scan multiple domains. Tenable recommends that network administrators create specific domain accounts to facilitate testing. Tenable.io includes a variety of security checks for Windows Vista, Windows 7, Windows 8, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, and Windows Server 2012 R2 that are more accurate if a domain account is provided. Tenable.io does attempt to try several checks in most cases if no account is provided.
Note: The Windows Remote Registry service allows remote computers with credentials to access the registry of the computer being audited. If the service is not running, reading keys and values from the registry is not possible, even with full credentials. This service must be started for a Tenable.io credentialed scan to fully audit a system using credentials.
For more information, see the Tenable blog post Dynamic Remote Registry Auditing - Now you see it, now you don’t!
Credentialed scans on Windows systems require that a full administrator level account be used. Several bulletins and software updates by Microsoft have made reading the registry to determine software patch level unreliable without administrator privileges, but not all of them. Tenable.io plugins check that the provided credentials have full administrative access to ensure the plugins execute properly. For example, full administrative access is required to perform direct reading of the file system. This allows Tenable.io to attach to a computer and perform direct file analysis to determine the true patch level of the systems being evaluated.