TMAegisBeta
More rules for juniper-junos

Juniper Junos

TMA-JUNIPER-JUNOS-5.7

Ensure SHA1 is set for SNMPv3 authentication

HighLevel 2Automatedjuniper-junos

Description

Do not allow unauthenticated SNMPv3 access. SNMPv3 provides much improved security over previous versions by offering options for Authentication and Encryption of messages. Authentication in SNMPv3 is performed using Keyed-Hash Message Authentication Code or HMAC. Passes when no SNMPv3 user exists; fails on MD5/none authentication. Audited against the output of 'show configuration | display set | no-more' (set format, not the curly-brace hierarchy).

How it is checked

Audit method: Configuration pattern

Pattern
(?m)(?:\A(?:(?:[ \t]*(?:$|[^s \t\n]|s(?:$|[^e\n]|e(?:$|[^t\n]|t(?:$|[^ \n]| (?:$|[^s\n]|s(?:$|[^n\n]|n(?:$|[^m\n]|m(?:$|[^p\n]|p(?:$|[^ \n]| (?:$|[^v\n]|v(?:$|[^3\n]|3(?:$|[^ \n]| (?:$|[^u\n]|u(?:$|[^s\n]|s(?:$|[^m\n]|m(?:$|[^ \n]| (?:$|[^l\n]|l(?:$|[^o\n]|o(?:$|[^c\n]|c(?:$|[^a\n]|a(?:$|[^l\n]|l(?:$|[^\-\n]|-(?:$|[^e\n]|e(?:$|[^n\n]|n(?:$|[^g\n]|g(?:$|[^i\n]|i(?:$|[^n\n]|n(?:$|[^e\n]|e(?:$|[^ \n]| (?:$|[^u\n]|u(?:$|[^s\n]|s(?:$|[^e\n]|e(?:$|[^r\n]|r(?:$|[^ \n]))))))))))))))))))))))))))))))))))[^\n]*|[ \t]*set snmp v3 usm local-engine user (?:(?:[^a \t\n][^ \t\n]*|a(?:|[^u \t\n][^ \t\n]*|u(?:|[^t \t\n][^ \t\n]*|t(?:|[^h \t\n][^ \t\n]*|h(?:|[^e \t\n][^ \t\n]*|e(?:|[^n \t\n][^ \t\n]*|n(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^c \t\n][^ \t\n]*|c(?:|[^a \t\n][^ \t\n]*|a(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^o \t\n][^ \t\n]*|o(?:|[^n \t\n][^ \t\n]*|n(?:|[^\- \t\n][^ \t\n]*|-(?:|[^s \t\n][^ \t\n]*|s(?:|[^h \t\n][^ \t\n]*|h(?:|[^a \t\n][^ \t\n]*|a(?:[^235 \t\n][^ \t\n]*|2(?:|[^25 \t\n][^ \t\n]*|2(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*))|5(?:|[^6 \t\n][^ \t\n]*|6(?:[^ \t\n][^ \t\n]*)))|3(?:|[^8 \t\n][^ \t\n]*|8(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*)))|5(?:|[^1 \t\n][^ \t\n]*|1(?:|[^2 \t\n][^ \t\n]*|2(?:[^ \t\n][^ \t\n]*))))))))))))))))))))))[ \t]+)*(?:(?:[^a \t\n][^ \t\n]*|a(?:|[^u \t\n][^ \t\n]*|u(?:|[^t \t\n][^ \t\n]*|t(?:|[^h \t\n][^ \t\n]*|h(?:|[^e \t\n][^ \t\n]*|e(?:|[^n \t\n][^ \t\n]*|n(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^c \t\n][^ \t\n]*|c(?:|[^a \t\n][^ \t\n]*|a(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^o \t\n][^ \t\n]*|o(?:|[^n \t\n][^ \t\n]*|n(?:|[^\- \t\n][^ \t\n]*|-(?:|[^s \t\n][^ \t\n]*|s(?:|[^h \t\n][^ \t\n]*|h(?:|[^a \t\n][^ \t\n]*|a(?:[^235 \t\n][^ \t\n]*|2(?:|[^25 \t\n][^ \t\n]*|2(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*))|5(?:|[^6 \t\n][^ \t\n]*|6(?:[^ \t\n][^ \t\n]*)))|3(?:|[^8 \t\n][^ \t\n]*|8(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*)))|5(?:|[^1 \t\n][^ \t\n]*|1(?:|[^2 \t\n][^ \t\n]*|2(?:[^ \t\n][^ \t\n]*)))))))))))))))))))))))?)\n)*[ \t]*set snmp v3 usm local-engine user (?:(?:[^a \t\n][^ \t\n]*|a(?:|[^u \t\n][^ \t\n]*|u(?:|[^t \t\n][^ \t\n]*|t(?:|[^h \t\n][^ \t\n]*|h(?:|[^e \t\n][^ \t\n]*|e(?:|[^n \t\n][^ \t\n]*|n(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^c \t\n][^ \t\n]*|c(?:|[^a \t\n][^ \t\n]*|a(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^o \t\n][^ \t\n]*|o(?:|[^n \t\n][^ \t\n]*|n(?:|[^\- \t\n][^ \t\n]*|-(?:|[^s \t\n][^ \t\n]*|s(?:|[^h \t\n][^ \t\n]*|h(?:|[^a \t\n][^ \t\n]*|a(?:[^235 \t\n][^ \t\n]*|2(?:|[^25 \t\n][^ \t\n]*|2(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*))|5(?:|[^6 \t\n][^ \t\n]*|6(?:[^ \t\n][^ \t\n]*)))|3(?:|[^8 \t\n][^ \t\n]*|8(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*)))|5(?:|[^1 \t\n][^ \t\n]*|1(?:|[^2 \t\n][^ \t\n]*|2(?:[^ \t\n][^ \t\n]*))))))))))))))))))))))[ \t]+)*(?:(?:[^a \t\n][^ \t\n]*|a(?:|[^u \t\n][^ \t\n]*|u(?:|[^t \t\n][^ \t\n]*|t(?:|[^h \t\n][^ \t\n]*|h(?:|[^e \t\n][^ \t\n]*|e(?:|[^n \t\n][^ \t\n]*|n(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^c \t\n][^ \t\n]*|c(?:|[^a \t\n][^ \t\n]*|a(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^o \t\n][^ \t\n]*|o(?:|[^n \t\n][^ \t\n]*|n(?:|[^\- \t\n][^ \t\n]*|-(?:|[^s \t\n][^ \t\n]*|s(?:|[^h \t\n][^ \t\n]*|h(?:|[^a \t\n][^ \t\n]*|a(?:[^235 \t\n][^ \t\n]*|2(?:|[^25 \t\n][^ \t\n]*|2(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*))|5(?:|[^6 \t\n][^ \t\n]*|6(?:[^ \t\n][^ \t\n]*)))|3(?:|[^8 \t\n][^ \t\n]*|8(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*)))|5(?:|[^1 \t\n][^ \t\n]*|1(?:|[^2 \t\n][^ \t\n]*|2(?:[^ \t\n][^ \t\n]*)))))))))))))))))))))))?(?:\n(?:(?:[ \t]*(?:$|[^s \t\n]|s(?:$|[^e\n]|e(?:$|[^t\n]|t(?:$|[^ \n]| (?:$|[^s\n]|s(?:$|[^n\n]|n(?:$|[^m\n]|m(?:$|[^p\n]|p(?:$|[^ \n]| (?:$|[^v\n]|v(?:$|[^3\n]|3(?:$|[^ \n]| (?:$|[^u\n]|u(?:$|[^s\n]|s(?:$|[^m\n]|m(?:$|[^ \n]| (?:$|[^l\n]|l(?:$|[^o\n]|o(?:$|[^c\n]|c(?:$|[^a\n]|a(?:$|[^l\n]|l(?:$|[^\-\n]|-(?:$|[^e\n]|e(?:$|[^n\n]|n(?:$|[^g\n]|g(?:$|[^i\n]|i(?:$|[^n\n]|n(?:$|[^e\n]|e(?:$|[^ \n]| (?:$|[^u\n]|u(?:$|[^s\n]|s(?:$|[^e\n]|e(?:$|[^r\n]|r(?:$|[^ \n]))))))))))))))))))))))))))))))))))[^\n]*|[ \t]*set snmp v3 usm local-engine user (?:(?:[^a \t\n][^ \t\n]*|a(?:|[^u \t\n][^ \t\n]*|u(?:|[^t \t\n][^ \t\n]*|t(?:|[^h \t\n][^ \t\n]*|h(?:|[^e \t\n][^ \t\n]*|e(?:|[^n \t\n][^ \t\n]*|n(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^c \t\n][^ \t\n]*|c(?:|[^a \t\n][^ \t\n]*|a(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^o \t\n][^ \t\n]*|o(?:|[^n \t\n][^ \t\n]*|n(?:|[^\- \t\n][^ \t\n]*|-(?:|[^s \t\n][^ \t\n]*|s(?:|[^h \t\n][^ \t\n]*|h(?:|[^a \t\n][^ \t\n]*|a(?:[^235 \t\n][^ \t\n]*|2(?:|[^25 \t\n][^ \t\n]*|2(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*))|5(?:|[^6 \t\n][^ \t\n]*|6(?:[^ \t\n][^ \t\n]*)))|3(?:|[^8 \t\n][^ \t\n]*|8(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*)))|5(?:|[^1 \t\n][^ \t\n]*|1(?:|[^2 \t\n][^ \t\n]*|2(?:[^ \t\n][^ \t\n]*))))))))))))))))))))))[ \t]+)*(?:(?:[^a \t\n][^ \t\n]*|a(?:|[^u \t\n][^ \t\n]*|u(?:|[^t \t\n][^ \t\n]*|t(?:|[^h \t\n][^ \t\n]*|h(?:|[^e \t\n][^ \t\n]*|e(?:|[^n \t\n][^ \t\n]*|n(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^c \t\n][^ \t\n]*|c(?:|[^a \t\n][^ \t\n]*|a(?:|[^t \t\n][^ \t\n]*|t(?:|[^i \t\n][^ \t\n]*|i(?:|[^o \t\n][^ \t\n]*|o(?:|[^n \t\n][^ \t\n]*|n(?:|[^\- \t\n][^ \t\n]*|-(?:|[^s \t\n][^ \t\n]*|s(?:|[^h \t\n][^ \t\n]*|h(?:|[^a \t\n][^ \t\n]*|a(?:[^235 \t\n][^ \t\n]*|2(?:|[^25 \t\n][^ \t\n]*|2(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*))|5(?:|[^6 \t\n][^ \t\n]*|6(?:[^ \t\n][^ \t\n]*)))|3(?:|[^8 \t\n][^ \t\n]*|8(?:|[^4 \t\n][^ \t\n]*|4(?:[^ \t\n][^ \t\n]*)))|5(?:|[^1 \t\n][^ \t\n]*|1(?:|[^2 \t\n][^ \t\n]*|2(?:[^ \t\n][^ \t\n]*)))))))))))))))))))))))?)))*\n?\z)|(?:^set snmp v3 usm local-engine user \S+ authentication-(?:md5|none)\b)

How it is fixed

Fix method: Guidance or infrastructure patch

! For each SNMPv3 user created on your router add privacy options by issuing the following command from the hierarchy; set snmp v3 usm local-engine user <username> authentication-sha authentication-password <password>

Properties

Operating systems
Any
Tags
juniper-junosnetworksnmp
Reference
CIS Juniper OS Benchmark v2.1.0 - 5.7 Ensure SHA1 is set for SNMPv3 authentication

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target juniper-junos --level 2