Практическое задание

Эта задача — шаг 13 курса «Расследование на сервере»

SUID там, где его быть не должно

средне~5 мин

В /usr/bin SUID-файлы — норма (passwd, su…), а вот в /usr/local и /opt их быть не должно: туда ставят своё ПО, и SUID там — частый след закрепившегося злоумышленника. Найди все обычные файлы с SUID-битом в /usr/local и /opt и запиши их пути по одному на строку в /root/suid-ioc.txt.

Что потренируешь:
  • suid-бит
  • find -perm
  • права доступа
  • аудит безопасности
  • расследование

Разбор темы

SUID-бит заставляет программу выполняться с правами владельца файла, а не запустившего её пользователя. Системные утилиты вроде passwd без него не работают, но копия bash или find с SUID от root — готовая лестница к root для любого пользователя, поэтому после взлома первым делом ищут SUID-файлы вне штатных мест. find отбирает их по маске прав: -perm с префиксом - требует, чтобы указанные биты были установлены, не глядя на остальные; SUID — это 4000, а похожий SGID (2000) — другой бит. Несколько каталогов передаются find списком.

Что проверяется

  1. подброшенные SUID-файлы найдены
  2. в списке ровно SUID-файлы

Как это выглядит