Компью́терный ви́рус — разновидность компьютерных программ, отличительной особенностью которых является способность к размножению (саморепликация). В дополнение к этому вирусы могут без ведома пользователя выполнять прочие произвольные действия, в том числе наносящие вред пользователю и/или компьютеру. По этой причине вирусы относят к вредоносным программам.
Неспециалисты ошибочно относят к компьютерным вирусам и другие виды вредоносных программ - программы-шпионы и даже спам. Известны десятки тысяч компьютерных вирусов, которые распространяются через Интернет по всему миру.
Создание и распространение вредоносных программ (в том числе вирусов) преследуется в России согласно Уголовному Кодексу РФ (глава 28, статья 273).
Компьютерный вирус был назван по аналогии с биологическими вирусами за сходный механизм распространения. По всей видимости, впервые слово «вирус» по отношению к программе было употреблено Грегори Бенфордом (Gregory Benford) в фантастическом рассказе «Человек в шрамах»[2], опубликованном в журнале Venture в мае 1970 года. Термин «компьютерный вирус» впоследствии не раз открывался и переоткрывался — так, переменная в программе PERVADE (1975), от значения которой зависело, будет ли программа ANIMAL распространяться по диску, называлась VIRUS. Также, вирусом назвал свои программы Джо Деллинджер и, вероятно, — это и был первый вирус, названный собственно «вирусом».
Ныне существует немало разновидностей вирусов, различающихся по основному способу распространения и функциональности. Если изначально вирусы распространялись на дискетах и других носителях, то сейчас доминируют вирусы, распространяющиеся через Интернет. Растёт и функциональность вирусов, которую они перенимают от других видов программ.
В настоящее время не существует единой системы классификации и именования вирусов (хотя попытка создать стандарт была предпринята на встрече CARO в 1991 году). Принято разделять вирусы:
n по поражаемым объектам (файловые вирусы, загрузочные вирусы, скриптовые вирусы, макровирусы, вирусы, поражающие исходный код);
n по поражаемым операционным системам и платформам (DOS, Microsoft Windows, Unix, Linux);
n по технологиям, используемым вирусом (полиморфные вирусы, стелс-вирусы, руткиты);
n по языку, на котором написан вирус (ассемблер, высокоуровневый язык программирования, скриптовый язык и др.);
n по дополнительной вредоносной функциональности (бэкдоры, кейлоггеры, шпионы, ботнеты и др.)
Классифицировать антивирусные продукты можно сразу по нескольким признакам, таким как:используемые технологии антивирусной защиты, функционал продуктов, целевые платформы.
По используемым технологиям антивирусной защиты:
Классические антивирусные продукты (продукты, применяющие только сигнатурный метод детектирования)
Продукты проактивной антивирусной защиты (продукты, применяющие только проактивные технологии антивирусной защиты);
Комбинированные продукты (продукты, применяющие как классические, сигнатурные методы защиты, так и проактивные)
По функционалу продуктов:
Антивирусные продукты (продукты, обеспечивающие только антивирусную защиту)
Комбинированные продукты (продукты, обеспечивающие не только защиту от вредоносных программ, но и фильтрацию спама, шифрование и резервное копирование данных и другие функции)
По целевым платформам:
Антивирусные продукты для ОС семейства Windows
Антивирусные продукты для ОС семейства *UNIX (к данному семейству относятся ОС BSD, Linux, Mac OS X и др.)
Антивирусные продукты для мобильных платформ (Windows Mobile, Symbian, iOS, BlackBerry, Android, Windows Phone 7 и др.)
Антивирусные продукты для корпоративных пользователей можно также классифицировать по объектам защиты:
Антивирусные продукты для защиты рабочих станций
Антивирусные продукты для защиты файловых и терминальных серверов
Антивирусные продукты для защиты почтовых и Интернет-шлюзов
Антивирусные продукты для защиты серверов виртуализации