SNMP Attack

  • Ports used

    • [[UDP]] 161

    • [[UDP]] 162

      • traps

      • These are data packets sent from the SNMP server to the client without being explicitly requested.

        • If a device is configured accordingly

      • An SNMP trap is sent to the client once a specific event occurs on the server-side

MIB

  • To ensure that SNMP access works across manufacturers and with different client-server combinations, the Management Information Base (MIB) was created.

    • A MIB is a text file in which all queryable SNMP objects of a device are listed in a standardized tree hierarchy

  • do not contain data

    • link to the data

      • returns a specific OID

OID

  • represents a node in a hierarchical namespace.

  • A sequence of numbers uniquely identifies each node, allowing the node's position in the tree to be determined.

SNMP

SNMPv1

  • provides traps,

  • no built-in authentication mechanism

  • does not support encryption

SNMPv2

  • similar to SNMPv1

  • community string that provides security is only transmitted in plain text, meaning it has no built-in encryption.

SNMPv3

  • has authentication using username and password and transmission encryption (via pre-shared key) of the data

Default Configuration

Dangerous Settings

Settings

Description

rwuser noauth

Provides access to the full OID tree without authentication.

rwcommunity <community string> <IPv4 address>

Provides access to the full OID tree regardless of where the requests were sent from.

rwcommunity6 <community string> <IPv6 address>

Same access as with rwcommunity with the difference of using IPv6.


Footprinting the Service

snmpwalk

  • snmpwalk

snmpbulkwalk

  • faster than snmp walk

OneSixtyOne

  • can be used to get community string

  • https://github.com/trailofbits/onesixtyone

  • Once we know a community string, we can use it with braa to brute-force the individual OIDs and enumerate the information behind them.

Braa

Last updated