пятница, 3 июня 2016 г.

Проверка Linux на вирусы

Раньше мы уже говорили о вирусах в Linux. Большинство людей считают, что вирусов в Linux нет и в кое чем они правы. Ведь вредоносных программ, которые сами могли бы распространятся по системе и заряжать другие компьютеры в сети минимум. Известные широкой общественности программы такого рода для Linux можно сосчитать на пальцах. Но есть и другой тип угроз, более характерный для Linux. Это руткиты, программы которые устанавливаются вручную и скрывают свою деятельность в системе.
Эти программы могут предоставлять установившему их вам человеку полный доступ к вашей системе, вычислительным ресурсам и данным. Не стоит недооценивать эту опасность. Если ваш компьютер подключен к интернет без использования локальной сети (роутера) и без технологии NAT, то обратится к нему может любой человек из сети провайдера. Для этого даже не обязательно знать ваш ip адрес. Злоумышленик может просто перебирать все адреса в своей подсети и если на вашем компьютере или сервере окажется искомая им уязвимость, например слабый пароль ssh или любая другая уязвимость в системном сервисе программная или недостаток настройки - ваш компьютер будет взломан.
Вы можете посмотреть содержимое файла /var/log/audit.log. Здесь фиксируются все неудачные попытки входа в систему, и в том числе по ssh. Я был удивлен когда увидел что мой пароль пытались подобрать. Ну а если уже хакер получит доступ к вашей системе, тут у него уже много вариантов для действий - всплывают все уязвимости в системных библиотеках, ядре которые можно использовать для обхода защитных механизмов Linux и повышения привилегий в системе. По этому не лишним будет следить за актуальностью своего программного обеспечения, в новом ПО скорее всего, уже закрыли известные уязвимости, а также иногда проверять компьютер специальной программой для поиска руткитов. В этой статье мы рассмотрим как проверить компьютер на вирусы в Linux.
Для поиска руткитов мы будем использовать утилиту rkhunter или RootkitHunter. Мы рассмотрим как ее установить и настроить для правильной проверки.

Что такое Rkhunter?

RkHunter (Rootkit Hunter) - это инструмент для сканирования системы Linux / Unix с открытым исходным кодом, выпущенный под лицензией GPL. Утилита выполняет сканирование Linux на предмет руткитов, бекдоров, локальных эксплойтов и уязвимостей. На данный момент известно 242 руткита, и всех их программа может найти, и удалить, если они были установлены в вашей системе. Программа - всего лишь скрипт, позволяющий проверить локальные файлы, и обнаружить известные руткиты. Также выполняется проверка изменения системных команд, файлов запуска, а также проверяет сетевые интерфейсы, на предмет прослушивания определенных портов.
Установить программу в Ubuntu можно командой:
$ sudo apt-get install rkhunter
Если у вас другой дистрибутив, вы всегда можете собрать программу из исходников:
$ cd /tmp
$ wget http://downloads.sourceforge.net/project/rkhunter/rkhunter/1.4.2/rkhunter-1.4.2.tar.gz
$ tar -xvf rkhunter-1.4.2.tar.gz
$ cd rkhunter-1.4.2
$ ./installer.sh --layout default --install

Обновление RkHunter

Перед тем как будет выполнена проверка linux на вирусы, необходимо обновить базу данных утилиты. Для этого выполните:
$ rkhunter --update
$ rkhunter --propupd
Обновление желательно выполнять регулярно, поэтому давайте создадим специальный скрипт и будем запускать его с помощью cron каждый день. Для этого создайте файл скрипта в папке /etc/cron.daily:
$ vi /etc/etc/cron.daily/rkhunter.sh
#!/bin/sh
(
/usr/local/bin/rkhunter --versioncheck
/usr/local/bin/rkhunter --update
/usr/local/bin/rkhunter --cronjob --report-warnings-only
) | /bin/mail -s 'rkhunter Daily Run (Ваш сервер)' your@email.com
Здесь в последней строчке мы запланировали проверку и отправку уведомления вам на Enail. Для работы необходимо заменить your@email.com на ваш адрес электронной почты.
Теперь осталось только дать программе права на выполнение:
$ chmod 755 /etc/cron.daily/rkhunter.sh

Проверка Linux на вирусы Rkhunter

Для того чтобы проверить Linux на вирусы всю систему выполните от суперпользователя:
$ rkhunter --check
Программа кроме вывода информации на экран, создаст лог проверки, который можно прочитать с помощью команды:
$ cat /var/log/rkhunter.log
К сожалению программа работает только на английском, поэтому, чтобы понять в каком состоянии ваша система вам придется немного понимать английский.
А теперь давайте рассмотрим еще несколько опций программы которые мы уже использовали, или которые вам могут пригодится:
  • --vl, --verbose-logging - максимально подробный вывод
  • --quiet - минимум информации в выводе
  • -l, --logfile - записать лог программы в свой файл
  • --cronjob - не интерактивный режим проверки, используется для запуска с помощью cron, отсюда и название.
  • --list - позволяет посмотреть какие возможности проддерживает программа, можно передать несколько параметров, test - тесты, lang - языки, rootkits - руткиты.
  • --unlock - удаляет файл блокировки базы данных, может быть полезна если предыдущий сеанс работы с программой был завершен некорректно.
Например, чтобы посмотреть все руткиты, которые может найти программа выполните:
$ sudo rkhunter --list rootkits

Что такое Chkrootkit?

Chkrootkit - это классический инструмент позволяющий не только искать руткиты Linux, но и проверять систему на признаки чужого присутстсвия. Программа позволяет ваш компьютер или сервер на наличие подозрительных процессов, руткитов и проверяет список известных руткитов. Функциональность программы очень похожа на Rkhunter.
Программа состоит из нескольких отдельных утилит:
  • chkrootkit - скрипт для проверки системы
  • ifpromisc - сканирование интерфейсов на предмет неразборчивого режима
  • chklastlog - проверить лог lastlog на предмет удаления записей
  • chkwtmp - проверка лога wtmp на предмет удаления записей
  • chkproc - писк троянских программ
Установить программу в Ubuntu можно с помощью команды:

$ sudo apt-get install chkrootkit
Если у вас другой дистрибутив, то вы можете собрать программу из исходников:
$ wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
$ tar xvfz chkrootkit.tar.gz
$ cd chkrootkit-*/
$ make sense
$ make install

Проверка системы с помощью chkrootkit

Команды выполняются без параметров. Достаточно запустить нужную утилиту чтобы найти руткиты linux:
$ sudo chkrootkit
Аналогично вы можете выполнить другую утилиту, чтобы проверить на модификацию lastlog:
$ sudo chklastlog

Выводы

Вот и все. Выполняйте регулярное сканирование Linux, чтобы вовремя выявить все угрозы, особенно это актуально для серверов, которые чаще всего могут подвергаться хакерским атакам.
Источник http://losst.ru/proverka-linux-na-virusy

Комментариев нет: