rsync est surtout connu comme outil de synchronisation de fichiers via SSH, mais il s'exécute aussi en tant que démon autonome à l'écoute sur le port TCP 873, exposant des modules nommés qui se comportent comme des partages. Les modules du démon sont configurés dans rsyncd.conf, et ils sont couramment laissés anonymes (pas d'auth users) et parfois inscriptibles, avec des réglages de chroot et de privilèges variables. La surface offensive comprend l'énumération des modules exposés, la lecture de leur contenu sans identifiants, et l'écriture dans tout module qui l'autorise, ce qui dépose des fichiers sur l'hôte dans les limites de ce que le chroot et les privilèges du démon permettent.
# list modules exposed by the rsync daemon (no credentials needed to list)
rsync rsync://<target>/ # or: rsync <target>::
nmap -p873 --script rsync-list-modules <target>
Sous-thèmes#
- Énumération des modules : lister les modules et leur accès.
- Accès anonyme aux fichiers : lire le contenu des modules sans authentification.
- Accès en écriture : déposer des fichiers via un module inscriptible.