OSCP Playbook
Search
K
Comment on page

SNMP

Internet Standard protocol for collecting and organizing information about managed devices on IP networks and for modifying that information to change device behavior.

Enumerate Community strings

./onesixtyone -c /usr/share/seclists/Discovery/SNMP/common-snmp-community-strings.txt $ip
python snmpbrute.py -t $ip
nmap -sU $ip -p161 --script=snmp-brute -Pn --script-args snmp-brute.communitiesdb=list.txt
## snmp-check
snmp-check $ip -c public

Nmap script

nmap -sU -p161 --script "snmp-*" $ip
nmap -n -vv -sV -sU -Pn -p 161,162 –script=snmp-processes,snmp-netstat IP

snmpwalk

apt install snmp-mibs-downloader #translates MIBs into readable format
for community in public private manager; do snmpwalk -c $community -v1 $ip; done
snmpwalk -c public -v1 $ip
snmpenum $ip public windows.txt
Less noisy
snmpwalk -c public -v1 $ip 1.3.6.1.4.1.77.1.2.25
Based on UDP, stateless and susceptible to UDP spoofing
nmap -sU --open -p 16110.1.1.1-254 -oG out.txt
snmpwalk -c public -v1 $ip # we need to know that there is a community called public
snmpwalk -c public -v1 $ip 1.3.6.1.4.1.77.1.2.25 # enumerate windows users
snmpwalk -c public -v1 $ip 1.3.6.1.2.1.25.4.2.1.2 # enumerates running processes
nmap -vv -sV -sU -Pn -p 161,162 --script=snmp-netstat,snmp-processes $ip

SNMPv3 enumeration

wget https://raw.githubusercontent.com/raesene/TestingScripts/master/snmpv3enum.rb; ./snmpv3enum.rb

Wordlist

/usr/share/metasploit-framework/data/wordlists/snmp_default_pass.txt

SNMP MIB Trees

  • 1.3.6.1.2.1.25.1.6.0 - System Processes
  • 1.3.6.1.2.1.25.4.2.1.2 - Running Programs
  • 1.3.6.1.2.1.25.4.2.1.4 - Processes Path
  • 1.3.6.1.2.1.25.2.3.1.4 - Storage Units
  • 1.3.6.1.2.1.25.6.3.1.2 - Software Name
  • 1.3.6.1.4.1.77.1.2.25 - User Accounts
  • 1.3.6.1.2.1.6.13.1.3 - TCP Local Ports

Exploitation

  • Gather version numbers
  • Searchsploit
  • Default Creds
  • Creds previously gathered
  • Download the software