22 January 2021
Денис Колисниченко
Как сетевые вирусы попадают на рабочие станции локальной сети? Как правило, существует два способа: по e-mail и по WWW. Для защиты от WWW-вирусов вполне хватит возможностей Антивируса Касперского - как с ним работать, думаю, объяснять не нужно. В принципе, Антивирус Касперского (KAV) может проверять и почтовые базы - он просто интегрируется с различными почтовыми клиентами, а если его интеграция с той или иной программой невозможна, KAV может запускаться в режиме монитора и проверять все открывающиеся файлы.
Сейчас мы упростим работу KAV. Мы установим антивирус на почтовом сервере. Он будет проверять получаемую пользователями почту - сообщение с вирусом даже не дойдет до компьютера пользователя. Нет, мы не будем интегрировать тот же KAV с агентом MTA. Объясню почему: мы не знаем, какой MTA будет установлен у вас - sendmail, postfix, qmail или какой-то другой экзотический агент. Также не хочется вносить изменение в конфигурационные файлы MTA, чего требует интеграция KAV. Предлагаю более универсальный вариант: мы установим "прозрачный" почтовый антивирус - о том, что он проверяет почту на наличие вирусов, не будет знать, ни пользователь, ни программа-агент. К тому же такой способ решает еще одну проблему. Если интегрировать антивирус с MTA, то он будет проверять почту, которую передает/принимает наш MTA. Но не будет проверять почту с других серверов. Другими словами, если у пользователя есть какой-то ящик вне сервера нашей сети, на котором установлен антивирус, например, на mail.ru, то почта проверена не будет. Наш способ позволяет проверить все POP3-соединения, вне зависимости, к какому серверу они принадлежат.
Для организации "прозрачного" антивируса нам понадобится сервер P3Scan - «прозрачный» прокси-сервер для POP3-клиентов и антивирус, способный работать с ним. В качестве антивируса мы будем использовать ClamAV - что-то новенькое, а не привычный KAV. Загрузить ClamAV можно по адресу https://www.clamav.net. Это бесплатный антивирус для Linux. Несмотря на то, что он бесплатный, в его базе содержится более 30000 описаний червей, вирусов и прочей нечисти.
ClamAV поставляется в виде RPM-пакета для различных дистрибутивов. Откомпилированные файлы доступны для Red hat/Fedora, Debian, Mandrake и PLD (Polish Linux Distribution), а для всех остальных дистрибутивов можно скачать исходные коды и откомпилировать их. После установки антивируса, его сразу можно использовать. Использовать антивирус очень просто: просто укажите каталог, который хотите просканировать, а перед ним - опцию -r, чтобы Clam просканировал и его подкаталоги:
# clamav -r /home/den
Статус каждого проверенного файла будет выведен на консоль:
/home/den/clam-av-0.15/support/amavisd/README: OK /home/den/clam-av-0.15/test/eicar.com: Eicar-Test-signature FOUND /home/den/clam-av-0.15/clamscan: OK
Если напротив файла стоит OK, значит, он не содержит вирус, а если - FOUND, то файл инфицирован, рядом вы найдете имя вируса. Clam умеет находить не только Linux-вирусы, но и вирусы для DOS и Windows. Для обновления антивируса используется программа freshclam. Freshclam может запускаться из командной строки или как демон и производить автоматическое обновление базы данных (удобно, если у вас выделенная линия).
# freshclam ClamAV update process started at Mon Nov 7 17:49:26 2005 Reading CVD header (main.cvd): Ok Main.cvd is up to date (version: 22, sigs: 24229, f-level: 1, builder: tkojm) Reading CVD header (daily.cvd): Ok Downloading daily.cvd [*] Daily updated (version: 406, sigs: 1212, f-level: 2, builder: diego) Database updated (25441 signatures) from database.clamav.net (80.69.67.3)
База данных антивируса и соответствующая ей контрольная сумма (MD5) хранятся на разных серверах, чтобы убедиться в целостности данных. Ручное обновление баз данных - наверняка не лучшее решение, поэтому freshcam может запускаться как демон, для этого нужно указать параметры -d (запуска как демон) и -c (период обновления). Запустим freshclam как демон с периодом обновления два раза в сутки:
# freshclam -d -c 2
Демон сбрасывает полномочия root’а и запускается от имени пользователя clamav. Чтобы демон запускался при старте системы, нужно добавить его вызов в сценарии инициализации системы. Помните, что эффективность любого антивируса зависит от того, как часто вы обновляете антивирусные базы, поэтому рекомендуется настроить автоматическое обновление.
Теперь мы можем перейти к P3Scan. Работает от так:
Последняя версия P3scan доступна по адресу https://sourceforge.net/projects/p3scan/. Для установки p3scan распакуйте архив в каталог /usr/src/ и выполните команды make и make install. После этого вам нужно отредактировать конфигурационный файл - /etc/p3scan/p3scan.conf. В большинстве случаев вас устроят значения по умолчанию: вам нужно только раскомментировать их. Для подключения ClamAV используйте следующие параметры (если нужно, измените путь к исполнимому файлу clamdscan):
virusregexp = .*: (.*) FOUND scanner = /usr/bin/clamdscan --no-summary -i scannertype = basic
После этого добавьте дополнительное правило в ваш набор правил iptables (для перенаправления POP3-трафика на локальный порт 8110):
# iptables -t nat -A PREROUTING -p tcp --dport 110 -j REDIRECT --to 8110
Внимание!
Какой бы антивирус вы не выбрали - KAV, Dr.Web, ClamAV помните: он будет эффективно выполнять свои функции, если вы регулярно обновляете его базу данных. Также нужно провести «профилактическую» беседу с пользователями. Они не должны запускать полученные из недостоверных источников программы - сначала их нужно проверить антивирусом. Также нельзя открывать различные прикрепленные к письму файлы (программы, документы MS Office и даже картинки) без предварительной проверки антивирусом - даже если письмо пришло от известного вам адресата. Не секрет, что большинство Windows-червей распространяются по e-mail. Лучше всего создать на каждом компьютере для каждого пользователя две учетные записи - одна для работы в Интернете, а другая - для обычной работы. Тогда вирус, запущенный в одной учетной записи не сможет повредить файлы другой учетной записи.
И еще: наверняка в вашей сети найдутся компьютеры под управлением Windows XP. Проследите, чтобы все пользователи работали как обычные пользователи системы (даже без права установки программ), а не как Администраторы - смысл создавать несколько учетных записей администраторов - вирусу все равно от имени которого администратора действовать. Также не нужно заниматься самообманом. Не нужно думать, мол, если на сервере есть брандмауэр (тот же iptables) и установлен почтовый антивирус, то все в порядке и все компьютеры сети защищены. На пользовательские компьютеры желательно установить персональный брандмауэр, антивирус и анти-шпионские программы. В качестве брандмауэра я рекомендую Outpost Firewall Pro версии 3.0 (или выше, если на момент выхода номера из печати таковая понадобится). Я считаю, что это одна из лучших программ в своем классе. Ссылку давай на Outpost давать не буду - думаю, все мы знаем, где его достать.
В качестве антивируса - лучший выбор это KAV или DrWeb. Эти антивирусы довольно мощны и часто обновляются. Если с брандмауэром и антивирусом все ясно, то возникает вопрос: а что такое шпионское программное обеспечение? Spyware - это шпионское программное обеспечение. В последнее время угроза Spyware является очень актуальной - все больше и больше пользователей подвергается атакам Spyware-программ, которые собирают информацию о посещаемых пользователем Web-страницах, об установленных на компьютерах приложениях и отправляют все это третьей стороне. Также spyware-программы могут отправлять личные данные пользователя, такие как ключи электронных платежных систем. Как правило, пользователь даже и не подозревает об этом.
Кроме этого, spyware может изменять тексты почтовых сообщений, изменять файлы на жестком диске и даже страницы, выводимые браузером. Ясно, что разносторонние действия spyware занимают много системных ресурсов, что снижает производительность компьютера.
Наибольшее число spyware-предназначено для браузера Internet Explorer, поэтому я рекомендую вам сменить браузер - можно установить Oper'у или Mozill'у.
Читатель может спросить, а причем здесь Linux? Не будем скрывать, что у большинства из нас, Linux-пользователей, на компьютере установлено минимум две операционные системы Linux и Windows. При этом мы с одинаковой периодичностью работаем с обеими ОС. А что, если какой-нибудь вирус возьмет да и "снесет" таблицу разделов жесткого диска? Тогда и от Linux ничего не останется. Безопасность одна для всех.