Профилактика вирусных заболеваний ПК


Трудно найти пользователя ПК, который никогда не слышал о компьютерных вирусах. Это одна из самых широко известных проблем. Однако она же, наверное, самая запутанная и мифологизированная. Часто даже ИТ-специалисты высказывают крайне противоречивые мнения о компьютерных вирусах. Цель данной статьи — осветить часто задаваемые вопросы о вредоносных программах и организации многоуровневой защиты от них. Как снизить вероятность заражения? Чтобы ответить на этот вопрос, нужно сначала разобраться, от чего же мы хотим себя защитить.

Часть 1. Занимательная вирусология

История

Сейчас трудно сказать, когда появились первые компьютерные вирусы, поскольку само понятие компьютерного вируса достаточно размытое. В быту вирусами часто называют любую программу, мешающую работать. В словарях и энциклопедиях вирусом называют программу или часть программы, способную к самокопированию в другие программы или на другие компьютеры. С этой точки зрения, вирусом не является «самоперемещающаяся» программа, удаляющая предыдущую копию после запуска новой (и, таким образом, не размножающаяся). Однако если такая программа перед перемещением будет удалять нужные файлы с диска, то с точки зрения пользователя она — типичный вирус. Её никто не звал, а она пришла, всё испортила и пошла портить дальше. Мы не будем разводить здесь терминологические дискуссии. Считайте, что в этой статье вирусом называется любая зловредная программа.

Если верить Истории компьютерных вирусов на Википедии, то первые самовоспроизводящиеся программы создавали ещё на границе 50-60-х годов прошлого века. Правда, делали это из академического интереса — моделировали на компьютере жизнь организмов. В конце 70-х появляются зловредные программы, которые под видом полезных выкладывались на «электронные доски объявлений» (BBS), но после запуска уничтожали данные пользователей. И вот, в начале 80-х, появились первые «бесспорные» со всех точек зрения вирусы — они размножались и мешали работать. В 1984 году выходит статья Фреда Коэна «Компьютерные вирусы — теория и эксперименты» (Fred Cohen. Computer Viruses — Theory and Experiments), в которой и введён термин «компьютерный вирус».

В том же 1984 году появляются первые антивирусные программы — Check4Bomb и Bombsqad. Check4Bomb искала подозрительные участки в загрузочном модуле (вывод текстовых сообщений, команды записи на диск и т. п.) Такой поиск сейчас принято называть «эвристическим». Он основывается на опытных знаниях о вирусах и понимании того, как должна «правильно» работать ОС. К примеру, вирус Elk Cloner 1981 года показывал стишок при загрузке DOS на ПК Apple II. А зачем вообще загрузчику DOS показывать пользователю длинные сообщения? Вторая программа — Bombsqad — перехватывала операции записи и форматирования, выполняемые через BIOS в обход ОС. Такое наблюдение за работой других программ в реальном времени сейчас называют антивирусным монитором. В 1985 году Том Нефф начал распространять по BBS список опасных заражённых программ («грязная дюжина»). Это — прообраз сигнатурной защиты, то есть поиска заранее известных зловредных программ.

С тех пор идёт непрестанная гонка вооружений: кто-то придумывает всё более изощрённые вирусы, другие разрабатывают более совершенные антивирусы. Гонка вооружений всегда приводит к крупным затратам и быстрому прогрессу участников. Сегодня большинство вирусов и антивирусов являются сложнейшими программными комплексами, в которые вложены тысячи человеко-часов высококлассных программистов. Интересующиеся могут сами поискать в интернете штаты ведущих производителей антивирусных программ и сравнить их со штатом, к примеру, ближайшего завода. Закончится ли когда-нибудь эта гонка? О полной победе над вирусами неоднократно сообщали многие уважаемые специалисты. В 1988 году Питер Нортон назвал компьютерные вирусы несуществующей угрозой, чем-то вроде «городской легенды». В 1995 году Билл Гейтс заявил на пресс-конференции, что выход Windows 95 покончил с вирусной угрозой. Недавно Стив Джобс заверил, что iPhone полностью защищен от вредоносных программ. Увы. Компьютерные вирусы — часть прогресса. Пока идёт прогресс, будут появляться и новые вирусы. Поэтому мы переходим от исторического экскурса к насущным проблемам.

Кто пишет вирусы

Один из распространённых мифов состоит в том, что вирусы пишут сами производители антивирусных программ, чтобы потом продавать свои продукты. Я не буду даже пытаться бороться с этим мифом, так как конспирология обладает всеми признаками религии. А победить религию можно только другой религией. Рационально мыслящим людям же стоит посмотреть Хронологию компьютерных вирусов и червей на Википедии. Авторы многих вирусов известны поимённо, некоторые из них за вирусописательство оказались в местах не столь отдалённых. Назначено вознаграждение за информацию о некоторых лицах, причастных к созданию вирусов. Справедливо сказать, что производители антивирусов иногда «перегревают» интерес к теме, но не более того.

Сложно ли сделать компьютерный вирус? Смотря какой. В самовоспроизведении программы нет принципиальной сложности. Все первые вирусы были написаны одиночками-энтузиастами, часто студентами. Даже сейчас можно создать вирус вообще без специальных средств разработки, с помощью одной только командной строки Windows (см. Bat-вирус). Вот только распространяться по сети он вряд ли будет. С 80-х годов прошлого века ОС существенно поумнели и теперь обладают многоуровневой системой защиты. Они просто не позволят процессу, запущенному рядовым пользователем, менять системные настройки ПК, тем более настройки другого ПК по сети. Подобные простейшие вирусы могут жить только при попустительстве системных администраторов, давших всем полные права на любые действия. Поэтому первый ключевой элемент антивирусной защиты — разграничение прав.

Положим, права разграничены. Тогда вирус должен найти пробел в системе безопасности, обойти защиту. Это уже задача принципиально иного уровня. Все массовые современные ОС написаны большими коллективами с высококлассными кадрами, с многоуровневой системой тестирования и поиска ошибок. Чтобы найти уязвимость, нужны не менее квалифицированные специалисты и не меньшие затраты на организацию работы. Следовательно, в разработку вируса необходимо вложить большие деньги. Если кто-то вкладывает деньги, то либо ему их девать некуда (см. конспирология), либо он хочет получить прибыль. Давайте рассмотрим, какие коммерческие цели преследуют компьютерные вирусы и к каким последствиям они приводят. Поскольку разных зловредных программ сейчас очень много, то для упрощения изложения мы условно разделим вирусы на две группы. Первая — вирусы с изначально записанным вредоносным алгоритмом, не требующие удалённого управления со стороны своего автора. Назовём их автономными. Вторая — вирусы, позволяющие автору удалённо запускать произвольный вредоносный код. Таким образом, автор вируса получает в своё распоряжение целую сеть подконтрольных компьютеров, которую называют «ботнет».

