четверг, 18 апреля 2013 г.

История развития компъютерных вирусов


Что такое вирус?

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

Среда распространения компьютерных вирусов – каналы, по которым распространяется информация. Что это за информация, с точки зрения вирусологии не имеет ровным счетом никакого значения. Поэтому вызывают недоумение периодически вспыхивающие споры о том, какова преобладающая причина появления в компьютере вирусов. Наиболее часто в числе основных каналов распространения вирусов называют: игры, пиратские диски, Интернет, электронную почту и флеш-накопители.


Возникновение вирусов

Компьютерные вирусы  являются одной из разновидностей компьютерного вандализма,  получившего распространение в конце 80-х гг. Исторически их  возникновение связано с идеей создания самовоспроизводящихся программ  ­­– концепции, уходящей своими корнями в пятидесятые годы. 
Компьютерные вирусы — почти ровесники компьютеров. Декабрь 1949 года можно считать началом возникновения компьютерных вирусов. Именно тогда в Илинойсском университете отец вычислительной техники Джон фон Нейман читал серию лекций «Теория и организация сложных автоматов», которая и легла в основу теории саморазмножающиеся программ, напоминающих нынешних «вредителей». Однако это была теория. Несомненно, идея вирусоподобных программ неоднократно открывалась  и переоткрывалась различными авторами. Тем не менее, восстановление приоритета исследователей в опубликовании той или  иной грани  концепции вирусоподобных  программ является в какой-то мере  актом восстановления  справедливости по отношению к тем, чьи работы были незаслуженно забыты или вообще проигнорированы. Это  касается прежде  всего европейских  исследователей, вклад которых в разработку различных проблем системного программирования часто игнорируется или замалчивается в американских публикациях.
В 60-х годах на мэйнфреймах появились программы, клонирующие сами себя, и первым действующим вирусом можно назвать игру Darwin, которую изобрели в 1961 году сотрудники компании Bell Telephone Laboratories В.А. Высотский, Х.Д. Макилрой и Р. Моррис. А в начале 70-х был замечен первый сетевой вирус – самоперемещающаяся программа Creeper, созданная сотрудником компании BBN Бобом Томасом для подсистемы RSEXEC с целью продемонстрировать возможность самопроизвольного перемещения программ между компьютерами. The Creeper был способен войти в сеть через модем и передать свою копию удаленному компьютеру, он не приносил вреда: предыдущая копия уничтожалась, а вирус перемещался на следующий компьютер. Для борьбы с ним была разработана еще одна программа – Reaper, которую можно считать первым антивирусом. Перемещаясь по сети, Reaper отыскивал действующие копии Creeper и прекращал их работу.
Считают, что идея создания компьютерных вирусов была придумана писателем-фантастом Т. Дж. Райн, который в одной из своих книг, опубликованной в США в 1977 году, описал эпидемию, за короткое время поразившую более 7000 компьютеров. В вышедшем в 1975 г. Научно фантастическом романе The Shockware Rider Джон  Бруннер (John  Brunner) [Brunner75] описал червей – программы, распространяющиеся  по сети.  Эта идея  в  определенной степени предвосхитила  последующие события (см. ниже сетевой вирус Морриса), хотя  ее осуществление находилось за пределами возможностей компьютеров того времени. Данная книга оказалась в числе бестселлеров и безусловно повлияла на ход дальнейших событий.
  В 1977 г.  издательством Collier  Books был опубликован еще один научно-фантастический роман – The Adolescence of P-1 (Юность П-
1) [Ryan77],  разрабатывавший ту  же тему.  Его автор, Томас Риан (Thomas J.  Ryan), создал образ достаточно жуткого разумного вируса, занимающегося сбором информации.
Причиной эпидемии стал компьютерный вирус, который, передаваясь от одного компьютера к другому, внедрялся в их операционные системы и выводил их из-под контроля человека.


Первые эксперименты

  В   1962 г.    В.А.Высотский    (V.А.Vyssotsky),    Х.Д.Макилрой
