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

Компью́терный ви́рус — вид вредоносных программ, способных внедряться в код других программ, системные области памяти, загрузочные секторы и распространять свои копии по разнообразным каналам связи.
Основная цель вируса — его распространение. Кроме того, часто его сопутствующей функцией является нарушение работы программно-аппаратных комплексов — удаление файлов, удаление операционной системы, приведение в негодность структур размещения данных, нарушение работоспособности сетевых структур, кража личных данных, вымогательство, блокирование работы пользователей и т. п. Даже если автор вируса не запрограммировал вредоносных эффектов, вирус может приводить к сбоям компьютера из-за ошибок, неучтённых тонкостей взаимодействия с операционной системой и другими программами.
Вирусы, как правило, занимают место на накопителях информации и потребляют ресурсы системы, особенно вирусы майнинга[1].
В обиходе «вирусами» называют все вредоносные программы, хотя на самом деле это лишь один из их видов[2].
История
![]() | В разделе не хватает ссылок на источники (см. рекомендации по поиску). |
Основы теории самовоспроизводящихся механизмов заложил американец венгерского происхождения Джон фон Нейман, который в 1951 году предложил метод создания таких механизмов[3]. С 1961 года известны рабочие примеры таких программ[4].
Одним из первых прототипом вируса называют Creeper. Это была самоперемещающаяся программа: когда на удалённом компьютере запускалась новая копия программы, предыдущая копия прекращала свою работу. Антивирус для неё получил название Reaper — в случае обнаружения Creeper, она прекращала её работу[5].
Первыми известными вирусами являются Virus 1,2,3 и Elk Cloner для ПК Apple II, появившиеся в 1981 году. Зимой 1984 года появились первые антивирусные утилиты — CHK4BOMB и BOMBSQAD авторства Энди Хопкинса (англ. Andy Hopkins). В начале 1985 года Ги Вон (англ. Gee Wong) написал программу DPROTECT — первый резидентный антивирус.
Первые вирусные эпидемии относятся к
Тогда же оформились основные классы двоичных вирусов: сетевые черви (червь Морриса, 1987), «троянские кони» (AIDS, 1989[7]), полиморфные вирусы (Chameleon, 1990), стелс-вирусы (Frodo, Whale, 2-я половина 1990).[источник не указан 743 дня]
Параллельно оформляются организованные движения как про-, так и антивирусной направленности: в 1990 году появляются специализированная BBS Virus Exchange, «Маленькая чёрная книжка о компьютерных вирусах» Марка Людвига, первый коммерческий антивирус Symantec Norton AntiVirus.
В 1992 году появились первый конструктор вирусов для PC — VCL (для Amiga конструкторы существовали и ранее), а также готовые полиморфные модули (MtE, DAME и TPE) и модули шифрования для встраивания в новые вирусы.
В несколько последующих лет были окончательно отточены стелс- и полиморфные технологии (SMEG.Pathogen, SMEG.Queeg, OneHalf, 1994; NightFall, Nostradamus, Nutcracker, 1995), а также испробованы самые необычные способы проникновения в систему и заражения файлов (Dir II — 1991, PMBS, Shadowgard, Cruncher — 1993). Кроме того, появились вирусы, заражающие объектные файлы (Shifter, 1994) и исходные тексты программ (SrcVir, 1994). С распространением пакета Microsoft Office получили распространение макровирусы (Concept, 1995).
В 1996 году появился первый вирус для Windows 95 — Win95.Boza, а в декабре того же года — первый резидентный вирус для неё — Win95.Punch.
С распространением сетей и Интернета файловые вирусы всё больше ориентируются на них как на основной канал работы (ShareFun, 1997 — макровирус MS Word, использующий MS-Mail для распространения; Win32.HLLP.DeTroie, 1998 — семейство вирусов-шпионов; Melissa, 1999 — макровирус и сетевой червь, побивший все рекорды по скорости распространения). Эру расцвета «троянских коней» открывает утилита скрытого удалённого администрирования Back Orifice (1998) и последовавшие за ней аналоги, например NetBus.
Вирус Win95.CIH достиг апогея в применении необычных методов, перезаписывая FlashBIOS заражённых машин (эпидемия в июне 1998 считается самой разрушительной за предшествующие годы).
В конце 1990-x — начале 2000-x годов с усложнением ПО и системного окружения, массовым переходом на сравнительно защищённые Windows семейства NT, закреплением сетей как основного канала обмена данными, а также успехами антивирусных технологий в обнаружении вирусов, построенных по сложным алгоритмам, последние стали всё больше заменять внедрение в файлы на внедрение в операционную систему (необычный автозапуск, руткиты) и подменять полиморфизм огромным количеством видов (число известных вирусов растет экспоненциально).
Вместе с тем обнаружение в Windows и другом распространённом ПО многочисленных уязвимостей открыло дорогу червям-эксплоитам. В 2004 году беспрецедентные по масштабам эпидемии вызывают MsBlast (по данным Microsoft, более 16 млн систем[8]), Sasser и Mydoom (оценочные ущербы 500 млн и 4 млрд долл. соответственно[9]).
Кроме того, монолитные вирусы в значительной мере уступают место комплексам вредоносного ПО с разделением ролей и вспомогательными средствами (троянские программы, загрузчики/дропперы, фишинговые сайты, спам-боты и пауки). Также расцветают социальные технологии — спам и фишинг — как средство заражения в обход механизмов защиты ПО.
В начале на основе троянских программ, а с развитием технологий
К 2020 году стали популярны вирусы майнинга, представляющие собой трояны, использующие ресурсы процессора для извлечения прибыли от добычи криптовалюты[1].
Этимология названия
Компьютерный вирус был назван по аналогии с
Термин «компьютерный вирус» впоследствии не раз «открывался» и переоткрывался. Так, переменная в подпрограмме PERVADE (
Формальное определение
Нет общепринятого определения вируса. В академической среде термин был употреблён
.Формально вирус определён Фредом Коэном со ссылкой на машину Тьюринга следующим образом[15]:
M : (SM, IM, OM : SM x IM > IM, NM : SM x IM > SM, DM : SM x IM > d)
с заданным множеством состояний SM, множеством входных символов IM и отображений (OM, NM, DM), которая на основе своего текущего состояния s ∈ SM и входного символа i ∈ IM, считанного с полубесконечной ленты, определяет: выходной символ o ∈ IM для записи на ленту, следующее состояние машины s' ∈ SM и движения по ленте d ∈ {-1,0,1}.
Для данной машины M последовательность символов v : vi ∈ IM может быть сочтена вирусом тогда и только тогда, когда обработка последовательности v в момент времени t влечёт за собой то, что в один из следующих моментов времени t последовательность v′ (не пересекающаяся с v) существует на ленте, и эта последовательность v′ была записана M в точке t′, лежащей между t и t″:
∀ CM ∀ t ∀ j: SM(t) = SM0 ∧ PM(t) = j ∧ { CM(t, j) … CM(t, j + |v| - 1)} = v ⇒ ∃ v' ∃ j' ∃ t' ∃ t": t < t" < t' ∧ {j' … j' +|v'|} ∩ {j … j + |v|} = ∅ ∧ { CM(t', j') … CM(t', j' + |v'| - 1)} = v' ∧ PM(t") ∈ { j' … j' + |v'| - 1 }
где:
- t ∈ N число базовых операций «перемещения», осуществлённых машиной
- PM ∈ N номер позиции на ленте машины в момент времени t
- SM0 начальное состояние машины
- CM(t, c) содержимое ячейки c в момент времени t
Данное определение было дано в контексте вирусного множества VS = (M, V) — пары, состоящей из машины Тьюринга M и множества последовательностей символов V: v, v' ∈ V. Из данного определения следует, что понятие вируса неразрывно связано с его интерпретацией в заданном контексте, или окружении.
Фредом Коэном было показано[15], что «любая самовоспроизводящаяся последовательность символов: одноэлементный VS, согласно которой существует бесконечное количество VS, и не-VS, для которых существуют машины, по отношению к которым все последовательности символов является вирусом, и машин, для которых ни одна из последовательностей символов не является вирусом, даёт возможность понять, когда любая конечная последовательность символов является вирусом для какой-либо машины». Он также приводит доказательство того, что в общем виде вопрос о том, является ли данная пара (M, X) : Xi ∈ IM вирусом, неразрешим (то есть не существует алгоритма, который мог бы достоверно определить все вирусы) теми же средствами, которыми доказывается неразрешимость проблемы остановки[16].
Другие исследователи доказали, что существуют такие типы вирусов (вирусы, содержащие копию программы, улавливающей вирусы), которые не могут быть безошибочно определены ни одним алгоритмом.[источник не указан 743 дня]
Классификация
Ныне существует разные виды компьютерных вирусов, различающихся по основному способу распространения и функциональности. Если изначально вирусы распространялись на дискетах и других носителях, то сейчас доминируют вирусы, распространяющиеся через локальные и глобальные сети (Интернет). Растёт и функциональность вирусов, которую они перенимают от других видов программ.[источник не указан 743 дня]
В настоящее время не существует единой системы классификации и именования вирусов (хотя попытка создать стандарт была предпринята на встрече CARO в 1991 году). Принято разделять вирусы:[источник не указан 743 дня]
- по поражаемым объектам (макровирусы, вирусы, поражающие исходный код);
- файловые вирусы делят по механизму заражения: паразитирующие добавляют себя в исполняемый файл, перезаписывающие невосстановимо портят заражённый файл, «спутники» идут отдельным файлом.
- по поражаемым операционным системам и платформам (DOS, Windows, Unix, Linux, Android);
- по используемым технологиям (полиморфные вирусы, стелс-вирусы, руткиты);
- по языку, на котором написан вирус (ассемблер, высокоуровневый язык программирования, сценарный язык и др.);
- по дополнительной вредоносной функциональности ( и др.).
Распространение
Через Интернет, локальные сети и съёмные носители.[источник не указан 743 дня]
Механизм
![]() | В разделе не хватает ссылок на источники (см. рекомендации по поиску). |
Вирусы распространяются, копируя своё тело и обеспечивая его последующее исполнение: вписывая себя в исполняемый код других программ, заменяя собой другие программы, прописываясь в автозапуск через реестр и другое. Вирусом или его носителем могут быть не только программы, содержащие
После того как вирус успешно внедрился в коды программы, файла или документа, он будет находиться в состоянии сна, пока обстоятельства не заставят компьютер или устройство выполнить его код. Чтобы вирус заразил ваш компьютер, необходимо запустить заражённую программу, которая, в свою очередь, приведёт к выполнению кода вируса. Это означает, что вирус может оставаться бездействующим на компьютере без каких-либо симптомов поражения. Однако, как только вирус начинает действовать, он может заражать другие файлы и компьютеры, находящиеся в одной сети. В зависимости от целей программиста-вирусописателя, вирусы либо причиняют незначительный вред, либо имеют разрушительный эффект, например удаление данных или кража конфиденциальной информации.
Каналы
![]() | В разделе не хватает ссылок на источники (см. рекомендации по поиску). |
- Дискеты. Самый распространённый канал заражения в 1980—1990-е годы. Сейчас[когда?] практически отсутствует из-за появления более распространённых и эффективных каналов и отсутствия флоппи-дисководов на многих современных компьютерах.
- портативные цифровые плееры, а с 2000-х годов всё большую роль играют мобильные телефоны, особенно смартфоны (появились мобильные вирусы). Использование этого канала ранее было преимущественно обусловлено возможностью создания на накопителе специального файла autorun.inf, в котором можно указать программу, запускаемую Проводником Windows при открытии такого накопителя. В Windows 7возможность автозапуска файлов с переносных носителей была отключена.
- веб-сайт, содержащий вирусный код. Многие почтовые вирусы, попав на компьютер пользователя, затем используют адресную книгу из установленных почтовых клиентов типа Outlookдля рассылки самого себя дальше.
- программы мгновенного обмена сообщениями.
- скриптов, ActiveX-компонент. В этом случае используются уязвимости программного обеспечения, установленного на компьютере пользователя, либо уязвимости в ПО владельца сайта (что опаснее, так как заражению подвергаются добропорядочные сайты с большим потоком посетителей), а ничего не подозревающие пользователи, зайдя на такой сайт, рискуют заразить свой компьютер.
- DDoS-атак.
Противодействие обнаружению
Во времена MS-DOS были распространены стелс-вирусы, перехватывающие прерывания для обращения к операционной системе. Вирус таким образом мог скрывать свои файлы из дерева каталогов или подставлять вместо заражённого файла исходную копию.[источник не указан 743 дня]
С широким распространением
Также применяется
Профилактика и лечение
В настоящий момент существует множество антивирусных программ, используемых для предотвращения попадания вирусов в ПК. Однако нет гарантии, что они смогут справиться с новейшими разработками. Поэтому следует придерживаться некоторых мер предосторожности, в частности:[источник не указан 743 дня]
- Не работать под привилегированными учётными записями без крайней необходимости (учётная запись администратора в Windows).
- Не запускать незнакомые программы из сомнительных источников.
- Стараться блокировать возможность несанкционированного изменения системных файлов.
- Отключать потенциально опасную функциональность системы (например, autorun-носителей в MS Windows, сокрытие файлов, их расширений и пр.).
- Не заходить на подозрительные сайты, обращать внимание на адрес в адресной строке обозревателя.
- Пользоваться только доверенными дистрибутивами.
- Постоянно делать резервные копии важных данных, желательно на носители, которые не стираются (например, BD-R) и иметь образ системы со всеми настройками для быстрого развёртывания.
- Выполнять регулярные обновления часто используемых программ, особенно тех, которые обеспечивают безопасность системы.
Экономика
Некоторые производители антивирусов утверждают, что сейчас создание вирусов превратилось из одиночного хулиганского занятия в серьёзный бизнес, имеющий тесные связи с бизнесом спама и другими видами противозаконной деятельности[18].
Также называются миллионные и даже миллиардные суммы ущерба от действий вирусов и червей[19]. К подобным утверждениям и оценкам следует относиться осторожно: суммы ущерба по оценкам различных аналитиков различаются (иногда на три-четыре порядка), а методики подсчёта не приводятся.
Криминализация
Создателю вируса Scores, нанесшего в 1988 ущерб пользователям компьютеров Macintosh, не было предъявлено обвинений, поскольку его действия не подпадали под имеющийся на тот момент в США закон Computer Fraud and Abuse Act либо другие законы. Этот случай привёл к разработке одного из первых законов, имеющих отношение к компьютерным вирусам: Computer Virus Eradication Act (1988)[20]. Сходным образом создатель самого разрушительного вируса ILOVEYOU в 2000 году избежал наказания из-за отсутствия на Филиппинах соответствующих ситуации законов[21].
Создание и распространение вредоносных программ (в том числе вирусов) преследуется в некоторых странах как отдельный вид правонарушений: в России согласно Уголовному кодексу РФ (глава 28, статья 273), в США согласно Computer Fraud and Abuse Act, в Японии[22]. Во многих странах, однако, создание вирусов само по себе не является преступлением, и нанесенный ими вред подпадает под более общие законы о компьютерных правонарушениях[23].
Компьютерные вирусы в искусстве