Автономные вирусы

Исторически, первые вирусы были автономными. Автор писал вирус и выпускал его «на волю». Дальше вирус жил своей, независимой жизнью. Сейчас автономные вирусы чаще всего преследуют следующие цели.

  1. Вымогательство (Ransomware). Такие вирусы блокируют работу ПК (или мешают другим образом) и просят пользователя заплатить за снятие блокировки. Ещё в 1989 году появился вирус AIDS, который шифровал имена файлов на диске C: и просил за расшифровку перевести $189 на счёт в Панаме. Автора AIDS вскоре арестовали при обналичивании чека, однако желающие лёгких денег не переводятся. Сегодня массово распространено вымогательство через блокировку рабочего стола Windows. Чтобы её снять, пользователю предлагается отправить платную SMS на указанный номер. В простейшем случае такой вирус безобиден — вы теряете время на разблокировку по стандартной инструкции (есть на многих сайтах, к примеру у Касперского, у Dr.Web, у ESET). А вот в случае с шифровкой данных заражение может привести к их полной потере.
  2. Воровство данных. В первую очередь производителям вирусов интересны учётные данные — пароли, номера кошельков платёжных систем и тому подобное. Первые вирусы, ворующие пароли доступа в интернет, зафиксированы ещё в 1997 году. Сейчас существует много способов такого воровства, к примеру:
    1. Запустить программу, следящую за действиями пользователя (spyware) — в том числе, за нажимаемыми клавишами (кейлогеры), снимками экрана, посещаемыми сайтами и т. п.
    2. Подложить пользователю вместо настоящей страницы ввода учётных данных поддельную, которая потом отправит пароль «куда следует» (фишинг).
    3. Подложить клиент-серверной программе вместо настоящего сервера поддельный, который извлечёт пароли из передаваемого трафика. Чаще всего для этого изменяются настройки DNS сетевого подключения или содержимое файла hosts. В результате ОС по имени настоящего сервера получит IP-адрес сервера мошенников и отправит ему логин и пароль.
    4. Перенаправить весь веб-трафик на сервера мошенников. Для этого изменяются настройки шлюза или прокси по умолчанию.
    5. Найти и извлечь пароли, которые сохранены в различных прикладных программах. У вас бывало, к примеру, что после замены одной программы обмена сообщениями на другую та автоматом находит и импортирует настройки старой — учётную запись, список контактов? Удобно? Вирусам тоже.
    Зафиксированный на сегодня рекорд компьютерного воровства — Альберт Гонсалес в 2005–2007 годах своровал и продал данные о более чем 170 миллионах банковских карт. Про возможные способы воровства данных из банк-клиентов можно почитать в статье на Хабре «Атака на банк-клиент…». Взгляд со стороны работника банка и далее по ссылкам в ней. Для конечного пользователя результаты воровства могут быть самые разнообразные — от опубликования переписки во взломанном почтовом ящике до увода денег со счетов. Исправить это уже практически невозможно.
  3. Подключение платных услуг. Во времена коммутируемых соединений были распространены так называемые порнодиалеры, которые отключали модем от провайдера и звонили с модема на платный номер. Сейчас распространены вирусы для мобильных устройств, отсылающие SMS на платные номера. Результат одинаковый — большие счета за несуществующие услуги. Вернуть деньги назад нереально. Во времена порнодиалеров некоторые провайдеры всем клиентам даже рассылали специальные уведомления о том, что никакой ответственности они не несут и помогать возвращать деньги не будут.
  4. Показ рекламы (Adware). Такие вирусы начали массово распространяться в начале 2000-х годов. Чтобы реклама была эффективней, её решили подстраивать под предпочтения конкретного человека. Для этого вирусы стали следить за действиями пользователей — какие сайты они посещают, что ищут в интернете (опять же, spyware). Отметим, кстати, что некоторую информацию собирают и легальные системы контекстной рекламы (к примеру, Google AdSense). Никаких вредных эффектов, кроме раздражения пользователей, рекламные вирусы не вызывают.
  5. Порча данных и оборудования. Порча данных возможна по разным причинам — от шифрования с целью шантажа до злонамеренного уничтожения в конкурентной борьбе. Порча оборудования — гораздо более редкое событие. Многие считают, что программа в принципе не может испортить «железо». Это не так. Теоретически, к порче оборудования может приводить его некорректное использование. К примеру, специалисты предполагали возможность сжечь принтер, постоянно держа включенным его термоэлемент. Практически же гораздо проще заблокировать работу устройства путём смены или стирания его прошивки. Физически такое устройство цело, по факту — как будто сломано, не работает и невозможно починить в домашних условиях. Яркий пример — вирус CIH 1998 года, портивший FlashBIOS материнских плат. Свежий пример вируса, в принципе способного портить оборудование — Stuxnet. Он внедрялся в промышленные системы управления (SCADA-системы) и атаковал контроллеры подключенных исполнительных механизмов, в частности электроприводов. Активно распространялись слухи, что Stuxnet должен был уничтожить объекты ядерной программы Ирана. Так это или нет — мы, скорее всего, никогда не узнаем.

Ботнеты