(H.D.McIlroy)  и  Роберт  Моррис  (Robert  Morris)  –  фирма  Bell
Telephone Laboratories,  США -  изобрели достаточно необычную игру
Дарвин, в  которой несколько  ассемблерных  программ,  названных организмами, загружались в память компьютера. Организмы, созданные одним  игроком (т.е. принадлежащие к одному виду), должны были уничтожать представителей  другого вида  и  захватывать  жизненное пространство. Победителем считался тот игрок, чьи организмы захватывали всю  память или  набирали наибольшее количество очков. Игра проходит на  большом участке памяти, называемом ареной и управляемом специальной  программой – супервизором. Вид V состоит из N(V) особей. Каждая  особь (K=1..N(V))  имеет размер  S(K)  (K=1..N(V), S(K) <  MAXS) и расположена в R(K) последовательных ячейках, начиная   с   головы   G(K),   причем   R(V)   точек   со   смещениями P(K,1)..P(K,R(V)) относительно  головы являются защищенными. Организм, который получает управление, может использовать три вида обращения к супервизору:  PROBE(n,loc) -- запрос  о содержании  ячейки с  адресом loc (если эта ячейка защищена, то управление передается ее обладателю, а если нет, то возвращаются три числа -- <номер вида организма, занимающего ячейку>  (ноль, если  ячейка свободна),  <начало> и  <конец> (если ячейка свободна, то начало и конец свободного участка арены в который она входит; нули, если ячейка занята организмом));  KILL(loc) -- уничтожить  организм по  адресу loc (loc должна принадлежать организму другого вида и должна быть предварительно исследована PROBE любым организмом того же вида, что и нападающий);  CLAIM(n,loc) -- размножить  организм на  участок свободного  пространства, включающий  loc (ячейка  loc должна быть предварительно исследована с помощью PROBE и не менее S(K) ячеек должно быть свободно, возможно, в результате предыдущего KILL).
Игра  для  полуночников,  возникшая  в  фирме  Bell  Telephone Laboratories, быстро  приобрела популярность  и в других учебных и исследовательских центрах,  например в   исследовательском  центре фирмы Ксерокс в Пало Альто и в Массачусетском институте технологии (МИТ). Отметим, что долгое время описание игры существовало только в устном  фольклоре: статья  с описанием  игры была опубликована только в 1972 г. [SP&E72], причем в ее тексте использовался термин вирус применительно к одному из видов организмов.  Приблизительно в  1970 г. была  создана саморазмножающаяся  программа для одной из первых компьютерных сетей– APRAnet. Программа CREEPER, которая  по некоторым  данным была написана Бобом Томасом (Bob Thomas)  из BBN, путешествовала по сети, обнаруживая свое появление сообщением
           I'M THE CREEPER ... CATCH ME IF YOU CAN
          (Я КРИПЕР ... ПОЙМАЙ МЕНЯ, ЕСЛИ СМОЖЕШЬ).
Для борьбы  с ней  была создана  программа REAPER, которая также
путешествовала  по  сети  и  уничтожала  встретившиеся  экземпляры
CREEPER. Эта  идея, представляющая собой вариацию подхода, распространенного в среде знахарей, – подобное лечится подобным, позднее неоднократно  использовалась и  в других  программах борьбы  с ранними вирусами, однако в целом оказалась неудачной.
В 1974 г.  была написана программа RABBIT (Кролик), которая размножалась на  трех соединенных между собой машинах IBM, причем появление новых подзадач вызывало замедление реакции, а затем и полное зависание машин.
  Другим примером  вирусоподобных программ была игра Animal (Животное), разработанная примерно в 1975 г. для UNIVAC 1108. Суть этой игры состояла  в том,  что человек задумывал некоторое животное, и программа, задавая  вопросы, пыталась  определить, какое  животное загадал человек.  Программист, написавший игру, предусмотрел в ней возможность саморазмножения.  Когда программа угадывала неправильно, она  просила пользователя  предложить вопрос, который позволил бы улучшить ее способности к отгадыванию данного животного. Запомнив этот вопрос, программа не только модифицировала себя, но и пыталась переписать свою обновленную (улучшенную) копию в другой каталог. Если  там уже  была программа  Animal, то  она стиралась. В противном случае создавалась новая копия. Оказалось, что через некоторое  время  все  каталоги  файловой  системы  содержали  копию Animal. Более  того, если пользователь переходил с машины на машину, то он переносил и свой каталог, и в результате во всех каталогах этой  ЭВМ также появлялась Animal. При этом совокупность копий Animal занимала  значительное файловое пространство, что в те времена воспринималось  как проблема.  В соответствии  с  фольклорной версией решения проблемы,  опубликованной в [Dewdney85], была разработана новая, более инфицирующая модификация игры, которая копировала себя не один раз, а дважды, тем самым быстро вытесняя собой старую  версию. По  истечении заданного  срока она  предлагала пользователю сыграть  последний раз,  а затем  сама стирала себя с диска. В действительности, борьба проходила на уровне операционной системы: в  версии 33 операционной системы Exec 8 для этой ЭВМ был изменен формат таблицы файлов, и игра потеряла возможность размножаться.


