Transition to SNMP version 3
- November 13th, 2010
- By Paula Livingstone
- Write comment
SNMP allows management tools to collect data and set variable values through agents on managed devices in Internet Protocol (IP) networks.
SNMPv1 and SNMPv2c use community strings (passwords) to “authenticate” a managing entity to an agent. Community strings are sent as clear text. SNMPv1 and SNMPv2c also pass management data over the network as clear text. These obvious security problems can be addressed in different ways.
This research examines two techniques for securing SNMP traffic:
(i) using a non-secure version of SNMP in conjunction with IPSec.
(ii) using SNMPv3, the latest version of SNMP which includes inherent security capabilities, and
Both approaches can ensure the authenticity, integrity, and privacy of SNMP traffic. There are, however, qualitative and quantitative differences between these two approaches.
I will examine the problem of securing SNMP traffic in the context of a sample network, as illustrated in the image below,
Here a managing entity on one subnet uses SNMP to access managed devices on remote subnets across a backbone network . The backbone network may have less physical security than the subnets and may even be the Internet or another network operated by an external organization and accessible by many parties.
Methods to secure SNMP traffic across a backbone network should meet the following objectives.
• The solution should preserve network capacity without impairing network management functionality.
• The security services should include message authentication, integrity, and confidentiality.
• The solution should be cost effective and promote interoperability, implying the use of standards-based, commercial off-the-shelf components.
1.1 Using Insecure SNMP Over IPSec
1.1.1 Overview of IP Security:
IPSec is a protocol suite that provides authentication, encryption, key management, and key exchange capabilities at the network level by defining header extensions to standard IP.
In IPSec, the header extensions support the following components.
• Authentication Header (AH) − packets are authenticated using either Secure Hash Algorithm (SHA-1) or Message Digest 5 (MD5) keyed-message digests.
• Encapsulating Security Payload (ESP) − packets are encrypted using the Data Encryption Standard in Cipher Block Chained mode (DES-CBC). If the IP header of an ESP packet requires authentication, then AH must be used in conjunction with ESP.
• Internet Key Exchange (IKE) − defines how principals agree on the protocols, keys, and algorithms.
IKE negotiates and maintains the security features applied to a communications channel by establishing a security association (SA) between communicating entities. IKE uses two phases of operation, Phase 1 and Phase 2, to establish and maintain security associations. A Phase 1 exchange establishes an initial SA between communicating entities using either “aggressive mode” or “main mode” negotiation procedures.
Aggressive mode requires two back- and-forth communication exchanges; whereas main mode requires three back-and-forth communication exchanges.
The extra exchange used by main mode keeps the principal’s identities private, providing an extra measure of security over that provided by aggressive mode.
A Phase 2 exchange uses “quick mode” to establish a new SA or to update an existing SA during a secure communications session already established by a Phase 1 exchange.
A quick mode negotiation procedure exchanges three packets resembling a three-way handshake.
1.1.1.1 Qualitative Characteristics of Insecure SNMP over IPSec:
Since both encryption and authentication services are needed to secure SNMP traffic, the following analysis assumes that the ESP feature of IPSec is used to provide both encryption and authentication services in a tunneled SA between two security gateways. Each security gateway protects and hides a local area network (LAN) or subnet from the backbone network (IP cloud) traversed by the tunnel.
A typical situation, consists of an SNMP management station on one hidden LAN communicating with an SNMP agent on the other hidden LAN. IPSec implements security features at the network layer. Therefore, its security features are available for use by higher-layer protocols that use IP. If security features are needed for other applications in addition to SNMP, then IPSec may be the most effective means for obtaining a general security solution. However, IPSec does not provide true end-to-end security, even in a host-to-host SA, since the protection provided by IPSec does not extend above the network layer.
Typically, IPSec does not protect the traffic traversing the LAN protected by the security gateway. Although host-to- host SAs could be used behind the security gateway, IPSec is usually not deployed on most SNMP-enabled network devices, so there probably is significant SNMP traffic traversing the LAN in the clear. This may or may not pose a problem, depending on the strength of the LAN administrator’s security policy and how well it is enforced.
Although the IPSec framework is open to incorporating other encryption algorithms, only DES-CBC (and NULL encryption) is required for conformance, providing a basic encryption standard to ensure interoperability. Since confidence in the security of 56-bit DES-CBC is rapidly eroding, the use of stronger encryption algorithms is encouraged.
The ESP header extension defined by IPSec includes several extra fields that impose additional overhead, creating an impact on the available network capacity. The security parameters index, sequence number, pad length, and next header fields are all fixed in length, consuming at total of 10 bytes. The authentication data field is variable, depending on the authentication scheme used; a typical length might be, for example, 96 bits for MD5-96. The padding field is provided to accommodate encryption algorithms that have length boundary requirements and to ensure that the authentication data field falls on a 32-bit boundary. The initialization vector (IV) required by the DES-CBC encryption algorithm is placed immediately before the encrypted payload. Therefore, assuming MD5-96 authentication, 2 bytes of padding, an 8- byte IV, and including the additional outer IP header, an IPSec packet tunneled using ESP will transmit 52 bytes more than a standard IP packet delivering the same payload. This per packet overhead does not include the overhead incurred by the Phase 1 or Phase 2 exchanges by IKE. The Phase 1 exchange occurs once when the tunnel is initiated, so its cost is negligible when amortized over the tunnel’s lifetime. The frequency of Phase 2 exchanges is under administrative control and, thus, can be tailored to the desired security policy and available network capacity. Keys can be updated at intervals on the order of minutes, expending network capacity to benefit security, or keys can be updated at intervals on the order days, loosening security to benefit network capacity.
The IPSec solution has the advantage of cleanly separating security processing from SNMP processing. That is, an SNMP agent would typically not be burdened with computationally expensive security processing, unless the SA ends at the machine hosting the agent. If an agent’s host machine is not IPSec enabled − or if an agent’s host machine is IPSec enabled, but the agent is accessed via an unsecured channel − then accessing that agent would not be hindered by security processing.
1.1.1.2 Functional Characteristics of Insecure SNMP over IPSec:
With IPSec, security features are employed without directly involving users. While ease of use is likely not a major concern for SNMP as operations are invoked by network administrators, this advantage of IPSec for other applications means that IPSec can be available for SNMP. It should be noted however that this regular updating of keys on existing IPSec vpn tunnels does not currently take place in any case.
1.2 Using SNMPv3
1.2.1 Overview of SNMPv3:
SNMPv3 offers new features, including security features that ensure message authenticity, integrity and confidentiality, and that provide fine-grained control over access to SNMP capabilities. SNMPv3 also provides new administrative capabilities that enable remote configuration of these security features. Other enhancements may provide reasons to adopt SNMPv3 even if the security features are not needed. For example, SNMPv3 incorporates a flexible mechanism for remotely configuring user access to SNMP capabilities.
SNMPv3 employs the User-based Security Model (USM) to provide cryptographic services. The USM currently uses either MD5 or SHA keyed message digests to ensure message authenticity and integrity, and DES-CBC encryption to ensure message privacy. These features are used to provide three distinct levels of security: no authentication with no privacy (noAuthNoPriv), authentication with no privacy (authNoPriv), and authentication with privacy (authPriv). The USM provides for remotely configuring users and their keys by using SNMPv3 operations to manipulate objects in the USM Management Information Base (MIB).
SNMPv3 employs the View-based Access Control Model (VACM) to establish user access privileges. When making access control decisions, SNMPv3 cleanly and separately considers the user originating the message, the level of security applied to the message, the MIB view addressed by the message, and the type of operation requested by the message. These features provide network managers with fine-grained control over access to SNMP capabilities.
In contrast to SNMPv3, both SNMPv1 and SNMPv2c use an access control scheme that simply maps the user-supplied community string onto a MIB view. This method effectively bundles all access control considerations that are separately addressed by SNMPv3 into the community string.
Clearly, the access control features provided by SNMPv3 are more secure and more powerful than those of SNMPv1 and SNMPv2.
1.2.2 Qualitative Characteristics of SNMPv3:
Since both encryption and authentication services are needed, the following analysis assumes that SNMPv3 operations use the authPriv security level. SNMPv3 implements security features at the application level, ensuring that the communication channel is truly protected from end to end. However, these security features are not available for use by other applications. DES-CBC is the only encryption standard currently described in the SNMPv3 documents, although other symmetrical encryption algorithms could be added. Implementing SNMPv3’s security features requires a different message format that is considerably longer than the
SNMPv2c message format. The overall length of an SNMPv3 message is difficult to estimate because:
(i) by definition, some of its contents vary in length, e.g., community string, and
(ii) each field is transmitted as a type-length-value triplet, using the Basic Encoding Rules, whose overall length is value dependent.
Another factor complicates analysis of SNMPv3 network overhead. SNMPv3 uses the concept of “timeliness” as a scheme to thwart replay attacks. Briefly, one end of an SNMPv3 exchange must be roughly aware of the other’s measure of the current time, represented by its timeliness parameters. A “discovery” exchange often must precede an actual SNMP operation to allow one entity to learn the other’s timeliness parameters. Clearly, SNMPv3’s longer header and its discovery procedure mean that SNMPv3 will consume more link capacity than SNMPv2c, but exactly how much more depends upon several case-specific factors. For example, the SNMP management application suite may remember timeliness parameters between successive queries to the same target entity such that the cost of a discovery exchange can be amortized over several queries. Otherwise, every query must be preceded by a discovery exchange.
Embedding the security features in the SNMP agent places additional computational load on the agent, possibly degrading performance of some devices. Again, quantifying the additional load depends on many case-by-case
dependencies that will need to be explored empirically.
1.2.3 Functional Characteristics SNMPv3:
SNMPv3 security services are invoked directly by application users, meaning that users have to remember passwords. This should not be problematic since SNMPv3 users should be security- conscious, administrative personnel. Sometimes, a management application suite will provide a facility for users to define default values for often used parameters, such as passwords. Such a facility relieves users from having to remember their passwords, but it also presents a potential security problem as these default values may be stored in a plain text file.
SNMPv3 does not automatically update keys. Network administrators must ensure that users change their passwords (keys) at appropriate intervals or, else, do so for them. Keeping passwords updated should not be too troublesome, as SNMPv3 users should be security-conscious network managers. However, manually managing key updates in large networks could be daunting.
1.3 Comparing SNMPv2c-Over-IPSec and SNMPv3
While both SNMPv2c-over-IPSec and SNMPv3 can provide secure SNMP network management in a network, there are fundamental qualitative differences. The SNMPv2c-over-IPSec solution implements security at the network layer, providing general security services for all applications as well as for SNMP. However, the security provided is not truly end-to-end. In contrast, the SNMPv3 solution implements security at the application layer, providing a true end-to-end secure channel between communicating processes, but the security provided is not available to other applications.
The SNMPv2c-over-IPSec solution appears to be easier to use and administer than the SNMPv3 solution. Conversely, the SNMPv3 solution provides remotely configurable, fine-grained user management capabilities that are not
available in SNMPv2c.
For a large network, it would be unreasonable to insist that all SNMP-enabled network devices be SNMPv3 compliant. Legacy devices remain in service, so the need to support older, non-secure versions of SNMP is likely to persist.
Relying on the security provided by IPSec would be the easiest way to maintain security in such environments. Conversely, some situations are better suited for SNMPv3. Consider a firewall that separates a hidden LAN from a “public” network. It is reasonable to expect that the security gateway’s public interface will be attacked. Now, suppose that access to the firewall’s SNMP capabilities needs to be remotely reconfigured on a frequent basis. SNMPv3’s remotely configurable, fine-grained access control features would be well suited for the task, as would its true end-to-end security.
Recognizing that both solutions have complementary strengths gives rise to a third possibility ? having SNMPv3 and SNMPv2c-over-IPSec coexist. Clearly, an IPSec- enabled network could use the SNMPv2c-over-IPSec solution for most routine tasks, while reserving use of SNMPv3 for situations that require the unique advantages provided by SNMPv3. SNMP users could simply and dynamically choose the SNMP version, and the level of security in the case of SNMPv3, most appropriate for the task at hand.




Say “Chumby” and an image of a squat beanbag with a touch-screen comes to mind–that is, if you know what a
Looks like Cisco’s move into the world of radio/wireless is a go. The company announced yesterday that they have been given regulatory clearance and have now satisfied the regulatory approval requirements under the merger agreement to complete the acquisition of Starent Networks.