В навечерието на старта на курса подготвихме превод на интересен материал.

AIDE означава "Advanced Intrusion Detection Environment" (усъвършенствана система за откриване на intrusion) — това е една от най-популярните системи за наблюдение на промени в операционните системи, базирани на Linux. AIDE се използва за защита от зловреден софтуер, вируси и откриване на неразрешени действия. За да провери целостта на файловете и да открие intrusion, AIDE създава база данни с информация за файловете и сравнява текущото състояние на системата с тази база. AIDE помага за съкращаване на времето за разследване на инциденти, като се фокусира върху файловете, които са били променени.
Функции на AIDE:
- Поддръжка на различни файлови атрибути, включително: тип на файла, inode, uid, gid, разрешения, брой връзки, mtime, ctime и atime.
- Поддръжка на компресия Gzip, SELinux, XAttrs, Posix ACL и атрибути на файловата система.
- Поддръжка на различни алгоритми, включително md5, sha1, sha256, sha512, rmd160, crc32 и др.
- Изпращане на уведомления по имейл.
В тази статия ще разгледаме как да инсталираме и използваме AIDE за откриване на intrusion в CentOS 8.
Предварителни изисквания
- Сервер, работещ с CentOS 8, с минимум 2 GB RAM.
- root достъп
Започваме
Първо, се препоръчва да актуализирате системата. За целта изпълнете следната команда.
dnf update -yСлед актуализацията, рестартирайте системата, за да влязат в сила промените.
Инсталиране на AIDE
AIDE е наличен в подразбиращия репозиторий на CentOS 8. Можете лесно да го инсталирате, като изпълните следната команда:
dnf install aide -yСлед завършване на инсталацията можете да видите версията на AIDE с помощта на следната команда:
aide --versionТрябва да видите следното:
Aide 0.16
Скомпилирано с следните опции:
WITH_MMAP
WITH_PCRE
WITH_POSIX_ACL
WITH_SELINUX
WITH_XATTR
WITH_E2FSATTRS
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_CURL
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf" Налични параметри aide може да се види по следния начин:
aide --help 
Създаване и инициализация на базата данни
Първото нещо, което трябва да направите след инсталиране на AIDE, е да го инициализирате. Инициализацията включва създаване на база данни (снимка) на всички файлове и директории на сървера.
За инициализация на базата данни изпълнете следната команда:
aide --initТрябва да видите следното:
Временная метка начала: 2020-01-16 03:03:19 -0500 (AIDE 0.16)
AIDE инициализировала базу данных в /var/lib/aide/aide.db.new.gz
Количество записей: 49472
---------------------------------------------------
Атрибуты (непакетированной) базы данных:
---------------------------------------------------
/var/lib/aide/aide.db.new.gz
MD5 : 4N79P7hPE2uxJJ1o7na9sA==
SHA1 : Ic2XBj50MKiPd1UGrtcUk4LGs0M=
RMD160 : rHMMy5WwHVb9TGUc+TBHFHsPCrk=
TIGER : vkb2bvB1r7DbT3n6d1qYVfDzrNCzTkI0
SHA256 : tW3KmjcDef2gNXYqnOPT1l0gDFd0tBh9
xWXT2iaEHgQ=
SHA512 : VPMRQnz72+JRgNQhL16dxQC9c+GiYB8g
uZp6uZNqTvTdxw+w/IYDSanTtt/fEkiI
nDw6lgDNI/ls2esijukliQ==
Временная метка окончания: 2020-01-16 03:03:44 -0500 (время выполнения: 0m 25s) Команда, приведенная выше, создаст новую базу данных aide.db.new.gz в директорията /var/lib/aide. Ее можно увидеть, используя следующую команду:
ls -l /var/lib/aideРезултат:
всего 2800
-rw------- 1 root root 2863809 Янв 16 03:03 aide.db.new.gz AIDE не будет использовать этот новый файл базы данных, пока его не переименуют в aide.db.gz. Это можно сделать следующим образом:
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gzРекомендуется периодически обновлять эту базу данных, чтобы обеспечить необходимый мониторинг изменений.
Изменить местоположение базы данных можно, изменив параметр DBDIR в файла /etc/aide.conf.
Запуск проверки
Теперь AIDE готова к использованию новой базы данных. Запустите первую проверку AIDE, не внося никаких изменений:
aide --checkВыполнение этой команды займет некоторое время в зависимости от размера вашей файловой системы и объема оперативной памяти на вашем сервере. После завершения проверки вы должны увидеть следующее:
Временная метка начала: 2020-01-16 03:05:07 -0500 (AIDE 0.16)
AIDE не обнаружила различий между базой данных и файловой системой. Все в порядке!!Приведенный выше вывод говорит о том, что все файлы и каталоги соответствуют базе данных AIDE.
Тестирование AIDE
По умолчанию AIDE не отслеживает стандартный корневой каталог Apache /var/www/html. Давайте настроим AIDE на его мониторинг. Для этого нужно изменить файл /etc/aide.conf.
nano /etc/aide.conf Добавьте над строкой "/root/CONTENT_EX" следното:
/var/www/html/ CONTENT_EX Далее, создайте файл aide.txt в директорията /var/www/html/, используя следующую команду:
echo "Test AIDE" > /var/www/html/aide.txtТеперь запустите проверку AIDE и убедитесь, что созданный файл будет обнаружен.
aide --checkТрябва да видите следното:
Временная метка начала: 2020-01-16 03:09:40 -0500 (AIDE 0.16)
AIDE обнаружила различия между базой данных и файловой системой!!
Итог:
Общее количество записей: 49475
Добавленные записи: 1
Удаленные записи: 0
Измененные записи: 0
---------------------------------------------------
Добавленные записи:
---------------------------------------------------
f++++++++++++++++: /var/www/html/aide.txt Мы видим, что обнаружен созданный файл aide.txt.
После анализа обнаруженных изменений обновите базу данных AIDE.
aide --updateПосле обновления вы увидите следующее:
Начален времеви етикет: 2020-01-16 03:10:41 -0500 (AIDE 0.16)
AIDE откри различия между базата данни и файловата система!!
Нова база данни AIDE е написана в /var/lib/aide/aide.db.new.gz
Резюме:
Общо количество записи: 49475
Добавени записи: 1
Премахнати записи: 0
Променени записи: 0
---------------------------------------------------
Добавени записи:
---------------------------------------------------
f++++++++++++++++: /var/www/html/aide.txt Команда, приведенная выше, создаст новую базу данных aide.db.new.gz в директорията
/var/lib/aide/Можете да я видите с помощта на следната команда:
ls -l /var/lib/aide/Резултат:
общо 5600
-rw------- 1 root root 2864012 Ян 16 03:09 aide.db.gz
-rw------- 1 root root 2864100 Ян 16 03:11 aide.db.new.gzСега преименувайте новата база данни отново, за да може AIDE да използва новата база за проследяване на бъдещи промени. Можете да я преименувате по следния начин:
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gzСтартирайте проверката отново, за да се уверите, че AIDE използва новата база данни:
aide --checkТрябва да видите следното:
Начален времеви етикет: 2020-01-16 03:12:29 -0500 (AIDE 0.16)
AIDE не откри различия между базата данни и файловата система. Изглежда наред!!Автоматизираме проверката
Това е добра идея - да стартирате проверката на AIDE всеки ден и да изпращате отчет по имейл. Този процес може да бъде автоматизиран с помощта на cron.
nano /etc/crontabЗа да стартирате проверката на AIDE всеки ден в 10:15, добавете накрая на файла следния ред:
15 10 * * * root /usr/sbin/aide --checkСега AIDE ще ви уведомява по имейл. Можете да проверите имейла с помощта на следната команда:
tail -f /var/mail/rootЛогът на AIDE може да бъде прегледан с помощта на следната команда:
tail -f /var/log/aide/aide.logЗаключение
В тази статия научихте как да използвате AIDE за откриване на промени във файловете и идентифициране на неразрешен достъп до сървъра. За допълнителни настройки можете да промените конфигурационния файл /etc/aide.conf. В интерес на сигурността се препоръчва да се съхраняват базата данни и конфигурационният файл на носител с достъп само за четене. Допълнителна информация може да бъде намерена в документацията. .
Източник: habr.com