Темная сторона

В те же дни были замечены первые признаки объединения создателей вирусов и спамеров. «Троянские» программы нового класса внедряли на зараженном компьютере прокси-сервер, который затем без ведома владельца ПК использовался для рассылки спама. Это опасное явление свидетельствует о нарастающей криминализации Интернета. Теперь вредоносные программы пишут не из хулиганских побуждений, а ради наживы — заработать можно, например, на рассылке спама или используя так называемое «шпионское» ПО.
Новым словом в вирусологии стал вирус под названием «Чернобыль» или WIN95.CIH. Данный вирус в отличие от своих собратьев в зависимости от модификации мог уничтожать MBR жесткого диска, таблицу размещения данных и не защищенную от перезаписи Flash-память. Волна эпидемии этого вируса прокатилась по всему миру. Громадный материальный ущерб был нанесен в Швеции. 26 апреля 1999 года пострадало большое количество пользователей и в России. Эпидемия вируса Win95.CIH была на тот момент самой разрушительной.
Червь I love you, выпущенный на Филиппинах в мае 2000 года, нанес владельцам компьютеров ущерб на сумму, по некоторым оценкам превышающую $10 млрд. Следующий червь, вошедший в историю как Code Red, за 14 часов сумел заразить более 300 тыс. компьютеров, подключенных к Интернету. После них были и другие, часто – первые в определенной категории. Например, Nimda (слово admin, прочитанное наоборот), многовекторный червь, распространялся сразу несколькими способами, включая «черные ходы», оставленные другими червями. MyDoom был признан самым быстрым червем, распространяющимся по электронной почте. До этого большая часть вирусов была написана на языке низкого уровня – ассемблере, позволявшем создать небольшой оптимизированный вирус


Заключение

Что же нас ожидает в будущем? Честно говоря, ничего хорошего. Если учесть тот факт, что в конце 80-х годов, с тогдашним уровнем развития коммуникаций и малой распространенностью персональных компьютеров, вспыхивали настоящие эпидемии, то что же говорить о нынешнем дне, когда каждый школьник имеет доступ к компьютеру, подключенному к Сети, когда интернет превратился из технической библиотеки для специалистов в вещь, почти столь же привычную, как телевизор.
На сегодняшний день насчитывается порядка 50 тыс. разновидностей компьютерных вирусов, начиная от безобидных, до самых опасных. И ежемесячно библиотека вирусов пополняется ещё на 50 уникальных экземпляров.
Не следует думать, что если на вашем компьютере установлена программа, называемая антивирусом, специально разработанная для борьбы с вирусами, ваш ПК будет защищен от вредоносных программ на все 100%.
На данный момент ни одна компания, разрабатывающая антивирусы не может организовать абсолютную защиту. Ведь зачастую, вначале создается вирусная программа, а после этого антивирусные лаборатории придумывают способ, которым можно это обезвредить и «вылечить» повреждённые файлы.

Комментариев нет:

Отправить комментарий

 

Новости

Обновлен дизайн сайта

Присоединяйтесь

About