Pull to refresh

Простая проверка безопасности на ваших серверах

Reading time1 min
Views30K
Всем привет!

Предлагаю сделать простую проверку безопасности на ваших серверах.

Суть проверки очень проста. Мы переключаемся под пользователя, из-под которого запущены сервисы, такие как вебсервер или база данных, и смотрим в какие файлы в системе он может читать и писать. Запускать надо из-под всех пользователей, из-под которых работают смотрящие в мир сервисы. Если раньше никогда не делали, могут открыться бездны, но не паникуйте и быстренько все поправьте.

Замечу, что например апачевский юзер не должен иметь прав на изменение и удаление апачевских логов.

С Новым Годом!

Linux


Проверка на чтение

su -l www-data
find / -type d \( -wholename '/dev/*' -o -wholename '/sys/*' -o -wholename '/proc/*' \) -prune -o -exec test -r {} \; -exec echo {} is readable \; 2>/dev/null

Проверка на запись

su -l www-data
find / -type d \( -wholename '/dev/*' -o -wholename '/sys/*' -o -wholename '/proc/*' \) -prune -o -exec test -w {} \; -exec echo {} is writable \; 2>/dev/null

FreeBSD


Проверка на чтение

su -m www -c /usr/local/bin/bash
find / -type d \( -name dev \) -prune -o -exec test -r {} \; -exec echo {} is readable \; 2>/dev/null

Проверка на запись

su -m www -c /usr/local/bin/bash
find / -type d \( -name dev \) -prune -o -exec test -w {} \; -exec echo {} is writable \; 2>/dev/null


P.S.
Вывод этих команд можно перенаправить в файлик и потом смотреть его удобными средствами, например
cut -d'/' -f1,2,3 < write.out | sort -u


UPDATE
timukas подсказал, что в новых версиях gnu find можно проверять еще проще:
su -l user 
find / ! -writable
find / -writable
Tags:
Hubs:
+41
Comments60

Articles