Перейдём теперь к вирусам, позволяющим произвольно управлять заражённым ПК. Ещё в 1989 году вышел вирус WANK Worm, менявший системный пароль на набор случайных знаков и пересылавший его определённому пользователю сети. История умалчивает, зачем это было сделано. Сегодня же удалённое управление чаще всего используется для создания ботнетов. Бот (от слова «робот») — программа (в данном случае вредоносная), имитирующая действия пользователя. Ботнет — сеть или группа ПК, которые управляются ботами. Такие ПК называют «компьютер-зомби». Хозяин ботнета передаёт команды «зомби», те их послушно исполняют. Передача команд и управление может быть организовано двумя способами. В первом способе хозяин ботнета создаёт централизованные управляющие сервера (command and control, C&C), которые поддерживают связь с ботами, к примеру, по протоколу IRC. Получается такой «чат для зловредных программ». Хозяин передаёт команды управляющим серверам, а те — ботам. C&C-сервера же и делают ботнет уязвимым. По ним легче найти хозяина, их легче заблокировать. К примеру, в ноябре 2010 года были выключены 143 C&C-сервера ботнета Bredolab, состоявшего из примерно 30 000 000 (тридцати миллионов) «ПК-зомби». Поэтому существует второй способ — децентрализованный (пиринговый). В нём сами боты работают как сервера управления. Хозяин передаёт команды нескольким ботам, они передают их другим ботам, те — третьим и так далее (см. P2P-сети). Ключевых узлов нет, каждый бот нужно выявлять и отключать сам по себе (такие операции, кстати, тоже проводятся). Зачем создают ботнеты? Для доставки и исполнения на «ПК-зомби» других вредоносных модулей. Ботнеты часто продаются или сдаются в аренду компьютерными злоумышленниками. Запуск вируса заказчика на большом количестве «ПК-зомби» сам по себе является коммерческой услугой нелегального рынка. Теоретически, модули ботнета могут преследовать любые вредоносные цели, включая перечисленные выше типы автономных вирусов. На практике же массовые ботнеты занимают вполне определённую нишу. Если запустить в ботнете, к примеру, программу-вымогатель, которая заблокирует рабочий стол, то пользователи сразу поймут, что ПК заражены, и вылечат их. Соответственно, размер ботнета уменьшится, снизится привлекательность ботнета для потенциальных заказчиков. Гораздо привлекательные использовать ботнет для показа рекламы (например, подменой легальных рекламных блоков на сайтах) и воровства данных. Так ботнет может приносить длительную прибыль, оставаясь незамеченным. Существуют и вредоносные модули, специфичные только для ботнетов. Им для успешной работы необходимо большое количество постоянно меняющихся заражённых ПК, поддерживающих связь между собой. Рассмотрим их.

  1. Рассылка спама. Ещё в 1864 году зафиксирована первая массовая рассылка рекламных телеграмм. Компьютеров тогда ещё не было, термина «спам» тоже. Слово SPAM появилось в 1937 году и обозначало мясные консервы (то ли SPiced hAM, то ли Shoulder of Pork and hAM, версии расходятся). Выпуск SPAM сопровождался агрессивной рекламой, а во время Второй мировой войны он стал одним из немногих мясных продуктов, более-менее доступных жителям США и Великобритании. В 1970 году британская комик-группа Монти Пайтон высмеяла вездесущие надоедливые консервы SPAM в своём телешоу, и имя SPAM стало нарицательным. В 90-х годах это название закрепилось за нежелательными рекламными рассылками в компьютерных сетях. Сейчас спам составляет порядка 80-85% всех писем электронной почты. И провайдеры, и хостеры, и рядовые пользователи стараются автоматически отсеивать (фильтровать) спам. Спамеры, в свою очередь, стремятся затруднить такую фильтрацию. В частности, им выгодно посылать спам с большого количества разных ПК, а не с одних и тех же серверов, которые (как и C&C-сервера) легко можно заблокировать. Поэтому, рассылка спама — распространённая работа ботнетов.
  2. Вывод из строя интернет-сервисов DDoS-атакой. DoS — аббревиатура от Denial of Service, то есть «Отказ в обслуживании». Злоумышленник отправляет на сервера выбранной жертвы (веб-сайта, электронной почты, платёжной системы и т. п.) большое число запросов-паразитов. Если плотность их потока (т. е. количество запросов в единицу времени) приблизится или превысит порог производительности серверов, то полезные запросы просто не смогут дойти по назначению. Это аналогично тому, как если бы бабушка пришла на почту, а там уже очередь из молодых наглых хулиганов, долго болтающих с симпатичной сотрудницей по ту сторону окошка. Понятно, бабушка свою посылку отправит нескоро. Поскольку производительность современных серверов и, тем более, датацентров значительно превышает производительность рядовых ПК, то для успешной атаки нужно одновременно слать паразитные запросы с большого числа ПК. Это и есть DDoS (от английского Distributed DoS) — распределённая DoS-атака. Это как если бы на почте хулиганы не в очереди стояли, а лезли бы и через дверь, и через все окна, и даже из подсобки. Тут у бабушки вообще шансов нет. Понятно, что для организации DDoS удобно использовать ботнет. Сначала злоумышленник может, оставаясь незамеченным, набрать критическую массу компьютеров-зомби. Затем модулям ботнета отдаётся команда начала атаки в заданное время. Когда сайт (или сервер электронной почты или любая другая служба) подверглась успешной DDoS-атаке, то его владелец получает простой и потери денег. Если атакованная служба из-за перегрузки вдобавок поведёт себя некорректно — выдаст страницу ошибки с системной информацией, станет неправильно проверять логины и пароли и т. п., — то возможны и далеко идущие последствия.
  3. Подбор паролей. Самый универсальный способ узнать чужой пароль — просто подобрать его, перепробовав все возможные варианты. Если никакой дополнительной информации о пароле нет (ни его длины, ни его отдельных частей и т. п.), то придётся перебрать все возможные комбинации букв, цифр и специальных символов. Чтобы прочувствовать масштаб задачи, попросите коллегу загадать двухбуквенный пароль и попробуйте отгадать его. Подбор же длинного пароля (8-10 символов) требует колоссального количества попыток. Поэтому такую атаку принято называть «грубой силой» (brute-force attack). Чтобы применить грубую силу, её сначала нужно иметь. Чем больше ПК параллельно пробуют пароли, тем в среднем быстрее они найдут нужный. Поэтому мошенники выносят подбор в ботнеты.
  4. Анонимный доступ для других злоумышленников. В вестернах злодей выходит к герою грудь на грудь, револьвер на револьвер. Жизненный опыт подсказывает, что реальные преступления обычно совершаются из-за чужой спины, а лучше из-за тёмного угла. Киберпреступления — аналогично. Поэтому когда нужно сделать «грязную работу» — перевести деньги со взломанного счёта или даже просто опубликовать компромат, то лучше поручить это «ПК-зомби». Ещё лучше, чтобы команду на это действие «зомби» получил от другого «зомби», а тот — от третьего и так далее, пока следы заказчика не потеряются. Есть и открытые системы анонимного доступа в сеть — к примеру, TOR. Однако известность TOR приводит и к целенаправленной борьбе против него. Доступ к некоторым сайтам закрыт с IP-адресов серверов TOR. Поэтому для преступников гораздо привлекательней использовать до поры до времени неизвестный ботнет.
  5. Хостинг преступных сервисов. Выше я упоминал про фишинг и перенаправление траффика на сервера мошенников. Если бы сервера постоянно были одни и те же, то их бы нашли и заблокировали. Поэтому преступникам выгодно создавать их средствами ботнета.
  6. Накрутка рейтингов. «ПК-зомби» имитирует заходы пользователей на определённые сайты, голосует там или просматривает рекламу и т. п.

Во всех перечисленных случаях пользователь заражённого ПК получает огромный объём сетевого траффика. Бывает, что полезные интернет-приложения просто не могут через него «пробиться», и пользователь после заражения жалуется на медленную работу интернета. Иногда в качестве ответной меры провайдер ограничивает доступ в сеть таким ПК. В частности, наша компания сталкивалась с блокировкой отправки любой электронной почты с заражённых ПК. Проблема решается звонком в техподдержку провайдера после излечения от вирусов.

Компьютерный вирус среди других современных опасностей