В 2007 году украинский медиа-художник Степан Рябченко визуализировал виртуальную сущность компьютерных вирусов, придав им форму и образ[24][25].
См. также
- Троянская программа
- Хронология компьютерных вирусов и червей
Примечания
- ↑ 1 2 Абидарова, А. А. Вирус майнер как угроза информационной безопасности : [арх. 14 мая 2023] // Известия Тульского государственного университета. Технические науки : журн. — 2020. — № 12. — С. 77–80. — УДК 004.056.5(G).
- ↑ Савицкий, А. Опрос: Самая непонятная киберугроза : [арх. 6 июля 2015] // Лаборатория Касперского : блог. — 2014. — 10 февраля.
- ↑ Нейман Джон фон. Теория самовоспроизводящихся автоматов (англ.). — Лондон: University of Illinois Press, 1966.
- ↑ McIlroy et al. Darwin, a Game of Survival of the Fittest among Programs. Архивировано 9 августа 2005 года.
- ↑ Thomas Chen, Jean-Marc Robert 'Evolution of Viruses and Worms' (VX heavens) . web.archive.org (17 мая 2009). Дата обращения: 9 октября 2023. Архивировано 17 мая 2009 года.
- ↑ Вирус RCE-1813 (Jerusalem — Иерусалим) . Дата обращения: 21 июня 2020. Архивировано 3 июня 2021 года.
- ↑ George Smith. The Original Anti-Piracy Hack Архивная копия от 10 июня 2011 на Wayback Machine SecurityFocus, 12 августа 2002
- ↑ AlgoNet — Эпидемия [[blaster (компьютерный червь)|MSBlast]] оказалась гораздо обширнее, чем предполагалось . Дата обращения: 7 июня 2010. Архивировано 2 апреля 2015 года.
- ↑ Cost of Sasser is $500m and counting Архивная копия от 17 августа 2010 на Wayback Machine Silicon.com
- ↑ The Scarred Man Архивная копия от 27 сентября 2011 на Wayback Machine (англ.)
- ↑ Fred Cohen. Computer Viruses — Theory and Experiments (англ.) Архивировано 21 марта 2011 года.
- ↑ Коэн Ф. Компьютерные вирусы — теория и эксперименты Архивная копия от 30 сентября 2007 на Wayback Machine (рус.)
- ↑ Leonard Adleman. An Abstract Theory of Computer Viruses (англ.) Архивировано 29 октября 2005 года.
- ↑ Цитируется по: Diomidis Spinellis. Reliable Identification of Bounded-length Viruses is NP-complete Архивировано 29 октября 2005 года. IEEE Transactions on Information Theory, 49(1), pp. 280—284, January 2003
- ↑ 1 2 Fred Cohen. Computational aspects of computer viruses Архивировано 21 февраля 2006 года. Computers & Security, vol. 8, № 4, pp. 325—344, June 1989
- ↑ Alan M. Turing. On computable numbers, with an application to the Entscheidungs Problem. Proceedings of the London Mathematical Society, vol. 2, № 42, pp. 230—265, 1936, Corrections in 2(43): pp. 544—546
- ↑ Billy Belcebu. Метаморфизм Архивная копия от 5 июля 2011 на Wayback Machine Xine#4, перев. с англ. v0id
- ↑ Виталий Камлюк. Ботнеты . Вирусная энциклопедия. Лаборатория Касперского (13 мая 2008). Дата обращения: 13 декабря 2008.
- ↑ Роман Боровко. Экономический ущерб от вирусов . Рынок информационной безопасности 2003. CNews-Аналитика. Дата обращения: 13 декабря 2008. Архивировано 19 января 2012 года.
- ↑ Charles Ritstein. Virus Legislation // Executive Guide to Computer Viruses. — NCSA, 1992.
- ↑ Jody R. Westby. Laws on Crimes against Computer Systems // International Guide to Combating Cybercrime. — ABA Publishing, 2003.
- ↑ Legislation Criminalizing Creation of Computer Viruses Enacted . Дата обращения: 11 ноября 2015. Архивировано 24 февраля 2016 года.
- ↑ Авторы: Thomas J Holt,Adam M Bossler,Kathryn C Seigfried-Spellar. Legal challanges in dealing with malware // Cybercrime and Digital Forensics: An Introduction. — New York: Routledge, 2015. — С. 103.
- ↑ Смотрите: Серия работ “Компьютерные вирусы” Степана Рябченко . officiel-online.com. Дата обращения: 15 июня 2020. Архивировано 13 июня 2020 года.
- ↑ Цвет Чернобыля в работе украинского художника Степана Рябченко . ArtsLooker (26 апреля 2020). Дата обращения: 15 июня 2020. Архивировано 1 августа 2020 года.
Ссылки
- Thimbleby H. A framework for modelling trojans and computer virus infection : [англ.] / Harold Thimbleby, Stuart Anderson, Paul Cairns.
- Truth about computer security histeria : [англ.]. / VMYTHS
- Развитие мобильных вирусов.