что такое скриптовый вирус
Компьютерный вирус
Вредоносный код, который может повредить или удалить файлы и программы на вашем компьютере.
Что такое компьютерный вирус?
Это вид вредоносного программного обеспечения, которое способно распространять свои копии с целью заражения и повреждения данных на устройстве жертвы. Вирусы могут попасть на компьютер из других уже зараженных устройств, через носители информации (CD, DVD и т.п.) или через Интернет-сеть.
Вирусная программа: основные виды
Файловые — заражают файлы с расширениями «.exe» или «.com».
Скриптовые — подвид файловых вирусов, написанных на разных языках скриптов (VBS, JavaScript, BAT, PHP и т.д.). Этот тип способен заражать другие форматы файлов, например, HTML.
Загрузочные — атакуют загрузочные секторы сменных носителей (диски, дискеты или флэш-накопители), устанавливаясь при запуске устройства.
Макровирусы, как правило, встроенные в программы для обработки текстов или электронных таблиц. Примером является Microsoft Word (.doc) и Microsoft Excel (.xls).
Краткая история
Фредерик Коэн, студент Южно-Калифорнийского университета, и профессор Адлеман заложили основу для исследования компьютерных угроз.
3 ноября 1983 года Фредерик Коэн впервые продемонстрировал программу, подобную на компьютерный вирус, которая могла самостоятельно устанавливаться и заражать другие системы.
В это время его преподаватель, профессор Адлеман, ввел термин «компьютерный вирус».
В рамках своей работы в 1984 году Коэн написал работу под названием «Компьютерные вирусы — теория и эксперименты». Это был первый научно-исследовательский документ, который использовал данный термин.
Известные примеры
Наиболее масштабной угрозой считается компьютерный вирус «Мелисса», разработанный в 1999 году американцем Дэвидом Л. Смитом. В течение нескольких часов угроза заразила десятки тысяч компьютеров во всем мире, в том числе и устройства государственных учреждений. Стоит отметить, что угроза распространялась через электронную почту с вложенным документом Word, после чего зараженное письмо автоматически отправлялось еще на 50 адресов жертвы.
По данным исследователей, вредоносная программа «Мелисса» нанесла ущерб в размере 80 миллионов долларов США.
Узнать больше
Вторая известная атака была вызвана вирусом «Микеланджело» в 1991 году. Угроза заражала дисковые операционные системы, а именно главную загрузочную запись жесткого диска и загрузочный сектор дискеты. Особенностью этого вредоносного программного обеспечения является активация в день рождения великого художника Микеланджело. Это совпадение заставило исследователей дать именно такое название угрозе.
И хотя ее точное происхождение неизвестно, существует предположение, что она была создана в Австралии или Новой Зеландии.
По данным исследователей, вредоносная программа «Микеланджело» инфицировала более 5 миллионов компьютеров во всем мире, а убытки за потерянные данные оценивают в размере от 20 до 30 тысяч долларов США.
Антивирусная прав ДА! TM
Кругозор без горизонтов
Чтобы получить доступ к сервисам проекта, войдите на сайт через аккаунт. Если у вас еще нет аккаунта, его можно создать. Подписка
О вредоносных скриптах: как они работают, чем опасны и как не столкнуться с ними
Один из наших читателей в соцсетях задал вопрос о вредоносных скриптах и общей безопасности при работе в Интернете. В частности, он интересовался защитой от угроз на JavaScript и других скриптов, размещаемых злоумышленниками на веб-страницах, а также попросил дать несколько советов по правильной настройке веб-антивируса Dr.Web. Благодарим за актуальный вопрос – ведь это отличный повод разобраться, в чем же там дело!
Если рассказывать обо всех вредоносных скриптах, которые когда-либо видели специалисты нашей вирусной лаборатории, то статья по своему объему потянет на учебник и явно не впишется в формат «Антивирусной правды». Вы наверняка уже догадались, что это очень многообразный, а значит – распространенный тип вредоносных программ.
Что же такое вредоносный скрипт?
В широком смысле всякий скрипт – это программный код (сценарий), написанный на различных интерпретируемых языках. Все скрипты выполняются с помощью внешней программы – интерпретатора. В отличие от исполняемых файлов, скрипты в большинстве своем существуют в виде текстовых файлов и могут быть прочитаны человеком. Например, исходный код скомпилированного файла привести в первозданный вид почти невозможно, а скрипты, напротив, всегда содержат исходный код. По принципу работы «плохие» скрипты ничем не отличаются от «хороших».
Вредоносные скрипты можно условно разделить на два вида.
В контексте работы в Интернете под вредоносными скриптами чаще всего подразумевается первый вид. Такие сценарии как правило написаны на JavaScript и PHP. Они находятся в коде страниц недобросовестных или взломанных сайтов и пытаются майнить криптовалюту в браузере пользователя, отображают рекламу с целью накруток, перенаправляют на другие сайты, зачастую мошеннические и опасные. К веб-скриптам можно отнести и PHP-инфекторы, которые заражают «хорошие» скрипты на серверной стороне. Кроме того, вредоносный код может находиться в составе расширений для браузеров.
Теоретически скрипт веб-страницы может быть использован как эксплойт – набор ошибочно интерпретируемых браузером данных, позволяющий получить доступ к атакуемой системе. Однако в настоящее время такие эксплойты встречаются все реже в виду развития браузеров, которые ограничивают доступ к функциям ОС, поэтому вредоносный код на сайте едва ли может навредить компьютеру в целом. Но несмотря на это, упомянутых деструктивных функций вполне достаточно, чтобы сильно испортить жизнь любому пользователю. Реклама, мошенничество, фишинг, замедление работы браузера, даже сам взлом сайтов – это все про веб-скрипты. К тому же они кроссплатформенны и очень распространены, поскольку злоумышленники массово используют их для инфицирования страниц и веб-серверов.
Но опасность подстерегает не только на сайтах. Другим видом вредоносных скриптов являются сценарии, которые запускаются компонентами ОС. Они могут быть написаны на разных скриптовых языках: JScript, VBS, PowerShell, Perl, Python и многих других. Такие сценарии гораздо более функциональны и опасны, так как обращаются напрямую к API-объектам. Несмотря на то, что скрипты крайне редко содержат основную функциональность, они часто используются либо для начальной загрузки других вредоносных модулей в заражаемые системы, либо для промежуточных действий или вспомогательных операций. Например, в Windows часто встречаются PowerShell-скрипты, содержащие эксплойты или утилиты для продвижения по системе/сети. Хотя скрипты и считаются кроссплатформенным инструментом, некоторые из них работают только в предназначенных для этого ОС, так как для их работы важно наличие тех или иных системных API. Упомянутые PowerShell, а также BAT и JScript-сценарии работают в Windows, AppleScript предназначен для macOS, а ВПО для Linux часто представлено в виде bash-скриптов.
Системные скрипты для ОС чаще всего распространяются через электронную почту, раздаются на взломанных и вредоносных сайтах, загружаются другими программами, распространяются самостоятельно через съемные носители и сетевые ресурсы.
Добавим, что почти все вредоносные (и не только) скрипты тем или иным образом обфусцированы. Это значит, что для их детектирования часто приходится применять другие технологии, нежели традиционное сравнение по сигнатурам.
Для обезвреживания системных скриптов в Windows мы применяем алгоритмы машинного обучения, встроенные в основное антивирусное ядро. Такой подход позволяет успешно детектировать вредоносный код вне зависимости от его запутанности, что невозможно было бы сделать при помощи сигнатурного анализа.
Для блокировки веб-скриптов используется наш эвристический анализатор и веб-антивирус – SpIDer Gate. Отметим, что для эффективной защиты дополнительно настраивать какой-либо из компонентов Dr.Web не нужно, так как настройки по умолчанию соответствуют оптимальным.
Таким образом, сегодня мы узнали, что скрипты могут нести самую разную вредоносную нагрузку – являться эксплойтами, майнерами, различными вспомогательными утилитами, рекламными троянами и даже шифровальщиками. Чтобы обезопасить себя и свой компьютер, требуется использовать надежную защиту.
Обеспечение безопасности
Антивирусная защита
История появления вирусописательства чрезвычайно интересна — она ещё ждёт своего дотошного исследователя! До сих пор нет единого мнения относительно момента, который можно было бы считать официальным днём появления вируса, как не существовало и критериев, под которые можно было бы подвести то или иное ПО и отличить исследовательские эксперименты от целенаправленно написанной программы с вредоносными функциями.
В 1949 году Джон фон Нейман (John von Naumann), выдающийся американский математик венгерского происхождения, сделавший важный вклад в квантовую физику, квантовую логику, функциональный анализ, теорию множеств, информатику, экономику и другие отрасли науки, разработал математическую теорию создания самовоспроизводящихся программ. Это была первая попытка создать теорию такого явления, но она не вызвала большого интереса у научного сообщества, так как не имела видимого прикладного значения.
Нет согласия и по поводу происхождения названия «компьютерный вирус». По одной из версий это случилось 10 ноября 1983 года, когда аспирант Университета Южной Калифорнии (University of Southern California) Фред Коэн (Fred Cohen) во время семинара по безопасности в Лехайском университете (Пенсильвания, США) продемонстрировал на системе VAX 11/750 программу, способную внедряться в другие программные объекты. Эту программу можно с полным правом считать одним из первых прототипов компьютерного вируса.
Коэн внедрил написанный им код в одну из Unix-команд, и в течение пяти минут после запуска её на вычислительной машине получил контроль над системой. В четырёх других демонстрациях полного доступа удавалось добиться за полчаса, оставив поверженными все существовавшие в то время защитные механизмы.
Существует версия, что термином «вирус» назвал копирующую саму себя программу научный руководитель Фреда, один из создателей криптографического алгоритма RSA Леонард Эдлеман (Leonard Adleman).
Годом позже, на 7-й конференции по безопасности информации, Ф.Коэн дает научное определение термину «компьютерный вирус», как программе, способной «заражать» другие программы при помощи их модификации с целью внедрения своих копий и выполнения заданных действий. Отметим, что Ф.Коэн определённо не был новатором в этой области. Теоретические рассуждения о распространяющихся копированием с компьютера на компьютер программах и практическая реализация успешно осуществлялись и раньше. Однако именно презентация Ф.Коэна заставила специалистов серьёзно заговорить о потенциальном ущербе от преднамеренных атак. Всего через пятнадцать лет распространение вредоносного программного обеспечения приобрело угрожающие масштабы, радикально снизить которые не представляется возможным.
В некотором смысле опередил Ф. Коэна 15-летний школьник из Пенсильвании Рик Скрента (Rich Skrenta). Его излюбленным занятием было подшучивание над товарищами путём модификаций кода игр для Apple II, которые приводили к внезапному выключению компьютеров или выполняли другие действия. В 1982 году он написал Elk Cloner — самовоспроизводящийся загрузочный вирус, инфицировавший Apple II через гибкий магнитный диск. Во время каждой 50-й перезагрузки ПК появлялось сообщение со словами: «Он завладеет вашими дисками, он завладеет вашими чипами. Да, это Cloner! Он прилипнет к вам как клей, он внедрится в память. Cloner приветствует вас!»
Программа Р.Скрента не вышла далеко за пределы круга его друзей. Лавры достались «шедевру» программистской мысли, появившемуся несколькими годами позже. Программу Brain («Мозг») создали в 1988 году двое братьев — выходцев из Пакистана, которым приписывается инфицирование ПК через созданные ими нелегальные копии программы для мониторинга работы сердца. Вирус содержал уведомление об авторском праве с именами и телефонами братьев, поэтому пользователи заражённых машин могли обратиться к напрямую к вирусописателям за «вакциной». За первой версией Brain последовало множество модификаций, преследовавших сугубо коммерческий интерес.
В 1988 году аспирант Корнельского университета (Cornell University) Роберт Теппен Моррис младший (Robert Tappan Morris Jr.), приходившийся сыном главному научному сотруднику Агентства национальной безопасности США (National Security Agency), выпустил в свет первый широко распространившийся компьютерный червь, хотя экспериментальные работы в этой области проводились с конца 1970-х годов. Этот тип программ чаще всего не производит никаких деструктивных манипуляций с файлами пользователя и ставит целью как можно более быстрое и широкое распространение, снижая эффективность работы сетей.
По некоторым оценкам, от 5% до 10% подключённых в то время к Сети машин, по большей части принадлежавших университетам и исследовательским организациям, были атакованы им. Червь использовал уязвимости нескольких программах, в том числе Sendmail. Р.Т.Моррис стал первым человеком, осуждённым по обвинению в преступлениях в компьютерной сфере, и получил 3 года условно. Однако это не помешало ему впоследствии стать профессором Массачусетского технологического института (MIT).
Следующий большой шаг вредоносное ПО совершило в 90-х годах с ростом спроса на персональные компьютеры и количества пользователей электронной почты. Электронные коммуникации предоставили гораздо более эффективный путь инфицирования ПК, чем через носители информации. Образцом скорости распростанения стал вирус Melissa в 1999 году, внедрившийся в 250 тыс. систем. Однако он был безвреден, за исключением того, что каждый раз при совпадении времени и даты — например, 5:20 и 20 мая — на экране возникала цитата из The Simpsons.
Годом позже появился Love Bug, известный также как LoveLetter. За короткое время вирус облетел весь мир! Он был написан филиппинским студентом и приходил в электронном сообщении с темой «I Love You». Как только пользователь пытался открыть вложение, вирус через Microsoft Outlook пересылал себя по всем адресам в списке контактов. Затем скачивал троянскую программу для сбора интересующей филиппинца информации. LoveLetter атаковал около 55 миллионов ПК и заразил от 2,5 до 3 миллионов. Размер причинённого им ущерба оценивался в 10 миллиардов, но студент избежал наказания, поскольку Филиппины не имели в то время законодательной базы для борьбы с киберпреступниками [Борн Денис, http://www.wired.com].
Лавинообразное распространением вирусов стало большой проблемой для большинства компаний и государственных учреждений. В настоящее время известно более миллиона компьютерных вирусов и каждый месяц появляется более 3000 новых разновидностей [«Энциклопедия Вирусов», http://www.viruslist.com/ru/viruses/encyclopedia.].
Компьютерный вирус — это специально написанная программа, которая может «приписывать» себя к другим программам, т.е. «заражать их», с целью выполнения различных нежелательных действий на компьютере, в вычислительной или информационной системе и в сети.
Когда такая программа начинает работу, то сначала, как правило, управление получает вирус. Вирус может действовать самостоятельно, выполняя определенные вредоносные действия (изменяет файлы или таблицу размещения файлов на диске, засоряет оперативную память, изменяет адресацию обращений к внешним устройствам, генерирует вредоносное приложение, крадет пароли и данные и т.д.), или «заражает» другие программы. Зараженные программы могут быть перенесены на другой компьютер с помощью дискет или локальной сети.
Формы организации вирусных атак весьма разнообразны, но в целом практически их можно «разбросать» по следующим категориям:
К вредоносному программному обеспечению относятся сетевые черви, классические файловые вирусы, троянские программы, хакерские утилиты и прочие программы, наносящие заведомый вред компьютеру, на котором они запускаются на выполнение, или другим компьютерам в сети.
Сетевые черви
Основным признаком, по которому типы червей различаются между собой, является способ распространения червя — каким способом он передает свою копию на удаленные компьютеры. Другими признаками различия КЧ между собой являются способы запуска копии червя на заражаемом компьютере, методы внедрения в систему, а также полиморфизм, «стелс» и прочие характеристики, присущие и другим типам вредоносного программного обеспечения (вирусам и троянским программам).
Пример — E-mail-Worm — почтовые черви. К данной категории червей относятся те из них, которые для своего распространения используют электронную почту. При этом червь отсылает либо свою копию в виде вложения в электронное письмо, либо ссылку на свой файл, расположенный на каком-либо сетевом ресурсе (например, URL на зараженный файл, расположенный на взломанном или хакерском веб-сайте). В первом случае код червя активизируется при открытии (запуске) зараженного вложения, во втором — при открытии ссылки на зараженный файл. В обоих случаях эффект одинаков — активизируется код червя.
Для отправки зараженных сообщений почтовые черви используют различные способы. Наиболее распространены:
Различные методы используются почтовыми червями для поиска почтовых адресов, на которые будут рассылаться зараженные письма. Почтовые черви:
Многие черви используют сразу несколько из перечисленных методов. Встречаются также и другие способы поиска адресов электронной почты. Другие виды червей: IM-Worm — черви, использующие Internet-пейджеры, IRC-Worm — черви в IRC-каналах, Net-Worm — прочие сетевые черви.
Классические компьютерные вирусы
К данной категории относятся программы, распространяющие свои копии по ресурсам локального компьютера с целью: последующего запуска своего кода при каких-либо действиях пользователя или дальнейшего внедрения в другие ресурсы компьютера.
В отличие от червей, вирусы не используют сетевых сервисов для проникновения на другие компьютеры. Копия вируса попадает на удалённые компьютеры только в том случае, если зараженный объект по каким-либо не зависящим от функционала вируса причинам оказывается активизированным на другом компьютере, например:
Некоторые вирусы содержат в себе свойства других разновидностей вредоносного программного обеспечения, например бэкдор-процедуру или троянскую компоненту уничтожения информации на диске.
Многие табличные и графические редакторы, системы проектирования, текстовые процессоры имеют свои макроязыки (макросы) для автоматизации выполнения повторяющихся действий. Эти макроязыки часто имеют сложную структуру и развитый набор команд. Макро-вирусы являются программами на макроязыках, встроенных в такие системы обработки данных. Для своего размножения вирусы этого класса используют возможности макроязыков и при их помощи переносят себя из одного зараженного файла (документа или таблицы) в другие.
Скрипт-вирусы
Следует отметить также скрипт-вирусы, являющиеся подгруппой файловых вирусов. Данные вирусы, написаны на различных скрипт-языках (VBS, JS, BAT, PHP и т.д.). Они либо заражают другие скрипт-программы (командные и служебные файлы MS Windows или Linux), либо являются частями многокомпонентных вирусов. Также, данные вирусы могут заражать файлы других форматов (например, HTML), если в них возможно выполнение скриптов.
Троянские программы
В данную категорию входят программы, осуществляющие различные несанкционированные пользователем действия: сбор информации и её передачу злоумышленнику, ее разрушение или злонамеренную модификацию, нарушение работоспособности компьютера, использование ресурсов компьютера в неблаговидных целях. Отдельные категории троянских программ наносят ущерб удаленным компьютерам и сетям, не нарушая работоспособность зараженного компьютера (например, троянские программы, разработанные для массированных DoS-атак на удалённые ресурсы сети).
Троянские программы многообразны и различаются между собой по тем действиям, которые они производят на зараженном компьютере:
Компьютерный вирус
Компьютерный вирус — разновидность компьютерной программы, способной создавать свои копии (необязательно совпадающие с оригиналом) и внедрять их в файлы, системные области компьютера, компьютерных сетей, а также осуществлять иные деструктивные действия. При этом копии сохраняют способность дальнейшего распространения. Компьютерный вирус относится к вредоносным программам.
Содержание
Определение компьютерного вируса — исторически проблемный вопрос, поскольку достаточно сложно дать четкое определение вируса, очертив при этом свойства, присущие только вирусам и не касающиеся других программных систем. Наоборот, давая жесткое определение вируса как программы, обладающей определенными свойствами практически сразу же можно найти пример вируса, таковыми свойствами не обладающего.
Другая проблема, связанная с определением компьютерного вируса кроется в том, что сегодня под вирусом чаще всего понимается не «традиционный» вирус, а практически любая вредоносная программа. Это приводит к путанице в терминологии, осложненной еще и тем, что практически все современные антивирусы способны выявлять указанные типы вредоносных программ, таким образом ассоциация «вредоносная программа-вирус» становится все более устойчивой.
Классификация
В настоящее время не существует единой системы классификации и именования вирусов, однако, в различных источниках можно встретить разные классификации, приведем некоторые из них:
Классификация вирусов по способу заражения
Резидентные
Такие вирусы, получив управление, так или иначе остается в памяти и производят поиск жертв непрерывно, до завершения работы среды, в которой он выполняется. С переходом на Windows проблема остаться в памяти перестала быть актуальной: практически все вирусы, исполняемые в среде Windows, равно как и в среде приложений Microsoft Office, являются резидентными вирусами. Соответственно, атрибут резидентный применим только к файловым DOS вирусам. Существование нерезидентных Windows вирусов возможно, но на практике они являются редким исключением.
Нерезидентные
Получив управление, такой вирус производит разовый поиск жертв, после чего передает управление ассоциированному с ним объекту (зараженному объекту). К такому типу вирусов можно отнести скрипт-вирусы.
Классификация вирусов по степени воздействия
Безвредные
Вирусы никак не влияющие на работу компьютера (кроме уменьшения свободной памяти на диске в результате своего распространения);
Неопасные
Вирусы не мешающие работе компьютера, но уменьшающие объем свободной оперативной памяти и памяти на дисках, действия таких вирусов проявляются в каких-либо графических или звуковых эффектах;
Опасные
Вирусы, которые могут привести к различным нарушениям в работе компьютера;
Очень опасные
Вирусы, воздействие которых может привести к потере программ, уничтожению данных, стиранию информации в системных областях диска.
Классификация вирусов по способу маскировки
При создании копий для маскировки могут применяться следующие технологии:
Шифрование — вирус состоит из двух функциональных кусков: собственно вирус и шифратор. Каждая копия вируса состоит из шифратора, случайного ключа и собственно вируса, зашифрованного этим ключом.
Метаморфизм — создание различных копий вируса путем замены блоков команд на эквивалентные, перестановки местами кусков кода, вставки между значащими кусками кода «мусорных» команд, которые практически ничего не делают.
Шифрованный вирус
Это вирус, использующий простое шифрование со случайным ключом и неизменный шифратор. Такие вирусы легко обнаруживаются по сигнатуре шифратора.
Вирус-шифровальщик
В большинстве случаев вирус-шифровальщик приходит по электронной почте в виде вложения от незнакомого пользователю человека, а возможно, и от имени известного банка или действующей крупной организации. Письма приходят с заголовком вида: «Акт сверки…», «Ваша задолженность перед банком…», «Проверка регистрационных данных», «Резюме», «Блокировка расчетного счета» и прочее. В письме содержится вложение с документами, якобы подтверждающими факт, указанный в заголовке или теле письма. При открытии этого вложения происходит моментальный запуск вируса-шифровальщика, который незаметно и мгновенно зашифрует все документы. Пользователь обнаружит заражение, увидев, что все файлы, имевшие до этого знакомые значки, станут отображаться иконками неизвестного типа. За расшифровку преступником будут затребованы деньги. Но, зачастую, даже заплатив злоумышленнику, шансы восстановить данные ничтожно малы.
В 2016 году данные вирусы вышли на новый уровень, изменив принцип работы. В апреле 2016 г. в сети появилась информация о новом виде вируса-шифровальщика Петя (Petya), который вместо шифрования отдельных файлов, шифрует таблицу MFT файловой системы, что приводит к тому что операционная система не может обнаружить файлы на диске и весь диск по факту оказывается зашифрован.
Полиморфный вирус
Вирус, использующий метаморфный шифратор для шифрования основного тела вируса со случайным ключом. При этом часть информации, используемой для получения новых копий шифратора также может быть зашифрована. Например, вирус может реализовывать несколько алгоритмов шифрования и при создании новой копии менять не только команды шифратора, но и сам алгоритм.
Классификация вирусов по среде обитания
Под «средой обитания» понимаются системные области компьютера, операционные системы или приложения, в компоненты (файлы) которых внедряется код вируса. По среде обитания вирусы можно разделить на:
В эпоху вирусов для DOS часто встречались гибридные файлово-загрузочные вирусы. После массового перехода на операционные системы семейства Windows практически исчезли как сами загрузочные вирусы, так и упомянутые гибриды. Отдельно стоит отметить тот факт, что вирусы, рассчитанные для работы в среде определенной ОС или приложения, оказываются неработоспособными в среде других ОС и приложений. Поэтому как отдельный атрибут вируса выделяется среда, в которой он способен выполняться. Для файловых вирусов это DOS, Windows, Linux, MacOS, OS/2. Для макровирусов — Word, Excel, PowerPoint, Office. Иногда вирусу требуется для корректной работы какая-то определенная версия ОС или приложения, тогда атрибут указывается более узко: Win9x, Excel97.
Файловые вирусы
Файловые вирусы при своем размножении тем или иным способом используют файловую систему какой-либо (или каких-либо) ОС. Они:
Все, что подключено к Интернету – нуждается в антивирусной защите: 82% обнаруженных вирусов «прятались» в файлах с расширением PHP, HTML и EXE.
Это явно говорит о том, что выбор хакеров – это Интернет, а не атаки с использованием уязвимостей программного обеспечения. Угрозы имеют полиморфный характер, это означает, что вредоносные программы могут быть эффективно перекодированы удаленно, что делает их трудно обнаружимыми. Поэтому высокая вероятность заражения связана, в том числе, и с посещениями сайтов. Согласно данным eScan MicroWorld, количество перенаправляющих ссылок и скрытых загрузок (drive-by-download) на взломанных ресурсах увеличилось более чем на 20% за последние два месяца. Социальные сети также серьезно расширяют возможности доставки угроз.
Возьмем, к примеру, циркулировавший в Facebook баннер, предлагавший пользователю изменить цвет страницы на красный, синий, желтый и т.д. Заманчивый баннер содержал ссылку, направлявшую пользователя на мошеннический сайт. Там в руки злоумышленникам попадала конфиденциальная информация, которая использовалась или продавалась для получения незаконной прибыли различным интернет-организациям. Таким образом, антивирусы, основанные на традиционных сигнатурах, сегодня малоэффективны, так как они не могут надежно защитить от веб-угроз в режиме реального времени. Антивирус, который основан на облачных технологиях и получает информацию об угрозах из «облака», эти задачи под силу.
Загрузочные вирусы
MosaicRegressor (вирус)
Загрузочные вирусы записывают себя либо в загрузочный сектор диска (boot-сектор), либо в сектор, содержащий системный загрузчик винчестера (Master Boot Record), либо меняют указатель на активный boot-сектор. Данный тип вирусов был достаточно распространён в 1990-х, но практически исчез с переходом на 32-битные операционные системы и отказом от использования дискет как основного способа обмена информацией. Теоретически возможно появление загрузочных вирусов, заражающих CD-диски и USB-флешек, но на текущий момент такие вирусы не обнаружены.
Макро-вирусы
Многие табличные и графические редакторы, системы проектирования, текстовые процессоры имеют свои макро-языки для автоматизации выполнения повторяющихся действий. Эти макро-языки часто имеют сложную структуру и развитый набор команд. Макро-вирусы являются программами на макро-языках, встроенных в такие системы обработки данных. Для своего размножения вирусы этого класса используют возможности макро-языков и при их помощи переносят себя из одного зараженного файла (документа или таблицы) в другие.
Скрипт-вирусы
Скрипт-вирусы, также как и макро-вирусы, являются подгруппой файловых вирусов. Данные вирусы, написаны на различных скрипт-языках (VBS, JS, BAT, PHP и т.д.). Они либо заражают другие скрипт-программы (командные и служебные файлы MS Windows или Linux), либо являются частями многокомпонентных вирусов. Также, данные вирусы могут заражать файлы других форматов (например, HTML), если в них возможно выполнение скриптов.
Классификация вирусов по способу заражения файлов
Перезаписывающие
Данный метод заражения является наиболее простым: вирус записывает свой код вместо кода заражаемого файла, уничтожая его содержимое. Естественно, что при этом файл перестает работать и не восстанавливается. Такие вирусы очень быстро обнаруживают себя, так как операционная система и приложения довольно быстро перестают работать.
Паразитические
К паразитическим относятся все файловые вирусы, которые при распространении своих копий обязательно изменяют содержимое файлов, оставляя сами файлы при этом полностью или частично работоспособными. Основными типами таких вирусов являются вирусы, записывающиеся в начало файлов (prepending), в конец файлов (appending) и в середину файлов (inserting). В свою очередь, внедрение вирусов в середину файлов происходит различными методами — путем переноса части файла в его конец или копирования своего кода в заведомо неиспользуемые данные файла (cavity-вирусы).
Внедрение вируса в начало файла
Известны два способа внедрения паразитического файлового вируса в начало файла. Первый способ заключается в том, что вирус переписывает начало заражаемого файла в его конец, а сам копируется в освободившееся место. При заражении файла вторым способом вирус дописывает заражаемый файл к своему телу.
Таким образом, при запуске зараженного файла первым управление получает код вируса. При этом вирусы, чтобы сохранить работоспособность программы, либо лечат зараженный файл, повторно запускают его, ждут окончания его работы и снова записываются в его начало (иногда для этого используется временный файл, в который записывается обезвреженный файл), либо восстанавливают код программы в памяти компьютера и настраивают необходимые адреса в ее теле (т. е. дублируют работу ОС).
Внедрение вируса в конец файла
Наиболее распространенным способом внедрения вируса в файл является дописывание вируса в его конец. При этом вирус изменяет начало файла таким образом, что первыми выполняемыми командами программы, содержащейся в файле, являются команды вируса. Для того чтобы получить управление при старте файла, вирус корректирует стартовый адрес программы (адрес точки входа). Для этого вирус производит необходимые изменения в заголовке файла.
Внедрение вируса в середину файла
Существует несколько методов внедрения вируса в середину файла. В наиболее простом из них вирус переносит часть файла в его конец или «раздвигает» файл и записывает свой код в освободившееся пространство. Этот способ во многом аналогичен методам, перечисленным выше. Некоторые вирусы при этом компрессируют переносимый блок файла так, что длина файла при заражении не изменяется.
Вторым является метод «cavity», при котором вирус записывается в заведомо неиспользуемые области файла. Вирус может быть скопирован в незадействованные области заголовок EXE-файла, в «дыры» между секциями EXE-файлов или в область текстовых сообщений популярных компиляторов. Существуют вирусы, заражающие только те файлы, которые содержат блоки, заполненные каким-либо постоянным байтом, при этом вирус записывает свой код вместо такого блока.
Кроме того, копирование вируса в середину файла может произойти в результате ошибки вируса, в этом случае файл может быть необратимо испорчен.
Вирусы без точки входа
Отдельно следует отметить довольно незначительную группу вирусов, не имеющих «точки входа» (EPO-вирусы — Entry Point Obscuring viruses). К ним относятся вирусы, не изменяющие адрес точки старта в заголовке EXE-файлов. Такие вирусы записывают команду перехода на свой код в какое-либо место в середину файла и получают управление не непосредственно при запуске зараженного файла, а при вызове процедуры, содержащей код передачи управления на тело вируса. Причем выполняться эта процедура может крайне редко (например, при выводе сообщения о какой-либо специфической ошибке). В результате вирус может долгие годы «спать» внутри файла и выскочить на свободу только при некоторых ограниченных условиях.
Перед тем, как записать в середину файла команду перехода на свой код, вирусу необходимо выбрать «правильный» адрес в файле — иначе зараженный файл может оказаться испорченным. Известны несколько способов, с помощью которых вирусы определяют такие адреса внутри файлов, например, поиск в файле последовательности стандартного кода заголовков процедур языков программирования (C/Pascal), дизассемблирование кода файла или замена адресов импортируемых функций.
Вирусы-компаньоны
К категории вирусов-компаньонов относятся вирусы, не изменяющие заражаемых файлов. Алгоритм работы этих вирусов состоит в том, что для заражаемого файла создается файл-двойник, причем при запуске зараженного файла управление получает именно этот двойник, т. е. вирус.
К вирусам данного типа относятся те из них, которые при заражении переименовывают файл в какое-либо другое имя, запоминают его (для последующего запуска файла-хозяина) и записывают свой код на диск под именем заражаемого файла. Например, файл NOTEPAD.EXE переименовывается в NOTEPAD.EXD, а вирус записывается под именем NOTEPAD.EXE. При запуске управление получает код вируса, который затем запускает оригинальный NOTEPAD.
Возможно существование и других типов вирусов-компаньонов, использующих иные оригинальные идеи или особенности других операционных систем. Например, PATH-компаньоны, которые размещают свои копии в основном катагоге Windows, используя тот факт, что этот каталог является первым в списке PATH, и файлы для запуска Windows в первую очередь будет искать именно в нем. Данными способом самозапуска пользуются также многие компьютерные черви и троянские программы.
Вирусы-ссылки
Вирусы-ссылки или link-вирусы не изменяют физического содержимого файлов, однако при запуске зараженного файла «заставляют» ОС выполнить свой код. Этой цели они достигают модификацией необходимых полей файловой системы.
Файловые черви
Файловые черви никоим образом не связывают свое присутствие с каким-либо выполняемым файлом. При размножении они всего лишь копируют свой код в какие-либо каталоги дисков в надежде, что эти новые копии будут когда-либо запущены пользователем. Иногда эти вирусы дают своим копиям «специальные» имена, чтобы подтолкнуть пользователя на запуск своей копии — например, INSTALL.EXE или WINSTART.BAT.
Некоторые файловые черви могут записывать свои копии в архивы (ARJ, ZIP, RAR). Другие записывают команду запуска зараженного файла в BAT-файлы.
OBJ-, LIB-вирусы и вирусы в исходных текстах
Вирусы, заражающие библиотеки компиляторов, объектные модули и исходные тексты программ, достаточно экзотичны и практически не распространены. Всего их около десятка. Вирусы, заражающие OBJ- и LIB-файлы, записывают в них свой код в формате объектного модуля или библиотеки. Зараженный файл, таким образом, не является выполняемым и неспособен на дальнейшее распространение вируса в своем текущем состоянии. Носителем же «живого» вируса становится COM- или EXE-файл, получаемый в процессе линковки зараженного OBJ/LIB-файла с другими объектными модулями и библиотеками. Таким образом, вирус распространяется в два этапа: на первом заражаются OBJ/LIB-файлы, на втором этапе (линковка) получается работоспособный вирус.
Заражение исходных текстов программ является логическим продолжением предыдущего метода размножения. При этом вирус добавляет к исходным текстам свой исходный код (в этом случае вирус должен содержать его в своем теле) или свой шестнадцатеричный дамп (что технически легче). Зараженный файл способен на дальнейшее распространение вируса только после компиляции и линковки.
Распространение
В отличие от червей (сетевых червей), вирусы не используют сетевых сервисов для проникновения на другие компьютеры. Копия вируса попадает на удалённые компьютеры только в том случае, если зараженный объект по каким-либо не зависящим от функционала вируса причинам оказывается активизированным на другом компьютере, например:
Интересные факты
Специалисты «Лаборатории Касперского» подготовили летом 2012 года список из 15 наиболее заметных вредоносных программ, оставивших свой след в истории:
Panda Security: рейтинг вирусов 2010 года
Итак, если вы хотите узнать, как сказать «Смотри фотку» на другом языке, этот список сэкономит вам время:
Завершая «Рейтинг вирусов 2010», мы бы хотели особо отметить «Насекомое года»: бот-сеть Mariposa, появившаяся в марте 2010. Напомним, что Mariposa инфицировала около 13 миллионов компьютеров по всему миру. Однако благодаря сотрудничеству Panda Security, Испанской Гражданской гвардии, ФБР и военной разведки удалось арестовать создателей этой бот-сети.