AppResponse 11 Security Overview
General Overview/Introduction To Security For AppResponse 11
This document describes a set of recommended practices for securing your AppResponse 11 system against unauthorized access. Practices for physical appliances, VM-hosted systems, and cloud-based systems are covered.
In this document, the term “system” refers to any instance of AppResponse 11 (physical hardware, VM-hosted, or cloud-based), while “appliance” refers exclusively to a physical AppResponse 11 hardware unit, including dedicated Storage Units. The supported AppResponse 11 appliances are:
◼ AppResponse 1200, 2200, 3300, 3800, 4300, 5100, and 6000 Appliances
◼ AppResponse xx70 Appliances
◼ AppResponse xx80 Appliances
◼ Storage Units: SCAN-SU-4, SCAN-SU-10, SCAN-SU-48T, SCAN-SU-72T, and EXP-300
Simple Generic Security Practices
This section describes the simplest measures you can take to secure your AppResponse 11 system, before you begin changing the system’s configuration. Configuration changes that block sophisticated attempts to access the system remotely are imperative, but are rendered superfluous if it’s possible for an unauthorized person to walk up to an appliance and connect to its console port, or if an outdated web browser with a security flaw furnishes a non-obvious attack vector.
Restrict Physical Access To An Appliance
When using an AppResponse 11 appliance, make certain to install it in a secure location to which it is possible to restrict physical access to authorized personnel only. Restricting physical access to the appliance reduces the likelihood of forms of tampering such as unauthorized connection to a hardware interface, removing hard disks, and unscheduled reboots.
Restrict Network Access To A System
If your network management tools support the practice, define a network policy that allows access to the AppResponse 11 system only from specific IP addresses and subnets, and denies any access to all others. In this way, you can restrict the visibility and availability of the AppResponse 11 system’s dashboards and configuration exclusively to users of explicitly allowed subnets.
Warn Against Unauthorized Access
Use the Administration > Authentication page in the AppResponse 11 web UI to define a login banner message that warns users against unauthorized access to the system. This will display a message as each user logs in, formally notifying them of any conditions or requirements associated with their use of the system, as well as any penalties for unauthorized access or deliberate misuse. No default login banner is provided; if you wish to use one, you must define it explicitly.
Other Best Practices
The following practices furnish additional simple safeguards against unauthorized access:
◼ Change the web session inactivity timeout: By default, the session inactivity timeout is enabled and set for 60 minutes. Use the Web Session Inactivity Settings on the Administration > Authentication page in the AppResponse 11 web UI to specify a time interval (in minutes) after which a user’s web session will be logged out automatically if it has been idle for that long. A logged out user will need to re-enter their username and password to resume the web session.
◼ Enable screen locking on client devices: Client devices used to access an AppResponse 11 system should have screen locking enabled, preventing use after a configured period of inactivity. Unlocking the screen should be subject to successful entry of a non-default password.
◼ Install software/security updates when they’re available: In general, install software and security updates for AppResponse 11, as well as for your client devices, as soon as they become available. This includes the client’s operating system and web browsers. Software updates often include security enhancements, and staying up to date with the latest available software, both for AppResponse 11 and client devices, can prevent unauthorized access via subtle or seemingly unrelated vulnerabilities.
Preventing Intrusion Via The Network
After you’ve addressed the simplest, least sophisticated ways your AppResponse 11 system can be compromised, you’re ready to begin changing its configuration to secure it against more sophisticated attempts at unauthorized access over the network.
HTTP access to AppResponse 11 is disabled by default. You can enable it using the web UI at Administration > System Settings: General, in the Web Server Settings tab.
SSH access to AppResponse 11 is enabled by default. You can disable it using the no sshd enable CLI command. SSH can be re-enabled using the sshd enable CLI command.
AppResponse 11 does not enable you to restrict SSH, web UI, or REST access by IP address.
If you lock down your network on a port-by-port basis, ensure that the following ports are open between AppResponse 11 and other systems it must communicate with:
◼ TCP/22 – (SSH) Command Line Interface.
◼ TCP/25 – (SMTP) Email. By default, AppResponse 11 contacts an SNMP server at port 25. This can be changed in the web UI at Administration > System Settings: General, in the Email tab.
◼ TCP/443 – (HTTPS) By default, AppResponse 11 uses port 443 for HTTPS. This can be changed in the web UI at Administration > System Settings: General, in the Web Server Settings tab. This includes:
◼ AppResponse 11 web UI and control from SteelCentral Packet Analyzer Plus.
◼ SteelCentral NetProfiler contacts AppResponse 11.
◼ SteelCentral Portal contacts AppResponse 11.
◼ ServiceNow integration: The ServiceNow URL is user-configured, typically, TCP/443. Configure a ServiceNow recipient in the web UI at Definitions > Recipients.
◼ TCP/41017 – AppResponse 11 contacts SteelCentral NetProfiler. AppResponse 11 exports flow records directly to a NetProfiler Base module, AN module, Dispatcher module, or a Flow Gateway on this port. Exporting flow records from AppResponse 11 to NetProfiler via a Flow Gateway is considered best practice to take advantage of regionalized Flow Gateways and deduplication.
◼ TCP – (SAML) AppResponse 11 contacts a SAML authentication server on the HTTPS port specified in the IDP metadata used to configure SAML on AppResponse 11. Configure SAML in the web UI at Administration > Account Management: Authentication, in the SAML 2.0 tab.
◼ UDP/123 – (NTP) Time synchronization.
◼ UDP/161 – (SNMP) AppResponse 11 listens for MIBs.
◼ UDP – (SNMP) Configure an SNMP trap recipient in the web UI at Definitions > Recipients, specifying the appropriate UDP port for that listener.
◼ UDP/319 and 320 – (PTP) Time synchronization.
◼ UDP/514 – (Syslog) By default, AppResponse 11 contacts a Syslog server at port 514. This can be changed in the web UI at Definitions > Recipients.
◼ UDP/1812 – (RADIUS) By default, AppResponse 11 contacts a RADIUS server at port 1812. This can be changed in the web UI at Administration > Account Management: Authentication, in the RADIUS tab.
◼ UDP – (TACACS+) AppResponse 11 contacts a TACACS+ server over UDP on the port specified when configuring TACACS+ on AppResponse 11. Configure TACACS+ in the web UI at Administration > Account Management: Authentication, in the TACACS+ tab.
◼ UDP – (NetFlow export) – AppResponse 11 exports NetFlow v9 records to other flow collectors over a configurable UDP port that the flow collector listens on.
Authentication
AppResponse 11 provides robust support for controlling access by individual users.
Unless you are using SAML (single sign-on), user management is the same across HTTPS, REST, and CLI, through serial, monitor/keyboard, and SSH interfaces.
User Accounts
By default, AppResponse 11 provides a single user account and password: The user name is admin, and the default password is admin. This user account is assigned the built-in role of System Administrator, which provides the admin user account with unrestricted access to all AppResponse 11 features and data.
At a minimum, change the default password to something less obvious and more complex. The default password is provided solely to enable you to log in to the system and begin changing the configuration.
Change the default password using the web UI by opening the Administration > Account Management: User Administration page. Click the Local Users tab and edit the admin user account. When the Edit User: admin dialog appears, click Change Password. Type the old password (“admin”), then type and re-type the new password. Click Apply to make the change take effect immediately. The next time you log in with the admin account, you will need to type the new password.
Additional user accounts can be created and configured on the Administration > Account Management: User Administration page, also. You should create some user roles, first, though, as the only user role provided by default is System Administrator, which provides unrestricted (“Full Control”) access to all AppResponse 11 features and data.
Roles and Access Privileges
By default, AppResponse 11 provides a single built-in role: System Administrator, which provides unrestricted (“Full Control”) access to all AppResponse 11 features and data. To implement roles that enable access to some features (“View Only” or “Full Control”) but restrict access to others (“View Only” or “No Access”), you need to define additional user roles explicitly.
Role Based Access Control (RBAC) protects AppResponse 11 by assigning different access privileges to different user roles. User roles are then assigned to user accounts as they are created. A user's privileges on the system are determined by which roles the system administrator assigns to their account. Each user account can be assigned one or more roles.
Define user roles using the web UI at: Administration > Account Management: User Administration (Roles and Permissions tab).
A new role begins with “No Access” for each category of functionality; defining a new role is a matter of adding access (either “View Only” or “Full Control”) for specific functionality categories. Changing the access associated with a role changes access for every user account that is assigned that role.
Password Policies
By default, AppResponse 11 has no password policy defined. This means that there are no restrictions or conditions on password length, character requirements, reuse, and other related considerations. To ensure that users define adequately secure passwords, you must define a password policy explicitly. These password policies apply to local user accounts only; when remote authentication or SAML is used, that remote authentication service enforces its own password policies. Password policies affect all access methods (web UI and CLI).
Configure password policies using the web UI at: Administration > Account Management: User Administration (Password Policy tab). The controls on that page enable you to define the requirements that user-defined passwords must meet when they are created or changed. These requirements can include minimum length, minimum number of lowercase and uppercase characters, minimum number of digits, minimum number of symbol characters, minimum number of character changes, maximum number of repeated characters, restriction on including common words, and the number of previous passwords to check to prevent the reuse of old passwords. Take the time to define a prudent set of requirements that ensures that users create strong passwords that cannot be guessed easily or brute force broken.
Authentication Methods
By default, AppResponse 11 supports the use of local user accounts, which AppResponse 11 authenticates using passwords that are configured and stored on the AppResponse 11 system. AppResponse 11 supports the use of three authentication methods in addition to local user accounts: RADIUS, TACACS+, and SAML. If you use one or more of these authentication methods, you must configure them explicitly.
If you enable SAML 2.0 authentication, RADIUS, TACACS+, and local authentication all will be disabled for the web UI, and only the SAML identity provider will authenticate users.
SAML is described separately in the section that follows this one.
Access the authentication pages in the web UI at Administration > Account Management: Authentication. A tab is provided for configuring each authentication method.
Configuring Authentication Precedence
The Authentication page’s General tab provides a section titled, Authentication Types, that enables you to configure the precedence of the authentication methods you have in place.
When RADIUS and TACACS+ authentication servers are configured in AppResponse 11 you can add them to a sequence of authentication types (Local, RADIUS, or TACACS+) to be used when a user logs in. Authentication requests are made from the highest priority authentication type to the lowest. Within each authentication type, requests are made sequentially to the configured servers in the order in which they appear on the RADIUS and TACACS+ tabs. Authentication requests are made until a server accepts or rejects a request, or until the authentication types are exhausted.
◼ If a server does not respond, authentication proceeds to the next server.
◼ If authentication is rejected, there is no provision to try the next server of the same authentication type. For example, if two RADIUS servers are configured and the first server rejects a user, the second RADIUS server is not contacted. You can choose to try the next authentication type if a higher-priority authentication type rejects a request.
Be careful that you don’t lock yourself out of AppResponse 11 by doing either of the following:
◼ Removing Local authentication from the sequence and the remote servers (RADIUS or TACACS+) are unreachable.
◼ Clearing the “Try next method on reject:” check box.
If you lock yourself out of the system, contact Riverbed technical support. Riverbed recommends checking that authentication using RADIUS and TACACS+ works successfully before you remove local authentication or clear the "Try next method on reject." check box.
Refer to the AppResonse 11 User’s Guide for complete details.
RADIUS
AppResponse 11 supports RADIUS authentication, but you must configure one or more RADIUS authentication servers explicitly.
Click Administration > Account Management: Authentication and click the RADIUS tab to add one or more RADIUS servers to the AppResponse 11 configuration.
TACACS+
AppResponse 11 supports TACACS+ authentication, but you must configure one or more TACACS+ authentication servers explicitly.
Click Administration > Account Management: Authentication and click the TACACS+ tab to add one or more TACACS+ servers to the AppResponse 11 configuration.
SAML: Overview and Recommended Practices
AppResponse 11 supports SAML authentication, but you must enable SAML explicitly and configure the SAML IDP. If you enable SAML authentication, RADIUS, TACACS+, and local authentication all will be disabled for the web UI, and only the SAML IDP will authenticate users.
SAML 2.0 authentication is supported to facilitate single sign-on for use with one or more AppResponse 11 systems or other Riverbed SteelCentral products accessed from a single browser session. When SAML 2.0 is enabled, AppResponse 11 relies on a specified SAML identity provider (IDP) for authentication, and does not use local authentication or RADIUS or TACACS+ servers in any combination. (Note that enabling SAML 2.0 authentication on AppResponse 11 disables all other forms of authentication used by the web UI.) If the SAML identity provider is unable to authenticate a user for any reason, that user will not be able to launch an AppResponse 11 web UI session. Note that SAML 2.0 authentication can be disabled via the AppResponse 11 CLI, using the no saml enable command.
When SAML 2.0 is enabled, the first time a user initiates access to an AppResponse 11 system in a browser session, AppResponse 11 will redirect the user to the SAML IDP for authentication. Upon successful authentication, the IDP will redirect the user back to the AppResponse 11 system, and the UI will open. The IDP will send back the user role corresponding to the user name being authenticated, and that user will have permissions in AppResponse 11 as defined by that role. As long as the user keeps that browser session active, any subsequent AppResponse 11 session, even if the user logs out of the system, quits the browser tab, or accesses a new system, will begin immediately without requiring the user re-authenticate. The user will need to re-authenticate with the IDP if they quit the browser session in which they had authenticated earlier.
Audit Logs: Configuration and Use
Audit logging is enabled for the AppResponse 11 system by default. The audit log records configuration changes made to the AppResponse 11 system using the CLI and web UI. By default, the audit log is configured to record all configuration changes. The associated details of the modified data/settings are the same for the two user interfaces, and include appropriate source/user/session information. If you do not wish to record all configuration changes, you can configure the audit log to omit specific changes.
It's recommended practice to have audit logging enabled so you have a record of exactly who accessed every resource on a system during an attempted breach.
Click Administration > System Status: Audit Trail to view the audit log for the system.
Click Administration > System Settings: System Operations and click the Audit Log Configuration tab to configure the audit log for the system. The Audit Log Configuration tab lists a large set of configuration object changes that can be logged; by default, all configuration objects are selected (enabled) for logging. Deselect one or more configuration objects if you don't feel it's necessary to record changes made to it. Controls are provided that enable you to specify the retention time and size of the log, as well as a control for specifying one or more external recipients of the audit log via Email, SNMP, or Syslog.
SSL/TLS
Access to the web UI and REST uses a TLS 1.2 encrypted channel, and the two interfaces share the same underlying HTTPS server. Although it is possible to enable SSL3 and TLS 1.0/1.1, this is strongly discouraged.
AppResponse 11 comes with a preconfigured set of enabled ciphers, and you can change the ciphers from the web UI or CLI using a cipher string that conforms to OpenSSL cipher string syntax.
Communication with NetProfiler uses a TLS1.2 encrypted channel. The cipher cannot be changed.
SSL Decryption
AppResponse 11 can be configured to decrypt the SSL communications of the packets captured from its monitoring ports. To do this, you need to provide AppResponse 11 with the private keys needed to decrypt the communications. The private keys are stored in the Secure Vault, cannot be extracted from the system (they are "write only") and have no relationship with the private key used for the HTTPS web server supporting the ARAppResponse 11 web UI and REST API.
Secure Communication With AppResponse 11
AppResponse 11 supports secure storage of keys and certificates, as well as decryption of secure communications with other entities.
Secure Vault
AppResponse 11's Secure Vault feature cryptographically encrypts secret keys and certificates stored on the local disk. The secured data is decrypted (unlocked) in memory after the system boots normally. If the vault cannot be unlocked, due to the system having been compromised, the web UI will be inaccessible. SAML authentication, SSL traffic decryption, and data export to NetProfiler also will not be functional. Administrator account login via SSH will be available for access to CLI commands.
The following pieces of secure information are stored in the Secure Vault:
◼ Web UI HTTPS certificate
◼ SSL decryption keys
◼ SSL certificates and keys for NetProfiler export
◼ SAML keys
SSL Ciphers Supported For Decryption
The default cipher string configuration for HTTPS on AppResponse 11 consists of:
◼ EECDH+AESGCM
◼ EDH+AESGCM
◼ AES256+EECDH
◼ AES256+EDH
These cipher strings can be modified in the web UI at Administration > System Settings: General in the Web Server Settings tab.
The following SSL ciphers are supported for decoding:
Cipher Suite (OpenSSL) | Name |
SSL_RSA_WITH_NULL_MD5 | NULL-MD5 |
SSL_RSA_WITH_NULL_SHA | NULL-SHA |
SSL_RSA_WITH_RC4_128_MD5 | RC4-MD5 |
SSL_RSA_WITH_RC4_128_SHA | RC4-SHA |
SSL_RSA_WITH_IDEA_CBC_SHA | IDEA-CBC-SHA |
SSL_RSA_WITH_DES_CBC_SHA | DES-CBC-SHA |
SSL_RSA_WITH_3DES_EDE_CBC_SHA | DES-CBC3-SHA |
TLS_RSA_WITH_NULL_MD5 | NULL-MD5 |
TLS_RSA_WITH_NULL_SHA | NULL-SHA |
TLS_RSA_WITH_RC4_128_MD5 | RC4-MD5 |
TLS_RSA_WITH_RC4_128_SHA | RC4-SHA |
TLS_RSA_WITH_IDEA_CBC_SHA | IDEA-CBC-SHA |
TLS_RSA_WITH_DES_CBC_SHA | DES-CBC-SHA |
TLS_RSA_WITH_3DES_EDE_CBC_SHA | DES-CBC3-SHA |
TLS_RSA_WITH_AES_128_CBC_SHA | AES128-SHA |
TLS_RSA_WITH_AES_256_CBC_SHA | AES256-SHA |
TLS_RSA_WITH_CAMELLIA_128_CBC_SHA | CAMELLIA128-SHA |
TLS_RSA_WITH_CAMELLIA_256_CBC_SHA | CAMELLIA256-SHA |
TLS_RSA_WITH_SEED_CBC_SHA | SEED-SHA |
TLS_RSA_WITH_NULL_SHA256 | NULL-SHA256 |
TLS_RSA_WITH_AES_128_CBC_SHA256 | AES128-SHA256 |
TLS_RSA_WITH_AES_256_CBC_SHA256 | AES256-SHA256 |
TLS_RSA_WITH_AES_128_GCM_SHA256 | AES128-GCM-SHA256 |
TLS_RSA_WITH_AES_256_GCM_SHA384 | AES256-GCM-SHA384 |
Certificate Management
By default, AppResponse 11’s web UI and REST interface use a self-signed certificate generated when the system is first installed. The self-signed certificate can be regenerated using the web UI. In addition, a different certificate/private key can be imported using the web UI.
Communication with NetProfiler uses a default certificate; the certificate can be changed using the AppResponse 11 web UI, and the same change should be made on NetProfiler as well. Refer to the respective user guides for detailed instructions.
Make sure that you don’t enable old ciphers or protocols like SSL 3.0 unless it’s necessary for compatibility with older browsers or other products.
SSH ciphers are configurable using the CLI.
RADIUS and TACACS+ are old protocols that don't use strong cryptography when encrypting the credentials that go over the network.
REST API Security
The AppResponse 11 REST API shares a communication channel with the web UI, and uses the same authentication scheme as the web UI, unless you use SAML, in which case the REST API continues to use the normal RADIUS/TACACS/local authentication schemes.
SNMP
AppResponse 11 SNMP support is disabled by default. If you enable SNMP, you can specify the use of Version 1, Version 2c, or Version 3.
Enable SNMP using the web UI at Administration > System Settings: General, and click the SNMP tab. The Enable SNMP checkbox appears at the top of the tab.Note that SNMP v3 supports the use of user names, privilege levels, and authentication for trap notifications.
Recipients for SNMP traps are defined using the web UI at Definitions > Recipients.
How to Report a Discovered Vulnerability
Contact Riverbed technical support to report any security vulnerability that you discover that affects any portion or any operation of the AppResponse 11 system. As much as you’re able to do so, please include all details about the circumstances in which you found the vulnerability, including:
◼ Specific hardware and software versions
◼ The exploit tool and/or methodology used to discover the vulnerability
◼ Reference CVE, if known
◼ Any other information that can be used to reproduce the results
Known vulnerabilities that are addressed by bug fixes in AppResponse 11 are cited as security updates in the release notes for each new AppResponse 11 version.
How to Wipe a System
The CLI command, system reset-factory resets the AppResponse 11 system to its factory default state. This command deletes all configuration, data, and logs from the AppResponse 11 system and resets it to the state it was in when it was powered on the very first time. The command does not perform a secure disk wipe or affect the AppResponse 11 software itself; the installed version and any patches will not be touched.