Linux Malware Detect (Maldet) - это сканер, с помощью которого можно проверить сервер на наличие подозрительных и вредоносных скриптов (шеллы, скрипты для спама и т. п.) в системе в принципе или, например, в файлах сайта в частности.

    В программу заложен большой функционал:

    • Находить подозрительные файлы;
    • Находить и отправлять на карантин проблемные скрипты;
    • Находить и по возможности лечить обнаруженное;
    • Сканировать только те файлы, которые появились и были изменены за определённые промежуток времени;
    • В интерактивном режиме осуществлять мониторинг в определённой директории;
    • Работать с исключениями, добавляя в них как конкретные сигнатуры, так и пути/конкретные файлы на сервере;
    • Отправлять подозрительные файлы на анализ, на серверы Maldet’а;
    • Автоматически и вручную обновлять собственные сигнатуры и версию самого сканера;

    Установка

    Установка для CentOS и Debian одинакова:

    cd /root  
    
    wget http://www.rfxn.com/downloads/maldetect-current.tar.gz  
    

    file

    tar -zxvf maldetect-current.tar.gz  
    
    cd maldetect-*/  
    
    bash install.sh  
    

    Установочный скрипт кладет исполняемый файл в /usr/local/maldetect/maldet и делает на него символическую ссылку /usr/local/sbin/maldet. Также скрипт создает файл /usr/lib/libinotifytools.so.0. Создается ежедневное cron-задание в /etc/cron.daily/maldet

    Использование

    Сканировать только файлы, измененные за последние 5 дней:

    maldet -r / 5  
    

    По завершении сканирования будет выведено общее количество просканированных файлов, количество инфицированных и количество излеченных файлов.

    file

    Также будет выведен номер отчета, который можно посмотреть командой, например:

    maldet --report 220718-1809.1790255  
    

    file

    Обновить базы сигнатур:

    maldet -u  
    

    Переместить найденные зараженные файлы в карантин (в каталог /usr/local/maldetect/quarantine):

    maldet -q 220718-1809.1890277  
    

    Вытащить файлы из карантина:

    maldet -s 220718-1809.1890277  
    

    Пробовать очистить зараженные файлы от вредоносных вставок кода:

    maldet -n 220718-1809.1890277  
    

    Добавить вредоносный код в базу сигнатур maldet:

    maldet -c badfile.php  
    

    Конфигурационный файл maldet находится в /usr/local/maldetect/conf.maldet:

    # [ General Options ]
    email_alert="1" Включаем уведомления от maldet’а на почту. Ведь мы сознательные администраторы и следим за происходящим на сервере.  
    email_addr="[email protected]" Указываем ящик, на который хотим получать уведомления.  
    email_ignore_clean="0" Получение уведомлений об очищенных файлах. Ставим здесь 0, если далее мы включим автоматическое «лечение» найденных проблемных скриптов. На этом вопросе остановимся отдельно.  
    
    # [ SCAN OPTIONS ]
    scan_max_depth="15"  Определяем максимальную глубину сканирования.  
    scan_min_filesize="24"  Задаём минимальный размер файла.  
    scan_max_filesize="2048k" Задаём максимальный размер файла, на который будет образать внимание сканер.  
    scan_clamscan="1" Будет ли сканер использовать установленный на сервере ClamAV.  
    scan_tmpdir_paths="/tmp /var/tmp /dev/shm /var/fcgi_ipc" Директории для временных файлов, которые maldet будет проверять.  
    scan_user_access="0" Разрешить ли не root пользователям запускать сканирование.  
    scan_ignore_user="" Пользователи через запятую или пробел, которые будут игнорироваться при сканировании.  
    scan_ignore_group="" Группы через запятую или пробел, которые будут игнорироваться при сканировании.  
    
    # [ QUARANTINE OPTIONS ]
    quarantine_hits="1" Сразу же отправляем в карантин найденные подозрительные файлы.  
    quarantine_clean="0" Попытаться «вылечить» обнаруженное. Стоит ли включать эту опцию, каждый администратор решает сам. Автор предпочитает держать её отключенной, при включенном автоматическом карантине и уведомлениях об этом.  
    

    Ежедневная проверка новых файлов на сервере

    При установке, maldet создаёт для планировщика файл /etc/cron.daily/maldet, если ежедневные проверки новых файлов на сервере не нужны, то файл достаточно просто удалить, либо переместить его куда-то оттуда. В самом файле уже учтены все пути, которые создаются при работе с современными панелями управления сервером, обычно, модификация этого файла не требуется, только если администратору понадобится добавить какой-то не стандартный путь для ежедневной проверки.

    Запускаясь ежедневно, maldet будет проверять новые файлы на сервере, найденное будет обрабатываться в соответствии с настройками в конфигурационном файле.


    Если у Вас возникли трудности в настройке или появились дополнительные вопросы, вы всегда можете обращаться в нашу службу поддержки через систему тикетов.