Нетрудно заметить, что перечисленные цели — воровство, вымогательство, вредительство — могут быть достигнуты и без привлечения высокооплачиваемых компьютерных специалистов. Поэтому чтобы точнее очертить круг вирусной угрозы, давайте проанализируем достоинства и недостатки этого вида криминального бизнеса.

Цена создания вируса высока. Если требуется украсть один пароль, то обычно это проще сделать «традиционным» путём — к примеру, шантажом знающего пароль человека. Некоторым кажется, что написание вредоносной программы — это чистая работа, а шантаж — грязная уголовщина. Спешу расстроить: оба варианта являются уголовно-наказуемыми. Но об этом позже. В целом, безопасность системы можно сравнить с водой в дырявой бочке. Неважно, какого размера и формы отверстия сверху — вода вытечет по уровню самого нижнего отверстия. Поэтому не следует делать из компьютерной безопасности самоцель, бесконечно совершенствуя её и забыв про всё остальное. Нужно обеспечить равномерную защиту, достаточную именно для вашего конкретного случая.

Достоинством вируса является возможность многократного применения и глобального охвата. К примеру, вызнать шантажом пароли у 1000 разных человек крайне затруднительно. Для этого нужно создать спецслужбу государственного масштаба. А заразить 1000 ПК вирусом — рядовое, в общем-то, событие. Сразу встаёт другой вопрос: а что ценного есть на 1000 случайно попавшихся ПК? На многих — ничего. На других ценную информацию нужно ещё суметь найти. Именно поэтому так популярны блокировщики рабочего стола, спам и DDoS-боты — они приносят пользу хозяевам после заражения любого ПК. Если же вирус, к примеру, ворует деньги из одной заданной банковской системы, то охват его заражения должен быть максимально широким, иначе он может просто не попасть на ПК, пользователи которых работают с данной системой и имеют солидные суммы на счетах. Если нужен вирус под атаку одного единственного предприятия, то цена данного предприятия должна перекрывать все расходы на создание вируса (смотри выше про Stuxnet и Иран). Поэтому я бы не стал ожидать, что кто-то что-то напишет специально для блокирования кассового ПК на районной автомойке. Скорее, найдут в интернете готовый вирус и принесут на флешке.

Каковы риски создания вируса? Как и у любого криминального бизнеса — ответственность перед законом, возможность «мести» пострадавшей стороны, конкуренция других преступников. В УК РФ есть глава 28 «Преступления в сфере компьютерной информации». Там есть статья 273 — создание, использование и распространение вредоносных компьютерных программ. В зависимости от тяжести содеянного, наказание может меняться от принудительных работ до лишения свободы на семь лет. Да-да, семь лет реальной тюрьмы, с реальной камерой и реальными соседями-уголовниками в ней за написание особо удачного вируса. Кому-то покажется, что статья — фикция, и по ней никого не осуждают. Однако факты говорят об обратном. К примеру, житель Воронежа, распространявший уже упоминавшийся вирус CIH, получил 2 года условно. Вроде и не страшно, и в то же время клеймо на всю жизнь — серьёзный работодатель такого сотрудника не возьмёт.

Сложно ли найти автора или распространителя вирусов? Тут важно понимать, что компьютерные преступления могут быть раскрыты вовсе не компьютерными методами. Пусть, к примеру, какой-то аноним украл или испортил ценную информацию Икс. К потерпевшему приезжает следователь и начинает задавать простые вопросы: кто знал про Икс, кто бывал возле Икс в последнее время, с кем дружили, с кем враждовали, кому ещё может понадобиться Икс и т. д. и т. п. В это время оперативник подтягивает заранее завербованную агентуру и спрашивает у неё: что слышно среди жуликов, где сейчас лица, ранее попадавшиеся на аналогичных преступлениях и т. д. и т. п. Поэтому если аноним хоть с кем-то в своей жизни общался (а он общался), то и вероятность его поимки ненулевая. Нетрудно понять, что чем специфичней объект атаки — тем проще искать преступника обычными полицейскими методами. Кто знает, кому выгоден вирус, поразивший миллионы ПК по всему миру? Зато если вирус поразит одно единственное учреждение, из которого недавно «по-плохому» уволили сотрудника, то этого сотрудника сразу возьмут в разработку.

Таким образом, видно два пути «рентабельного» вирусного бизнеса. Первый путь — разработка специального вируса для атаки на важный объект, к которому закрыты другие подступы. Значение цели и возможность удалённого воздействия на неё компенсируют затраты на разработку и риск вычисления заказчика. Второй путь — создание вируса для массового рынка, поражающего рядовые ПК через типовые уязвимости. Именно от таких вирусов нужно строить защиту подавляющему большинству пользователей.

Жизнь массового вируса на примере Kido

В качестве примера массового вируса рассмотрим Kido, он же Conficker. На пике эпидемии им было заражено, по разным оценкам, от 9 до 15 миллионов компьютеров. По оценкам Microsoft, с середины 2010 года до середины 2011 года количество заражённых ПК стабильно держалось в районе 1,7 миллиона. Известно несколько версий Kido, работа которых отличается друг от друга. Все они интересны сложным алгоритмом поведения, включающим в себя многие передовые вирусные технологии. Поэтому анализ Kido позволит точнее определить, от чего же нам в итоге нужно защищаться.

Заражение Kido может произойти по следующим путям:

  • По сети через уязвимость в протоколе RPC системы Windows. Уязвимость закрыта обновлениями, но, к сожалению, не все их себе поставили.
  • По сети через общие папки, к которым Kido подбирает пароль из списка наиболее популярных.
  • Через автозапуск со сменных носителей.

После заражения вирус регулярно проверяет наличие новой версии и, когда она появляется, устанавливает её. В конечном итоге, Kido загружает спам-модуль, т. е. Kido работает по принципу ботнета.

У вируса развитые механизмы самозащиты:

  • Блокировка доступа к сайтам известных производителей антивирусов и сайту Windows Update.
  • Отключение службы Windows Update.
  • Отключение возможности загрузки в безопасном режиме.
  • Ежесекундный поиск и выключение известных антивирусных и диагностических программ.

Во второй части статьи мы подробнее рассмотрим технические аспекты защиты от таких «продвинутых» массовых вирусов. Несмотря на сложный характер работы, общие черты этого вируса типовые. Поэтому и рецепты защиты будут типовые, применимые ко всем ПК.

Часть 2. Стратегия защиты от вирусов

Три кита защиты от вирусов

Что показывает нам пример с Kido как коллективным портретом современного вируса? Вирусы любят пользователей с простыми паролями. Всем, кто пользуется паролями типа qwerty, рекомендую поискать свой пароль в перечне Kido. Ещё вирусы любят автозапуск, особенно если он произойдёт у пользователя-администратора. Тут даже никакие защиты ОС обходить не надо, процесс стартует с полными правами на любые действия. Также вирусы любят, когда у пользователя стоит ОС без обновлений. Причём Kido активно борется с обновлениями путём блокировки Windows Update. И ещё вирусы не любят антивирусы (это у них взаимное). Поэтому профилактика вирусных заболеваний ПК стоит на трёх китах:

  • Разграничение прав пользователей, отключение лишних возможностей
  • Антивирус
  • Регулярная установка обновлений

