Мы - компания, занимающаяся дизайном / хостингом веб-сайтов, и у нас есть несколько сайтов, и кто-то смог записать произвольные данные в файловую систему. Мы подозреваем, что у них все еще установлены скрипты и им нужен способ аудита всего, что было изменено или добавлено за последние 10 дней. Есть ли команда или сценарий, который мы можем запустить для этого?
Начать сначала:
Лично у меня были бы проблемы со сном по ночам, если бы я просто не восстановил каждый сервер из новой установки.
Я настоятельно рекомендую вам это сделать, хакеры могут скрывать вещи и делать их так, как будто они изменились, даже если они изменились, если они достаточно хороши.
Почему не работает find:
Например, чтобы изменить время модификации:
kbrandt@kbrandt: ~/scrap/touch] ls -l foo
-rw-rw-r-- 1 kbrandt kbrandt 4 2010-04-05 12:22 foo
[kbrandt@kbrandt: ~/scrap/touch] touch -m -t 199812130530 foo
[kbrandt@kbrandt: ~/scrap/touch] ls -l foo
-rw-rw-r-- 1 kbrandt kbrandt 4 1998-12-13 05:30 foo
ctime может быть лучше для поиска, если вы пойдете по маршруту поиска, но может быть простой способ изменить это. Если это не так просто, кто-то может войти и просто отредактировать саму файловую систему с помощью устройства, которое я себе представляю.
Только что нашел следующее в сети с ctime, но не пробовал:
Since ctime is the last time the inode info was changed, you could
change the system date, make a new hardlink, remove it again and change
the date back.
И этот материал использует только инструменты, которые уже есть в системе в пользовательском пространстве, забудьте, что кто-то может сделать, если он хорошо разбирается в программировании ядра.
В find
команда с -mtime
и -mmin
предикаты могут это сделать.
Найти, вероятно, ваш лучший выбор на данный момент, но я бы согласился с новыми установками. Однако как узнать, что ваша база данных не была взломана?
Большинство приложений, таких как Joomla, могут извлечь выгоду из блокировки прав доступа к файлам. Я сомневаюсь, что вашему веб-серверу нужен доступ на запись ко всем файлам / каталогам в дереве. Вы должны сделать их только для чтения, за исключением случаев, когда это необходимо.
Забегая вперед, могу ли я предложить вам запустить какую-либо форму IDS, например tripwire (http://sourceforge.net/projects/tripwire/) или помощник (http://www.cs.tut.fi/~rammer/aide.html).
Полезный совет - если вы не можете избежать Joomla (или сторонних надстроек, которые являются наиболее серьезными нарушителями), я настоятельно рекомендую быть в курсе известных эксплойтов и отключить надстройки. при необходимости:
http://www.exploit-db.com/list.php?description=joomla&author=&platform=&type=&port=&osvdb=&cve=
Вам также может быть интересен Dnotify: http://en.wikipedia.org/wiki/Dnotify
как сказал Sinping, "tripwire" должен быть вашим ответом на проблему, с которой вы столкнулись. Это замечательный инструмент для аудита файловой системы и более глубокого понимания ее.