ClamAv: простейшее сканирование сайта на вирусы

ClamAv неплохо справляется с поиском шеллов и вирусов на сайтах. Однажды он помог мне обнаружить залитый шелл на сайт с вордпресс. Проблема оказалась в каком-то плагине, но это уже выходит за рамки статьи. :)

Прежде всего нужно будет установить ClamAv:

aptitude install clamav

После установки обязательно обновите вирусные базы, напечатав в консоли команду freshclam. Отобразится результат обновления.

root@localhost:~# freshclam ClamAV update process started at Wed Jul 16 11:08:02 2014 main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo) Downloading daily-19193.cdiff [100%] daily.cld updated (version: 19193, sigs: 1082296, f-level: 63, builder: neo) bytecode.cld is up to date (version: 242, sigs: 46, f-level: 63, builder: dgoddard) Database updated (3506567 signatures) from db.local.clamav.net (IP: 194.186.47.19)

По истечении процесса обновления, можно запустить сканирование. Команда проста:

clamscan -i -r /path/to/site

Ключ -i отображает в отчёте о проверке информацию только о заражённых файлах.

Ключ -r укажет сканеру, что нужно сканировать каталоги рекурсивно.

При использовании данной команды, результат сканирования будет отображён в консоли. Если файлов много, а следить за консолью нет времени (или желания :) ), то можно запустить сканирование в оболочке Screen.

В случае необходимости, установите его:

aptitude install screen

Запускается сканирование в этом случае следующим образом:

screen -A -m -d clamscan -i -r -l clamlog.txt

Ключи -A -m -d для screen запускают сессию свёрнутой. Для разворачивания окна screen используется команда screen -r.

Свернуть окно с процессом сканирования можно нажатием сочетания клавиш ctrl+a+d.

Ключ сканера -l, который запишет лог сканирования в текстовый файл, имя которого нужно указывать сразу после ключа. Информация о найденных уязвимостях не будет отображена на экране консоли при использовании screen, поскольку с завершением сканирования screen также завершает свою работу.

Можно также просканировать файлы из списка. Для этого нужно указать ключ -f и файл, содержащий список файлов для проверки.