Как установить и использовать AIDE (Advanced Intrusion Detection Environment) в CentOS 8
В преддверии старта курса «Администратор Linux» подготовили перевод интересного материала.
AIDE расшифровывается как “Advanced Intrusion Detection Environment” (усовершенствованная система обнаружения вторжений) — это одна из самых популярных систем для мониторинга изменений в операционных системах на базе Linux. AIDE используется для защиты от вредоносных программ, вирусов и обнаружения несанкционированных действий. Для проверки целостности файлов и обнаружения вторжений AIDE создает базу данных с информацией о файлах и сравнивает текущее состояние системы с этой базой. AIDE помогает сократить время расследования инцидентов, сосредоточившись на файлах, которые были изменены.
- Поддержка различных атрибутов файлов, в том числе: тип файла, inode, uid, gid, разрешения, количество ссылок, mtime, ctime и atime.
- Поддержка сжатия Gzip, SELinux, XAttrs, Posix ACL и атрибутов файловой системы.
- Поддержка различных алгоритмов, включая, md5, sha1, sha256, sha512, rmd160, crc32 и т. д.
- Отправка уведомлений по электронной почте.
В этой статье мы рассмотрим, как установить и использовать AIDE для обнаружения вторжений в CentOS 8.
Предварительные требования
Начинаем
Сначала рекомендуется обновить систему. Для этого выполните следующую команду.
После обновления перезапустите систему, чтобы изменения вступили в силу.
Установка AIDE
AIDE доступен в дефолтном репозитории CentOS 8. Вы можете ее легко установить, выполнив следующую команду:
После завершения установки можно посмотреть версию AIDE с помощью следующей команды:
Вы должны увидеть следующее:
Доступные параметры aide можно посмотреть следующим образом:
Создание и инициализация базы данных
Первое, что вам нужно сделать после установки AIDE — это ее инициализировать. Инициализация заключается в создании базы данных (снимка) всех файлов и каталогов сервера.
Для инициализации базы данных выполните следующую команду:
Вы должны увидеть следующее:
Приведенная выше команда создаст новую базу данных aide.db.new.gz в каталоге /var/lib/aide . Ее можно увидеть, используя следующую команду:
AIDE не будет использовать этот новый файл базы данных, пока его не переименовать в aide.db.gz . Это можно сделать следующим образом:
Рекомендуется периодически обновлять эту базу данных, чтобы обеспечить необходимый мониторинг изменений.
Изменить местоположение базы можно, изменив параметр DBDIR в файле /etc/aide.conf .
Запуск проверки
Теперь AIDE готова к использованию новой базы данных. Запустите первую проверку AIDE, не делая никаких изменений:
Выполнение этой команды займет некоторое время в зависимости от размера вашей файловой системы и объема оперативной памяти на вашем сервере. После завершения проверки вы должны увидеть следующее:
Приведенный выше вывод, говорит, что все файлы и каталоги соответствуют базе данных AIDE.
Тестируем AIDE
По умолчанию AIDE не отслеживает дефолтный корневой каталог Apache /var/www/html. Давайте настроим AIDE для его просмотра. Для этого надо изменить файл /etc/aide.conf .
Добавьте над строкой «/root/CONTENT_EX» следующее:
Далее, создайте файл aide.txt в каталоге /var/www/html/ , используя следующую команду:
Теперь запустите проверку AIDE и убедитесь, что созданный файл будет обнаружен.
Вы должны увидеть следующее:
Мы видим, что обнаружен созданный файл aide.txt .
После анализа обнаруженных изменений обновите базу данных AIDE.
После обновления вы увидите следующее:
Приведенная выше команда создаст новую базу данных aide.db.new.gz в каталоге
Вы можете увидеть ее с помощью следующей команды:
Теперь переименуйте новую базу данных еще раз, чтобы для отслеживания дальнейших изменений AIDE использовала новую базу. Переименовать можно следующим образом:
Запустите проверку еще раз, чтобы убедиться, что AIDE использует новую базу данных:
Вы должны увидеть следующие:
Автоматизируем проверку
Это хорошая идея — запускать проверку AIDE каждый день и отправлять отчет по почте. Этот процесс можно автоматизировать с помощью cron.
Для запуска проверки AIDE каждый день в 10:15 добавьте в конец файла строку:
Теперь AIDE уведомит вас по почте. Проверить почту можно следующей командой:
Лог AIDE можно посмотреть с помощью следующей команды:
Блог начинающего линуксоида.
советы, руководства, инструкции.
Страницы
вторник, 18 августа 2015 г.
AIDE — контроль целостности ваших файлов
AIDE (Advanced Intrusion Detection Enviornment, расширенная среда обнаружения вторжений) — инструмент для проверки целостности файлов. Он создаёт снимок состояния всех файлов в системе и сохраняет его в своей базе данных, что впоследствии может использоваться для определения модификации файлов (например злоумышленниками).
AIDE — утилита с открытым исходным кодом, и доступна в большинстве дистрибутивов Linux. Пример будет производиться на Debian 8. Примечание: крайне желательно устанавливать AIDE на свежеустановленную систему.
Для начала, установим утилиту:
sudo apt install aide
Теперь необходимо настроить мониторинг, и указать какие директории и файлы включить в снимок состояния. Это нужно сделать для того, чтобы не было ложных срабатываний и записей в логе (к примеру из-за файлов в каталоге /proc, данные в котором регулярно изменяются). Для этого открываем конфигурационный файл:
sudo nano /etc/aide/aide.conf
И добавляем следующий блок:
#проверять права доступа, владельца, группу, размер, время последней модификации, время изменения прав, контрольную сумму md5
BinLib = p+u+g+s+m+c+md5
#Указываем список каталогов для проверки
/bin BinLib
/etc BinLib
Сохраняем. Вы можете указать свои ключи для проверки, согласно этому списку:
p — права доступа
i — inodes
n — количество ссылок
u — владелец
g — группа
s — размер
S — проверка увеличения размера
b — число блоков
m — mtime — время последней модификации
a — atime — время последнего доступа
c — ctime — время изменения дескриптора файла (например изменение прав и т.п.)
md5 — контрольная сумма MD5
sha1 — контрольная сумма SHA1
rmd160 — контрольная сумма RMD160
tiger — контрольная сумма Tiger
R == p+i+n+u+g+s+m+c+md5
L == p+i+n+u+g
E — Empty — пусто
> — растущий лог-файл p+u+g+i+n+S
= — Сканировать каталог НЕ рекурсивно (сам каталог), например,
=/boot ! — НЕ сканировать файл или каталог, например,
!/var/log/apache
Также в каталоге /etc/aide/aide.conf.d, есть множество различных конфигов. Внимательно их просмотрите, и можете удалить лишние. В этом же каталоге вы можете оставить свои файлы настроек. Теперь создадим базу данных:
sudo aide -c /etc/aide/aide.conf -i
Для проверки работы, создадим файл в /bin:
sudo touch /bin/test_aide
И выполним проверку:
sudo aide -c /etc/aide/aide.conf -u
AIDE 0.16a2-19-g16ed855 found differences between database and filesystem!!
Start timestamp: 2015-08-18 18:52:01 +0900
Summary:
Total number of files: 2276
Added files: 1
Removed files: 0
Changed files: 1
Directory: /bin
Mtime : 2015-08-18 18:51:40 , 2015-08-18 18:52:00
Ctime : 2015-08-18 18:51:40 , 2015-08-18 18:52:00
Для того чтобы данные стали актуальны (предыдущая команда создаёт новую базу данных), обновим БД:
Заметки о безопасности Linuх: поддержка целостности файлов с помощью AIDE
AIDE (Advanced Intrusion Detection Enviornment, расширенная среда обнаружения вторжений) — инструмент для проверки целостности файлов. Это open-source приложение, замена TRIPWIRE. Позволяет делать снимки всех основных конфигурационных и исполняемых файлов, а также состояния библиотек. И в случае компрометации системы помогает определить, какие файлы были изменены. Программу можно скачать с http://sourceforge.net .
В первую очередь скачайте исполняемые файлы и файл подписи, импортируйте и сверьте ключи GPG.
Компиляция и установка AIDE
Чтобы узнать требования пакетов, прочтите документ INSTALL в исходниках AIDE. Для установки и работы AIDE необходима утилита mhash. Скачать ее можно с sourceforge.net.
Распакуйте пакеты AIDE и MHASH.
Исполняемые файлы и библиотеки установятся в /usr/local .
Исполняемые файлы скопируются в /usr/local/bin .
Примечание: для отслеживания атак типа «человек посередине» (man-in-the-middle) полезно записывать контрольные суммы MD5 для исполняемых файлов.
Настройка и мониторинг файлов с помощью AIDE
Шаг 1. Генерация базы данных AIDE (создание снимка файлов)
Для определения правил (какие директории отслеживать) отредактируйте конфигурационный файл aide.conf , находящийся в aide-0.10/doc/
Теперь создайте базу данных AIDE.
Эта команда просканирует все файлы в директории /etc/ и сохранит их снимок в новой базе данных под названием aide.db.new .
Примечание: AIDE использует команду stat для получения информации о файле, включающую разрешения, инод, время последнего доступа, время модификации и пр., и хранит эту информацию в файле aide.db .
Сравнение текущего состояния с базой данных AIDE:
Команда покажет текущее состояние директории /etc/ , сравнивая его со снимком в aide.db , полученным предыдущей командой.
Теперь протестируйте функциональность AIDE.
Измените любой файл в директории /etc/ .
И повторите сравнение командой
Она покажет нам отличия файла от его предыдущего состояния.
Примечание: Команду aide —check необходимо выполнять как можно чаще. И если обнаруживаются изменения, следует убедиться в их легальности и снова обновить базу данных AIDE.
Обновление базы данных AIDE после проверки:
Снимок в базе данных обновится до текущего состояния директории /etc/ .
Добавление других директорий для отслеживания:
Другие варианты конфигурации:
Эта команда сгенерирует новую базу данных для всех директорий, определенных в aide.conf .
Примечание: Путем сравнения текущего состояния с сохраненным снимком в базе данных мы сможем проследить, какие файлы были изменены в случае любой компрометации системы. После создания aide.db лучше всего сохранить исполняемые и конфигурационные файлы AIDE и саму базу данных на носитель, доступный только для чтения. Это повысит целостность базы данных AIDE.
В будущем в случае любого подозрения на эксплойт можно загрузить сохраненную базу данных с конфигурационными и исполняемыми файлами и провести аудит системы.