Киты эти равноценны и необходимы, достаточно утонуть одному, как рухнет весь покоящийся на них мир. Пользователь, который творит, что хочет, не задумываясь о последствиях, рано или поздно вирус подхватит (чаще рано, чем поздно). Ему не помогут предупреждения антивируса, так как всегда есть вариант ответа «Продолжить». Антивирус часто бессилен против уязвимостей ОС. К примеру, тот же Kido категорически не лечится антивирусами до установки нужных обновлений. С другой стороны, ПК без антивируса, пусть и с полным комплектом обновлений Windows, тоже перед вирусами беззащитен. К примеру, фишинг происходит на уровне прикладных программ, логику работы которых ОС не контролирует. Так что организация защиты от вирусов — это не просто «мне друг дал ссылку на бесплатный антивирус, я скачал и поставил». Это многоуровневая комплексная задача. Начнём по порядку.

Ограничение и самоограничение пользователей

Как пользователь может заразить ПК вирусом? Вариантов два: явный запуск зловредной программы (к примеру, открытие заражённого exe-файла) или неявная провокация такого запуска (к примеру, вставил сменный носитель, на котором сработал автозапуск, открывший заражённый exe-файл). Как можно снизить риск заражения? В компьютере, как и в жизни, правила осторожности по сути являются ограничением от интересных, но потенциально опасных шагов. Конфликт интересов состоит в том, что интересность некоторых действий понятна всем (так, всем бывает интересно, когда в город приехал новый цирк), а вот опасность — только с определённым жизненным опытом (подумаешь, цирк даёт представление в трейлерном городке в лесополосе за промзоной). Большинство людей сначала игнорируют любые меры безопасности и рассказы о них, пока не столкнутся с проблемами лицом к лицу. Поэтому сначала безопасность обеспечивается принудительными ограничениями со стороны более опытных товарищей (вменяемые родители не пустят детей в упомянутый цирк, а вменяемые системные администраторы максимально защитятся от неопытных пользователей). Затем некоторые пользователи (прямо скажем, не все) дорастут до самостоятельного следования мерам предосторожности.

Кратко перечислю простейшие меры, которые соблюдаю лично я и которые рекомендую вам:

  1. Не открывайте неизвестные файлы. Задайте себе два простых вопроса. Во-первых, знаете ли вы хотя бы примерно, что там внутри и для чего оно нужно? Во-вторых, имеете ли связь с автором (или отправителем) файла в реальной жизни? Не бойтесь игнорировать сомнительную информацию и сомнительные программы. Если информация действительно важная, до вас доведут её и другим способом — отошлют повторно, позвонят, спросят о получении и т. п.
  2. Не открывайте обезличенные сообщения электронной почты или других средств коммуникаций. Любое приличное сообщение начинается с указания, кому оно предназначено — к примеру: «Уважаемый Имя Фамилия». Если текст сообщения можно адресовать кому угодно: «Здравствуйте. Мы предлагаем Вам и т. п.», — то это, в лучшем случае, спам.
  3. Не открывайте выданные поисковиком сайты, если не уверены в их полезности. Обратите внимание, что во всех приличных поисковиках под ссылкой приведена цитата с сайта, который вам предлагается. Посмотрите: это точно то, что вам нужно? Гугл, вдобавок, умеет заранее показать содержимое найденной страницы в правой части экрана. Очень удобно при работе с сомнительными источниками.
  4. Открыв сайт первый раз, оцените качество его исполнения. Хороший сайт делается долго, поэтому сайты-однодневки мошенников имеют неаккуратное исполнение — аляповатые цвета, уродливые картинки, текста нет, либо наоборот куча непонятного текста и т. д. и т. п.
  5. Не используйте простые пароли. Рекомендации Microsoft по созданию надёжных паролей можно посмотреть по ссылке. Почитать, что такое плохой пароль и насколько легко он подбирается, можно на хабре.
  6. Следите за использованием https. У приличных интернет-магазинов и других веб-сервисов, особенно связанных с приемом/передачей денег, строка адреса начинается с https, а не как обычно с http. Это значит, что подлинность сайта подтверждена цифровой подписью, а передаваемые на сайт данные шифруются. Чтобы не заставлять вас вчитываться каждый раз в буквы адреса, веб-браузеры отображают наличие https дополнительным значком или цветом. К примеру, Internet Explorer при безопасном соединении показывает замок в строке адреса.
Отображение https в Internet Explorer 9
Отображение https в Internet Explorer 9

Перечисление можно продолжить: интересующиеся легко найдут подобные правила на большинстве сайтов, посвящённых компьютерной безопасности. Перейдём к организации принудительного ограничения нерадивых (или просто неопытных) пользователей. Сначала нужно решить, что́ пользователям делать можно, а что́ — нельзя. Затем — найти технические средства, позволяющие отключить ненужные возможности.

Первое принципиальное решение: нужно ли пользователю изменять системные настройки, т. е. быть администратором компьютера? К примеру, задать другие параметры подключения к интернету или установить новое устройство в ПК? Большинству людей, использующих компьютер для работы, после установки и настройки рабочих программ ничего менять в системе больше не нужно. Конечно, некоторые профессиональные программы всё-таки требуют администраторских прав для своей работы. Поэтому окончательное решение по ограничению прав принимается опытным путём — ограничили, проверили работоспособность и, если необходимо, внесли коррективы. Инструкция по изменению администраторского статуса учётной записи пользователя есть, к примеру, на сайте Microsoft по ссылке. Эффективность такой меры очень высокая. BeyondTrust утверждает, что лишение прав администратора «закрывает» около 90% всех уязвимостей Windows (источник, перепост на русском языке). С одной стороны, конечно, BeyondTrust зарабатывает именно на разграничении прав, их интерес в подобной статистике понятен. С другой стороны, по нашему опыту могу сказать, что уменьшение количества сбоев после урезания прав в небольших сетях видно невооружённым взглядом. Некоторую аналогию наличию полных прав и «бесправности» можно проследить в политиках iOS (можно ставить программы только из одного источника) и Android (можно ставить программы откуда угодно). Желающие могут поискать статистику по вирусам на обеих платформах.

