| |
Компьютерные вирусы — разновидность
вредоносных программ, отличительной особенностью которых
является способность к размножению (саморепликации). В
дополнение к этому они могут повреждать или полностью
уничтожать данные, подконтрольные пользователю, от имени
которого была запущена заражённая программа.
(
Инф. об антивирусных программах )
Неспециалисты иногда к компьютерным
вирусам причисляют все вредоносные программы, такие как
троянские кони, программы-шпионы.
Вероятно последнее предложение цитаты
было обусловлено предположением, что переход к ОС с
разграничением доступа (каковой MS-DOS не является) сделает
существование вирусов невозможным. Вирусы распространялись,
внедряя себя в исполняемый код других программ, или же заменяя
собой другие программы.
Из-за внедрения исполняемого кода —
например, макросов — в документы, появились макровирусы,
поражающие такие документы (например Microsoft Word и Excel).
До недавнего времени считалось, что
являясь программой вирус может заразить только программу —
какое угодно изменение непрограммы является не
заражением, а просто повреждением данных. Подразумевалось, что
такие копии вируса не получают управления, будучи информацией,
не использующейся процессором в качестве инструкций. Так,
например неформатированный текст (*.txt — plain/text (см. MIME))
не мог бы быть переносчиком вируса.
Некоторое время спустя появились
вирусы, использующие
уязвимости
в популярном программном обеспечении (например,
Adobe Photoshop,
Internet Explorer,
Outlook),
в общем случае обрабатывающем данные. Вирусы стали
распространяться посредством внедрения в последовательности
данных (например, картинки, тексты, и т. д.) специального кода,
использующего уязвимости программного обеспечения. Можно
сказать, что именно с этого периода пользователь компьютера стал
наименее защищён от вирусов.
Происхождение
термина
Компьютерный вирус был назван по
аналогии с
вирусами
биологическими. По всей видимости, впервые слово вирус по
отношению к программе было употреблено
Грегори Бенфордом
(Gregory
Benford), в фантастическом
рассказе «Человек
в шрамах» (The Scarred Man),
опубликованном в журнале
Venture в
мае
1970.
Термин компьютерный вирус впоследствии не раз открывался и
переоткрывался — так переменная в программе
PERVADE (1975),
от значения которой зависело будет ли программа ANIMAL
распространяться по диску, называлась VIRUS, так же вирусом
назвал свои программы
Джо Деллиндер,
и, вероятно, — это и был первый вирус, названный «вирусом».
В настоящее время не существует единой
системы классификации и именования вирусов (хотя попытка создать
стандарт была предпринята на встрече CARO в 1991 году). Принято
разделять вирусы по поражаемым объектам (файловые
вирусы, загрузочные вирусы,
скриптовые
вирусы,
сетевые черви),
по поражаемым операционным системам и платформам (DOS,
Microsoft Windows,
Unix,
GNU/Linux,
Java и
другие), по технологиям используемым вирусом (полиморфные
вирусы,
стелс-вирусы),
по языку на котором написан вирус (ассемблер,
высокоуровневый язык программирования,
скриптовый язык и др.).
Классификация
файловых вирусов по способу заражения
По способу заражения файловые вирусы
(вирусы, внедряющие свой код в исполняемые файлы: командные
файлы, программы, драйверы, исходный код программ и
др.)разделяют на перезаписывающие, паразитические,
вирусы-звенья, вирусы-черви, компаньон-вирусы, а так же вирусы,
поражающие исходные тексты программ и компоненты программного
обеспечения (VCL, LIB и др.).
- Перезаписывающие вирусы
- Вирусы данного типа записывают
свое тело вместо кода программы, не изменяя названия
исполняемого файла, вследствие чего исходная программа
перестает запускаться. При запуске программы выполняется код
вируса, а не сама программа.
- Вирусы-компаньоны
- Компаньон-вирусы, как и
перезаписывающие вирусы, создают свою копию на месте
заражаемой программы, но в отличие от перезаписываемых не
уничтожают оригинальный файл, а переименовывают или
перемещают его. При запуске программы вначале выполняется
код вируса, а затем управление передается оригинальной
программе.
Возможно существование и других типов вирусов-компаньонов,
использующих иные оригинальные идеи или особенности других
операционных систем. Например, PATH-компаньоны, которые
размещают свои копии в основном каталоге Windows, используя
тот факт, что этот каталог является первым в списке PATH, и
файлы для запуска Windows в первую очередь будет искать
именно в нём. Данными способом самозапуска пользуются также
многие
компьютерные черви
и
троянские программы.
- Файловые черви
- Файловые черви создают собственные
копии с привлекательными для пользователя названиями
(например Game.exe, install.exe и др.) в надежде на то, что
пользователь их запустит.
- Вирусы-звенья
- Как и компаньон-вирусы, не
изменяют код программы, а заставляют операционную систему
выполнить собственный код, изменяя адрес местоположения на
диске зараженной программы, на собственный адрес. После
выполнения кода вируса управление обычно передается
вызываемой пользователем программе.
- Паразитические вирусы
- Паразитические вирусы — это
файловые вирусы изменяющие содержимое файла добавляя в него
свой код. При этом зараженная программа сохраняет полную или
частичную работоспособность. Код может внедряться в начало,
середину или конец программы. Код вируса выполняется перед,
после или вместе с программой, в зависимости от места
внедрения вируса в программу.
- Вирусы, поражающие исходный код
программ
- Вирусы данного типа поражают или
исходный код программы, либо её компоненты (OBJ-, LIB-, DCU-
файлы) а так же VCL и ActiveX компоненты. После компиляции
программы оказываются в неё встроенными. В настоящее время
широкого распространения не получили.
Канал
распространения
Сейчас основной канал распространения
вирусов —
электронная почта.
Так же распространена рассылка ссылок на якобы фото, музыку либо
программы, в действительности являющиеся вирусами, по ICQ и
другим IM, и по электронной почте. Возможно так же заражение
через странички интернет. В этом случае используются уязвимости
ПО установленного на компьютере пользователя, либо уязвимости в
ПО владельца сайта (это опаснее всего, так как заражению
подвергаются добропорядочные сайты с большим потоком
посетителей).
Хакеры и
спамеры
используют зараженные компьютеры пользователей для рассылки
спама или
DDoS-атак.
Экономика
Некоторые производители
антивирусов
утверждают, что сейчас создание вирусов превратилось из
одиночного хулиганского занятия в серьёзный бизнес имеющий
тесные связи с бизнесом
спама и
другими видами противозаконной деятельности. Также называются
миллионные и даже миллиардные суммы ущерба от действий вирусов и
червей. К подобным утверждениям и оценкам следует относиться
предельно скептически, так, например, суммы ущерба по оценкам
различных аналитиков различаются (иногда на три-четыре порядка),
а методики подсчёта не приводятся.
История
Первые самовоспроизводящиеся программы
Основы теории самовоспроизводящихся
механизмов заложил американец венгерского происхождения
Джон фон Нейман
(John von Neumann), который в
1951
предложил метод создания таких механизмов. Первой публикацией,
посвященной созданию самовоспроизводящихся систем, является
статья Л. С. Пенроуз (L. S. Penrose) (жена нобелевского лауреата
по физике Р. Пенроуза) о самовоспроизводящихся механических
структурах, опубликованная в
1957.
американским журналом «Nature».
В этой статье, наряду с примерами чисто механических
конструкций, была приведена некая двумерная модель подобных
структур, способных к активации, захвату и освобождению. По
материалам этой статьи Ф. Ж. Шталь (F. G. Stahl)
запрограммировал на машинном языке ЭВМ
IBM 650
биокибернетическую модель, в которой существа двигались, питаясь
ненулевыми словами. При поедании некоторого числа символов
существо размножалось, причём, дочерние механизмы могли
мутировать. Если кибернетическое существо двигалось определённое
время без питания, оно погибало.
В
1961
В. А. Высотский (V. А. Vyssotsky), Х. Д. Макилрой (H. D. McIlroy)
и Роберт Моррис (Robert Morris) — фирма Bell Telephone
Laboratories, США — изобрели достаточно необычную игру
«Дарвин»,
в которой несколько
ассемблерных
программ, названных «организмами», загружались в память
компьютера. Организмы, созданные одним игроком (то есть
принадлежащие к одному виду), должны были уничтожать
представителей другого вида и захватывать жизненное
пространство. Победителем считался тот игрок, чьи организмы
захватывали всю память или набирали наибольшее количество очков.
Появление
первых вирусов
Появление первых компьютерных вирусов
зачастую ошибочно относят к
70-м, и
даже
60-м
годам
XX века.
Обычно упоминаются, как «вирусы» такие программы, как
Animal,
Creeper,
Cookie Monster
и
Xerox worm.В
феврале
1980 года
студент Дортмундского университета Юрген Краус подготовил
дипломную работу по теме «Самовоспроизводящиеся программы» («Selbstreproduktion
bei programmen»), в которой
помимо теории приводились так же и листинги строго
самовоспроизводящихся программ (которые вирусами на самом деле
не являются) для компьютера
Siemens.
Вполне очевидно, что все описанные
примеры не являются компьютерными вирусами в строгом смысле, и
хотя они и оказали существенное влияние на последующие
исследования, первыми известными вирусами являются
Virus 1,2,3
и
Elk Cloner
для ПК
Apple II.
Оба вируса очень схожи по функциональности и появились
независимо друг от друга, с небольшим промежутком во времени в
1981.
Первые
вирусы
С появлением первых персональных
компьютеров
Apple в
1977 и
развитием сетевой инфраструктуры начинается новая эпоха истории
вирусов. Появились первые программы-вандалы, которые под видом
полезных программ выкладывались на
BBS,
однако после запуска уничтожали данные пользователей. В это же
время появляются троянские программы-вандалы, проявляющие свою
деструктивную сущность лишь через время или при определенных
условиях.
Глобализация проблемы
вирусов
Начиная с 1990 года
проблема вирусов начинает принимать глобальные
размах.
В начале года выходит
первый полиморфный вирус — Chameleon. Данная
технология была быстро взята на вооружение и в
сочетании со стелс-технологии (Stealth) и
бронированием (Armored) позволила новым вирусам
успешно противостоять существующим антивирусным
пакетам. Во второй половине 1990-го появились
два стелс-вируса — Frodo и Whale. Оба вируса
использовали крайне сложные стелс-алгоритмы, а
девятикилобайтный «Whale» к тому же применял
несколько уровней шифровки и анти-отладочных
приемов.
В Болгарии открывается
первая в мире специализированная BBS, с которой
каждый желающий может скачать свежий вирус.
Начинают открываться конференции Usenet по
вопросам написания вирусов. В этом же году
выходит «Маленькая Черная Книжка о Компьютерных
Вирусах» Марка Людвига.
На проблему
противостояния вирусам были вынуждены обратить
внимание крупные компании — выходит Symantec
Norton Antivirus.
Начало 1991 года
отмечено массовой эпидемией полиморфного
загрузочного вируса Tequila. Летом 1991 появился
первый link-вирус, который сразу же вызвал
эпидемию.
1992 известен, как год
появления первых конструкторов вирусов для PC —
VCL (для Amiga конструкторы существовали и
ранее), а так же готовых полиморфных модулей (MtE,
DAME и TPE) и модулей шифрования. Начиная с
этого момента, каждый программист мог легко
добавить функции шифрования к своему вирусу.
Кроме того, в конце 1992 появился первый вирус
для Windows 3.1 — WinVer.
В 1993 появляется все
больше и больше вирусов, использующих необычные
способы заражения файлов, проникновения в
систему и т. д. Основными примерами являются:
PMBS, работающий в защищенном режиме процессора
Intel 80386. «Shadowgard» и «Carbuncle»,
значительно расширившие диапазон алгоритмов
компаньон-вирусов. «Cruncher» — использование
принципиально новых приемов сокрытия своего кода
в зараженных файлах.
Выходят новые версии
вирусных генераторов, а так же появляются новые
(PC-MPC и G2). Счет известных вирусов уже идет
на тысячи. Антивирусные компании разрабатывают
ряд эффективных алгоритмов для борьбы с
полиморфными вирусами, однако сталкиваются с
проблемой ложных срабатываний.
В начале 1994 года в
Великобритании появились два крайне сложных
полиморфик-вируса — SMEG.Pathogen и SMEG.Queeg.
Автор вирусов помещал зараженные файлы на
станции BBS, что явилось причиной настоящей
эпидемии и паники в средствах массовой
информации. Автор вируса был арестован. В январе
1994 появился Shifter — первый вирус, заражающий
объектные модули (OBJ-файлы). Весной 1994 был
обнаружено SrcVir, семейство вирусов, заражающих
исходные тексты программ (C и Pascal). В июне
1994 года началась эпидемия OneHalf.
В 1995 появляется
несколько достаточно сложных вирусов (NightFall,
Nostradamus, Nutcracker). Появляются первый
«двуполый» вирус «RMNS» и BAT-вирус Winstart.
Широкое распространение получили вирусы ByWay и
DieHard2 — сообщения о зараженных компьютерах
были получены практически со всего мира. В
феврале 1995 случился инцидент с beta-версией
Windows 95, все диски которой оказались заражены
Dos вирусом Form.
|