SFTP n'est pas du FTP sur SSH mais un sous-système de transfert de fichiers distinct intégré au serveur SSH, atteint sur le port 22 via la connexion SSH. Il hérite donc entièrement du modèle de sécurité de SSH : authentification par mot de passe ou par clé publique, et configuration des comptes et des sous-systèmes du serveur. La surface offensive en découle : énumérer les noms d'utilisateur valides, forcer ou sprayer les mots de passe, abuser des clés SSH faibles ou volées, et, parce que les comptes limités à SFTP sont généralement confinés à un shell restreint internal-sftp ou à un chroot, s'évader de ce confinement vers une exécution de commandes complète.
# SFTP rides SSH; enumerate and connect
nmap -p22 --script ssh2-enum-algos,ssh-auth-methods <target>
sftp user@<target> # subsystem access
ssh user@<target> # does the account also get a shell?
Sous-thèmes#
- Énumération des noms d'utilisateur : découvrir les comptes valides.
- Force brute des identifiants : attaques par mot de passe sur SSH.
- Clés SSH faibles et volées : abus de l'accès basé sur les clés.
- Évasion du shell restreint et du chroot : sortir du confinement limité à SFTP.