Положим, вывести пользователя из администраторов не получается, права ему действительно нужны. Насколько часто они нужны? Если от случая к случаю, то имеет смысл организовать выдачу прав по запросу. То есть пользователь работает без прав администратора, а когда они реально нужны, либо пароль администратора вводит старший товарищ, либо пользователь сам вводит дополнительный пароль. В Windows XP был механизм «Запустить от имени…» (Run As…), позволявший запустить программу под другой учётной записью. В Windows Vista Microsoft пошёл дальше и ввёл механизм контроля учётных записей пользователей (User Account Control, UAC). Теперь даже администратор ПК работает без прав администратора, но если такие права нужны какой-то программе, то она должна попросить у ОС повышение привилегий. Windows показывает пользователю дополнительный запрос на подтверждение и только затем выдаёт программе полные права. Технология, в принципе, нужная и полезная. Но на практике сразу после установки Vista на пользователя обрушивался град запросов — при установке каждого драйвера, каждой программы, настройки подключения к интернету, изменении некоторых опций интерфейса на привычные и т. п. Вдобавок обратите внимание, что программа должна сама запросить у Windows повышение прав. Поэтому многие программы, написанные до Vista, работать под ней отказались. Чаще всего проблема решается установкой галочки «Выполнять эту программу от имени администратора» во вкладке «Совместимость» диалога свойств программы. При этом Windows перед запуском автоматом инициирует запрос на повышение прав, и если пользователь подтвердит, то программа будет работать с полными правами. Но кто же из простых смертных знал об этом в первые дни? Как результат, массовые пользователи UAC выключили.

Настройка совместимости для программ, написанных до появления UAC
Настройка совместимости для программ, написанных до появления UAC

В Windows 7 появилась возможность немного скорректировать уровень «агрессивности» UAC. Можно выдавать запрос на повышение прав без затемнения рабочего стола, можно выдавать администраторам права без запроса, а пользователям — по запросу, можно не проверять цифровую подпись программы перед повышением прав и т. п. Считаю, что в Windows 7 нужно сосуществовать с включенным UAC.

Другое важное решение — это отключение всех лишних функций, приводящих к неявному запуску программ. Начать нужно с блокировки автозапуска со сменных носителей. Эта мера радикально снижает риск подхватить вирус с «флешек» и переносится пользователями сравнительно безболезненно. Хотя некоторым, конечно, придётся дополнительно объяснять, как теперь пользоваться любимым DVD-диском. Способов борьбы с автозапуском много — от выборочного отключения средствами панели управления до ручного редактирования реестра. В редакциях Windows от Professional и выше я рекомендую использовать групповую политику. С одной стороны, рядовой пользователь не сможет снять такую блокировку, а с другой стороны, групповые политики проще и удобней, чем реестр. В редакции Windows Home поддержки групповой политики нет, там придётся всё-таки править реестр. Инструкции по обоим вариантам отключения можно взять, к примеру, с форума iXBT.com по ссылке.

Следующий шаг по борьбе с неявными запусками программ — отключение лишних возможностей в сетевых программах. Нужно заблокировать открытие исполнимых вложений в почтовом клиенте. Порядок действий зависит от используемого почтового клиента, в некоторых (Outlook, к примеру) оно заблокировано по умолчанию. Но если ПК достался вам по наследству от предыдущего хозяина, то лучше проверьте, не снята ли эта блокировка. После победы над почтовым клиентом перейдём к браузеру. Подумайте, насколько пользователю нужна возможность ставить к нему надстройки, а также смотреть Flash и ActiveX (это всевозможное видео, игры в браузерах и т. п.)? К примеру, в большинстве офисных ПК они не нужны. Да и некоторым домочадцам тоже. Порядок действий по отключению зависит от используемого браузера.

Перечисленные шаги по ограничению пользователей — лишение прав администратора и отключение неявных запусков — уместны во многих случаях. Однако можно пойти ещё дальше и создать совсем «бесправного» пользователя. Возьмем, к примеру, ПК оператора с одной единственной рабочей программой. В подобных случаях открывается бескрайнее поле для ИТ-творчества, так как средства Windows по ограничению прав достаточно богатые. Здесь у каждого системного администратора свои рецепты и свои профессиональные секреты. С точки зрения защиты от вирусов бывает полезно, к примеру, заблокировать доступ к сетевым папками или запуск всех программ, кроме заданного списка рабочих, и т. п.

Антивирус

Вокруг антивирусов создано мистификаций ничуть не меньше, чем вокруг самих вирусов. Потребность в антивирусе мы уже обсудили. Теперь нужно разобраться, какой антивирус ставить и как с ним дальше жить. Конечно, у меня есть свой любимый антивирус, который я считаю безальтернативным по удобству и эффективности. Но так как статья не рекламная, то называть его я не буду. Вместо этого я объясню, на какие критерии я ориентировался при выборе.

Что должен делать идеальный антивирус? Во-первых, удалять из ПК любой вредоносный код, независимо от того, где именно тот находится — в файле на диске, в уже запущенной программе в памяти или в сетевом трафике браузера. Во-вторых, снижать риск получения вредоносного кода в дальнейшем. В-третьих, поменьше беспокоить меня ложными срабатываниями, малопонятными вопросами или вопросами, ответ на которые всегда однозначный. Давайте разбираться, как это реализуется технически.

Чтобы найти вредоносный код, антивирус должен постоянно следить за содержащейся в ПК информацией и определять, опасная она или нет. Поэтому первое требование — в ПК должен стоять антивирусный монитор, включающийся при загрузке и постоянно сканирующий данные, тем или иным образом обрабатываемые ПК. Бесплатные программы для одноразового сканирования ПК (к примеру, Dr.Web CureIt! или Kaspersky Virus Removal Tool) не являются средствами защиты. Они помогут удалить вирусы с уже заражённого ПК, но в промежутках между ручными запусками таких программ ПК не защищён.

Положим, некоторый антивирусный монитор установлен. Чтобы следить за системой, ему нужно глубоко в неё интегрироваться — загружаться на раннем этапе, перехватывать сетевой трафик, перехватывать обращения к жёсткому диску, желательно поставить модули в популярные программы коммуникаций (почтовый клиент, к примеру) и т. д. Поэтому мне всегда подозрительно, если после установки антивирус себя вообще никак не проявляет кроме дежурной иконки на панели задач.

Как антивирус отличает вирусы от невирусов? Технологий несколько, самая известная — сигнатурный поиск. Сигнатура (подпись, если переводить дословно) — это характерный набор отличий, существующий у некоторого вируса и позволяющий отличить его от любых других программ и данных. К примеру, набор байтов с кодом вируса или посылаемое вирусом сообщение. У антивируса есть база сигнатур. Проверяя программы на наличие в них каждой сигнатуры из базы, антивирус определяет, заражены программы или нет. По мере появления новых вирусов базу сигнатур тоже нужно обновлять. Значит, разработчик антивируса должен постоянно собирать данные о вирусах и выпускать обновления, а антивирусный монитор пользователя должен эти обновления загружать и устанавливать (обычно это происходит автоматически). Чем больше база сигнатур, тем больше вычислений приходится делать при проверке, ведь необходимо проверить каждую программу на наличие каждой сигнатуры из базы. Поэтому сигнатурная защита — это достаточно ресурсоёмкая задача.

Сколько известно сигнатур? Разные производители называют разные цифры, одна другой страшнее. Но все сходятся в одном: количество вирусов растёт опережающими темпами. Каждый год новых вирусов появляется значительно больше, чем в предыдущем. Поэтому для выпуска новых баз сигнатур нужен постоянно растущий штат хороших специалистов. Соответственно, крайне затруднительно выпускать качественный бесплатный антивирус — зарплату-то надо откуда-то брать. Коммерческие антивирусы продаются по принципу подписки — необходимо каждый год платить за продолжение обновления баз. Поэтому следующее требование к антивирусу такое: купленный продукт крупного производителя с продлённой подпиской.

Какой бы антивирус вы ни взяли, появление сигнатур в базах неизбежно будет отставать от появления вирусов. Даже если отставание будет измеряться несколькими часами, за эти часы технически возможно заразить огромное количество ПК (спасибо социальным сетям, смартфонам и прочим средствам массовых коммуникаций). Поэтому мало искать сигнатуры известных вирусов — хороший антивирус должен каким-то образом уметь находить и ещё неизвестные вирусы. Введено даже специальное понятие — 0day, то есть угроза, с момента обнаружения которой прошло нуль дней, и защиты ещё нет. К примеру, Stuxnet использовал неизвестную ранее уязвимость Windows, против которой не существовало патчей. Поэтому Stuxnet — это тоже 0day-угроза. Обнаружение и защита от подобных неприятностей — задача крайне сложная. Для её реализации серьёзные антивирусы помимо сигнатурного поиска могут использовать различные так называемые проактивные технологии: от эвристики (то есть поиска вирусов по некоторым дополнительным гипотезам) до полной виртуализации программ (то есть исполнения программ не на самом ПК, а в некотором его эмуляторе). Ограничение прав пользователей и UAC, кстати, это тоже, в каком-то смысле, проактивная защита. Думаю, что по мере нарастания вирусной армии подобные технологии выйдут на первый план, а гонка за сигнатурами будет в итоге проиграна.

Раз уж зашла речь о проактивной защите, то желательно, чтобы антивирус сам искал потенциальные уязвимости в системе — некорректные настройки, программы с известными ошибками в системе безопасности и т. п. Теоретически, это не его работа — обновлять и настраивать ОС и ПО. На практике же большинство пользователей смотрит на антивирус, как на панацею, совершенно не заботясь о других мерах предосторожности. А в случае заражения, опять же, именно на антивирус падёт гнев пользователя: «Я его купил, и вот опять полный ПК вирусов!!!» С другой стороны, сейчас объективно нет сущности, централизованно следящей за обновлениями всех программ. Windows следит только за обновлениями самой себя и других продуктов Microsoft, Adobe Flash — только за обновлениями Adobe Flash — и так каждый сторонний браузер, каждый сторонний почтовый клиент и т. д. и т. п. Поэтому логично ожидать подобной функциональности в хорошем антивирусе. Тут мы опять приходим к базам и обновлениям, но только теперь это базы известных проблем.

Другое направление проактивной защиты — борьба с вирусами «на стороне противника», т. е. поиск и подавление в рамках закона вирусописателей и их серверов. Для ведения подобных дел необходим большой объём фактического материала о вирусах, который есть у производителей антивирусов. Поэтому хорошо, когда производители антивирусов сотрудничают с компетентными органами разных стран с целью искоренения компьютерной «заразы». Плата за коммерческий антивирус такого производителя — это ещё и финансирование борьбы за общее благо. Как говорится, лучшая оборона — это атака.

Наконец, антивирус не должен мешать жить рядовому пользователю ПК. Вспоминая неудобства, приносимые UAC, в первую очередь хочется поменьше вопросов от антивируса. Почему антивирус вообще задаёт вопросы? Во-первых, у методов обнаружения вирусов есть определённая погрешность работы. В ряде случаев они приводят к ложным срабатываниям, то есть полезную программу определяют как вирус. Поэтому необходим ручной контроль со стороны пользователя. Во-вторых, нужна определённость, что́ делать с найденными угрозами: блокировать, разрешать, помещать в карантин и т. д. Чтобы снизить количество вопросов, каждый антивирус имеет набор правил: такие-то ситуации разрешаем, такие-то ситуации блокируем автоматически, в таких-то ситуациях всё-таки спрашиваем у пользователя и т. п. Чем богаче набор встроенных правил для массовых программ (тех же браузеров), тем меньше будет вопросов. А значит, опять нужны базы с обновлениями, но уже базы доверенных программ. Хорошо, когда антивирус самообучается (хотя бы на уровне автоматического создания правил по уже полученным ответам). Конечно, нужен удобный интерфейс системных настроек, чтобы быстро найти и поменять неудачное правило.

Говоря о неудобствах, нельзя обойти тему медленной или нестабильной работы ПК из-за антивируса. И вот это уже не совсем легенда. Выше отмечалось, что сигнатурная защита требует много ресурсов ПК, так как количество сигнатур растёт с невообразимой скоростью. Требуют ресурсов и другие методы защиты. Поэтому на старых ПК многие современные антивирусы, увы, действительно заметно замедляют работу. В ряде случаев антивирус может и современный ПК «уложить на лопатки». Со стабильностью тоже не всё гладко. Антивирус — не рядовое приложение, не всегда его постороннее вмешательство проходит гладко. Масштаб проблемы таков, что Microsoft завела специальную Wiki-страницу для описания правил настройки антивирусов. В основном там описаны правила исключений для серверов, т. е. списки файлов на серверах, которые не нужно проверять антивирусами. Скептики, правда, говорят, что публичный призыв к исключению файлов из проверки, наоборот, привлечёт к ним повышенное внимание вирусописателей. Опыт компании показывает, что настройка исключений по правилам Microsoft действительно снижает «тормоза», привносимые антивирусом в работу серверов.

Резюмируя раздел про антивирусы, получаем:

  • На ПК должен быть установлен антивирусный монитор.
  • Антивирусный монитор — это в первую очередь услуга, на которую нужно иметь постоянную подписку. Если антивирус давно не обновлял свои базы, то он — бесполезен.
  • Качество защиты определяется не только богатыми базами сигнатур, но и другими фирменными технологиями производителя. Чем больше в антивирусе компонентов, тем лучше.
  • Желательно, чтобы у производителя антивируса были и другие направления деятельности в области компьютерной безопасности.
  • У антивируса должен быть удобный интерфейс и возможности по самообучению. Иначе весьма возможны крайности — от вала вопросов, над которыми никто не задумается, до отключения защиты пользователем, «чтобы не мешала».
  • Антивирус будет потреблять ресурсы ПК. Если «тормоза» заметны даже на хорошем ПК, то, возможно, причина в неправильной настройке.

Обновление ОС и прикладных программ

Теоретически, уязвимости могут быть у любой программы, даже у текстового редактора. На практике целью злоумышленников является ОС и массовые программы (браузеры и т. п.) Обновления на все продукты Microsoft можно загружать централизованно через службу обновлений Windows. Далеко не каждое обновление направлено на улучшение безопасности. Windows 7 делит обновления на две группы — важные и рекомендуемые. Сервер обновлений Windows имеет более тонкое деление на классы: драйверы, критические обновления, накопительные пакеты обновлений, обновления определений, обновления системы безопасности, просто обновления, пакеты новых функций, пакеты обновлений, средства. Стандартные определения этих классов довольно «корявые», поэтому обращу ваше внимание на следующее. Для защиты от вирусов обязательно нужно устанавливать обновления системы безопасности. У них в названии всегда есть словосочетание «обновление безопасности» (Security Update в английской версии). Если у вас используется антивирус Microsoft, то нужно ставить ещё и обновления определений (Definition Updates в английской версии, это те самые базы сигнатур). Остальные обновления прямого отношения к защите от вирусов не имеют.

Многие пользователи испытывают суеверный страх перед обновлениями Windows и отключают автоматическое обновление просто по принципу «как бы чего не вышло». Реальных причин обычно две: либо использование нелицензионной копии ОС (о чём вслух говорить не принято), либо боязнь испортить и так стабильно работающий ПК. На официальном сайте Microsoft на странице часто задаваемых вопросов о проверке подлинности написано, что нелицензионные копии Windows имеют возможность ставить обновления системы безопасности. Конечно, кто-то может решить, что это ловушка, чтобы вычислить всех «пиратов» (см. конспирология). Думаю, что если бы такая цель стояла, то информацию собрали бы независимо от настроек службы обновлений, по-тихому. Конечно, риск испортить работу ПК неудачным обновлением есть всегда. Из недавних примеров — средство проверки файлов Microsoft Office (KB2501584) после установки радикально замедляло открытие файлов по сети (KB2570623). Однако это единичные случаи. Все серьёзные производители уделяют много внимания тестированию своих продуктов и обновлений к ним. А работа по откату одного обновления раз в несколько лет не столь велика по сравнению с ценой пропуска действительно важного обновления (см. Kido). Обновления безопасности надо ставить всегда, и лучше, чтобы это происходило автоматически.

Управлять обновлениями прикладных программ не столь удобно. У каждого производителя свои средства обновлений. Часто даже у разных программ одного производителя нет единого центра обновлений. Тем не менее, основные черты сказанного про обновления Windows справедливы и здесь. Обновления безопасности выходят, их нужно ставить, есть теоретический риск испортить работу, но риск поймать вирус через незакрытую уязвимость популярной программы гораздо выше. Поэтому обновления нужно ставить, и лучше, чтобы каждая программа делала это автоматом.

А как же фаервол?

Есть ещё один важный элемент компьютерной безопасности, который я не назвал — это сетевой экран, он же фаервол, он же брандмауэр. Существует распространённое мнение, что он тоже нужен для защиты от вирусов. В моей практике был неописуемый случай, когда испуганный угрозой вирусов пользователь решил подключить два особо важных ПК к локальной сети через аппаратные фаерволы. Не знаю, что именно он рассказывал в магазине продавцу, но в итоге были закуплены… два ADSL-модема.

Сетевой экран блокирует трафик на основе определённых правил. Это позволяет разграничить или закрыть доступ к некоторым сетевым службам, регистрировать сетевую активность, может защитить от DDoS-атаки и т. п. Но как может экран отличить вирус в трафике от невируса? Большинство вирусов распространяется через стандартные протоколы — к примеру, загружаются с веб-сайтов через http и распространяются по локальной сети через RPC. Закрыв эти протоколы целиком, вы останетесь, по большому счёту, вообще без сети. Чтобы осуществить выборочную фильтрацию, в экране должен быть собственный интегрированный антивирус, с базами сигнатур и т. п. Или, наоборот, сетевой экран должен быть частью комплексного антивирусного продукта. На практике, включенный сетевой экран помогает обнаружить факт заражения, показав сетевую активность заражённой программы. К примеру, если экран показывает, что ваш текстовый редактор при запуске соединяется с интернетом, а раньше такого не делал, то это серьёзный повод проверить ПК. Но предотвратить сам факт заражения сетевым экраном без его объединения с антивирусом невозможно.

Несколько слов про другие ОС

Бо́льшая часть статьи посвящена защите Windows-систем. Может сложиться впечатление, что вирусы — это только проблема Windows. Некоторые «специалисты» с таким убеждением вообще всю жизнь проводят. Поэтому развеем очередной миф. Хорошо известны вирусы под практически все современные ОС. См., к примеру, Вредоносные программы для Unix-подобных систем на Википедии. Первая массовая вирусная эпидемия состоялась, кстати, ещё в 1988 году на Unix (червь Морриса). Windows тогда ещё пешком под стол ходил (или ходила), вирусов для Windows никто не сочинял. В новейшей истории тоже известны массовые эпидемии: в 2001 году Ramen, в 2002 году Slapper и Scalper. Антивирусов под другие ОС достаточно (см., к примеру, Linux malware — Anti-virus applications на Википедии). Уязвимостей в ОС, которые нужно закрывать — сколько угодно (см. LinuxSecurity). Часть упомянутой выше BeyondTrust начинала, кстати, с обеспечения безопасности Unix.

И отдельным абзацем про Apple. Есть ботнет под iPhone, ворующий банковские данные (правда, только у iPhone, взломанных их хозяевами). Есть ботнет из Маков, распространяющийся через ошибку в системе безопасности, для закрытия которой нужно ставить обновление. В общем, тех же щей, да пожиже влей.

Заключение

Вирусы — наша общая беда. Даже если мой ПК не заражён, мне приходится разгребать спам, приходящий от заражённых ПК. Поэтому борьба с ними — общее дело. Помните сами и доносите до всех остальных пользователей три простых правила защиты:

  1. Будьте осторожными, а тому, кто не может быть осторожным, ограничьте права.
  2. Установите хороший антивирусный монитор и следите за продлением подписки.
  3. Ставьте обновления безопасности на все программы.

Если у вас упущен хотя бы один пункт из списка, риск заражения высок.

Дополнительно

iXBT BRAND 2016

«iXBT Brand 2016» — Выбор читателей в номинации «Процессоры (CPU)»:
Подробнее с условиями участия в розыгрыше можно ознакомиться здесь. Текущие результаты опроса доступны тут.

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.