Вирусы. Вирусы? Вирусы! Часть 1 / Блог компании Mail.ru Group / Хабр
Поговорим о компьютерных вирусах? Нет, не о том, что вчера поймал ваш антивирус. Не о том, что вы скачали под видом инсталлятора очередного Photoshop. Не о rootkit-e, который стоит на вашем сервере, маскируясь под системный процесс. Не о поисковых барах, downloader-ах и другой малвари. Не о коде, который делает плохие вещи от вашего имени и хочет ваши деньги. Нет, всё это коммерция, никакой романтики…
Мы поговорим о компьютерных вирусах, как о коде, который способен порождать собственные копии, изменяясь от поколения к поколению. Которому, как и его биологическим собратьям, необходим файл-носитель, работоспособный, и остающийся работоспособным, чтобы давать жизнь новым поколениям вируса. Которому для размножения необходима благодатная среда, много вкусных исполняемых файлов, а также, много глупых и активных пользователей, чтобы они их запускали. Так что название «вирус» не просто красивый ярлычок для описания вредоносной программы, компьютерный вирус, в его классическом понимании, является сущностью весьма близкой к его биологическому аналогу. Человечество, как это не раз доказывалось, способно создавать весьма изощренные решения, особенно когда дело касается создания чего-нибудь наносящего вред другим людям.
Итак, давным-давно, после того, как DOS пришел к людям, и у каждого программиста появилась своя маленькая вселенная, где адресное пространство было единым, а права на файлы были всегда rwx, появилась мысль о том, может ли программа копировать сама себя. «Конечно, может!», – сказал программист и написал код, который копирует собственный исполняемый файл. Следующая мысль была «а могут ли две программы объединиться в одну?». «Конечно, могут!», – сказал программист и написал первый инфектор. «Только вот зачем?» – подумал он, и это стало началом эпохи компьютерных вирусов. Как оказалось, гадить на компьютере и всячески пытаться избежать обнаружения очень весело, а создание вирусов является очень интересным с точки зрения системного программиста делом. Кроме того, появившиеся на рынке антивирусы предоставляли создателям вирусов серьёзный вызов их профессионализму.
В общем, для статьи вполне достаточно лирики, перейдем к делу. Я хочу рассказать о классическом вирусе, его структуре, основных понятиях, методах детектирования и алгоритмах, которые используются обеими сторонами для победы.
Мы будем говорить о вирусах, живущих в исполняемых файлах форматов PE и ELF, то есть о вирусах, тело которых представляет собой исполняемый код для платформы x86. Кроме того, пусть наш вирус не будет уничтожать исходный файл, полностью сохраняя его работоспособность и корректно инфицируя любой подходящий исполняемый файл. Да, ломать гораздо проще, но мы же договорились говорить о правильных вирусах, да? Чтобы материал был актуальным, я не буду тратить время на рассмотрение инфекторов старого формата COM, хотя именно на нем были обкатаны первые продвинутые техники работы с исполняемым кодом.Основными частями кода вируса являются infector и payload. Infector – это код, который ищет подходящие для заражения файлы и внедряет в них вирус, стараясь максимально скрыть факт внедрения и при этом не повредить функционалу файла. Payload – это код, который выполняет собственно необходимые вирмейкеру действия, например, рассылает спам, DoS-ит кого-нибудь, или просто оставляет на машине текстовой файлик «Здесь был Виря». Нам совершенно непринципиально, что там внутри payload, главное, что вирмейкер всячески старается скрыть его содержимое.
Начнём со свойств кода вируса. Чтобы код удобней было внедрять, разделять код и данные не хочется, поэтому обычно используется интеграция данных прямо в исполняемый код. Ну, например, так:
jmp message
the_back:
mov eax, 0x4
mov ebx, 0x1
pop ecx ; со стека будет взят адрес «Hello, World»
mov edx, 0xF
int 0x80
...
message:
call the_back ; после исполнения на стеке будет лежать адрес «возврата», т.е. адрес «Hello, World\n»
db "Hello, World!", 0Dh, 0Ah
Или так:
push 0x68732f2f ; “hs//”
push 0x6e69622f ; “nib/”
mov ebx, esp ; в ESP теперь адрес строки «/bin/sh»
mov al, 11
int 0x80
Все эти варианты кода при определенных условиях можно просто скопировать в память и сделать JMP на первую инструкцию. Правильно написав такой код, позаботившись о правильных смещениях, системных вызовах, чистоте стека до и после исполнения, и т.д., его можно внедрять внутрь буфера с чужим кодом.
Предположим, вирмейкер имеет возможность написать код вируса в таком стиле, и теперь ему надо внедрить его в существующий исполняемый файл. Ему необходимо позаботиться о двух вещах:
- Куда положить вирус? Необходимо найти достаточно места, чтобы вирус туда поместился, записать его туда, по возможности не разломав файл и так, чтобы в области, в которой вирус окажется, было разрешено исполнение кода.
- Как передать управление на вирус? Просто положить вирус в файл недостаточно, надо еще совершить переход на его тело, а после завершения его работы вернуть управление программе-жертве. Или в другом порядке, но, в любом случае, мы же договорились не ломать ничего, да?
Итак, разберемся с внедрением в файл. Современные исполняемые форматы для платформы x86 в Windows и Linux – это PE (Portable Executable) и ELF (Executable and Linkable Format). Вы без проблем найдёте их спецификации в системной документации, и если будете заниматься вопросами защиты исполняемого кода, то точно не пропустите. Исполняемые форматы и системный загрузчик (код операционной системы, который занимается запуском исполняемого файла) являются одним из «слонов», на которых стоит операционная система. Процедура запуска .exe файла является очень сложным алгоритмически процессом с кучей нюансов, и рассказывать об этом можно в десятке статей, которые вы обязательно найдете сами, если тема вас заинтересует. Я ограничусь простым рассмотрением, достаточным для базового понимания процесса запуска. Чтобы в меня не кидались помидорами, далее под компилятором я буду иметь в виду весь комплекс программ, превращающий исходный код в готовый исполняемый файл, то есть, фактически, компилятор + линкер. Исполняемый файл (PE или ELF) состоит из заголовка и набора секций. Секции – это выровненные (см. ниже) буферы с кодом или данными. При запуске файла секции копируются в память и под них выделяется память, причем совсем необязательно того объёма, который они занимали на диске. Заголовок содержит разметку секций, и сообщает загрузчику, как расположены секции в файле, когда он лежит на диске, и каким образом необходимо расположить их в памяти перед тем, как передать управление коду внутри файла. Для нас интересны три ключевых параметра для каждой секции, это psize, vsize, и flags. Psize (physical size) представляет собой размер секции на диске. Vsize (virtual size) – размер секции в памяти после загрузки файла. Flags – атрибуты секции (rwx). Psize и Vsize могут существенно различаться, например, если программист объявил в программе массив в миллион элементов, но собирается заполнять его в процессе исполнения, компилятор не увеличит psize (на диске содержимое массива хранить до запуска не нужно), а вот vsize увеличит на миллион чего-то там (в runtime для массива должно быть выделено достаточно памяти).
Флаги (атрибуты доступа) будут присвоены страницам памяти, в которые секция будет отображена. Например, секция с исполняемым кодом будет иметь атрибуты r_x (read, execute), а секция данных атрибуты rw_ (read,write). Процессор, попытавшись исполнить код на странице без флага исполнения, сгенерирует исключение, то же касается попытки записи на страницу без атрибута w, поэтому, размещая код вируса, вирмейкер должен учитывать атрибуты страниц памяти, в которых будет располагаться код вируса. Стандартные секции неинициализированных данных (например, область стека программы) до недавнего времени имели атрибуты rwx (read, write, execute), что позволяло копировать код прямо в стек и исполнять его там. Сейчас это считается немодным и небезопасным, и в последних операционных системах область стека предназначена только для данных. Разумеется, программа может и сама изменить атрибуты страницы памяти в runtime, но это усложняет реализацию.
Также, в заголовке лежит Entry Point — адрес первой инструкции, с которой начинается исполнение файла.
Необходимо упомянуть и о таком важном для вирмейкеров свойстве исполняемых файлов, как выравнивание. Для того чтобы файл оптимально читался с диска и отображался в память, секции в исполняемых файлах выровнены по границам, кратным степеням двойки, а свободное место, оставшееся от выравнивания (padding) заполнено чем-нибудь на усмотрение компилятора. Например, логично выравнивать секции по размеру страницы памяти – тогда ее удобно целиком копировать в память и назначать атрибуты. Даже вспоминать не буду про все эти выравнивания, везде, где лежит мало-мальски стандартный кусок данных или кода, его выравнивают (любой программист знает, что в километре ровно 1024 метра). Ну а описание стандартов Portable Executable (PE) и Executable Linux Format (ELF) для работающего с методами защиты исполняемого кода – это настольные книжки.
Так как адреса внутри всех этих секций связаны, просто шлепнуть кусок кода в середину секции, «перевязав» его JMP-ами не получится, исходный файл сломается. Поэтому популярными местами для внедрения кода вируса являются:
- основная кодовая секция (перезапись вирусом начала исполняемого кода начиная прямо с Entry Point).
- padding между окончанием заголовка и первой секцией. Там ничего нет и вполне можно уместить там небольшой вирус (либо его загрузчик) не сломав файл.
- новая секция, которую можно дописать в заголовок и разместить в файле после всех остальных. В этом случае никакие внутренние смещения не поломаются, и с местом проблем тоже нет. Правда последняя секция в файле, в которой разрешено исполнение, конечно же, обратит на себя внимание эвристика.
- padding между окончанием содержимого секции и ее выровненным концом. Это намного сложнее, так как сначала надо этот самый «конец» найти, и не факт, что нам повезет и места будет достаточно. Но для некоторых компиляторов это место можно обнаружить просто по характерным байтам
Есть способы и похитрее, некоторые я опишу во второй статье.
Теперь о передаче управления. Чтобы вирус отработал, его код должен каким-то способом получить управление. Самый очевидный способ: сначала управление получает вирус, а потом, после того, как он отработает – программа-хост. Это самый простой способ, но также имеют право на жизнь и варианты, когда вирус получает управление, например, после завершения работы хоста, или в середине исполнения, «замещая» исполнение какой-нибудь функции. Приведем несколько техник передачи управления (термин Entry Point или EP, используемый далее, – это точка входа, то есть адрес, на который системный загрузчик передаст управление после того, как подготовит исполняемый файл к запуску):
- JMP на тело вируса замещает первые байты, находящиеся в Entry Point файла. Затёртые байты вирус сохраняет в своём теле, и, по окончании собственной работы, восстанавливает их и передает управление на начало восстановленного буфера.
- Способ, похожий на предыдущий, но вместо байтов вирус сохраняет несколько полных машинных инструкций в Entry Point, тогда он может, ничего не восстанавливая (проследив только за корректной очисткой стека), выполнить их после окончания собственной работы и передать управление на адрес инструкции, следующей за «сворованными».
- Как и в случае с внедрением, есть способы и похитрее, но мы их тоже рассмотрим ниже, или отложим до следующей статьи.
Всё это – способы сделать корректную вставку буфера с кодом в некоторый исполняемый файл. При этом п.2 и п.3. подразумевают функционал, позволяющий понять, какие байты являются инструкциями, и где находятся границы между инструкциями. Ведь мы не можем «разорвать» инструкцию пополам, в этом случае все сломается. Таким образом, мы плавно переходим к рассмотрению дизассемблеров в вирусах. Понятие принципа работы дизассемблеров нам понадобится для рассмотрения всех нормальных техник работы с исполняемым кодом, поэтому ничего страшного, если я немного опишу его сейчас.
Если мы внедрим свой код в позицию точно между инструкциями, то сможем сохранить контекст (стек, флаги) и, выполнив код вируса, восстановить все обратно, вернув управление программе-хосту. Конечно, с этим тоже могут быть проблемы, если используются средства контроля целостности кода, антиотладка и т.п., но об этом тоже во второй статье. Для поиска такой позиции нам необходимо вот что:
- поставить указатель точно на начало какой-нибудь инструкции (просто так взять рандомное место в исполняемой секции и начать дизассемблирование с него нельзя, один и тот же байт может быть и опкодом инструкции, и данными)
- определить длину инструкции (для архитектуры x86 инструкции имеют разные длины)
- переместить указатель вперед на эту длину. Мы окажемся на начале следующей инструкции.
- повторять, пока не решим остановиться
Это минимальный функционал, необходимый для того, чтобы не попасть в середину инструкции, а функция, которая принимает указатель на байтовую строку, а в ответ отдает длину инструкции, называется дизассемблером длин. Например, алгоритм заражения может быть таким:
- Выбираем вкусный исполняемый файл (достаточно толстый, чтобы в него поместилось тело вируса, с нужным распределением секций и т.п.).
- Читаем свой код (код тела вируса).
- Берем несколько первых инструкций из файла-жертвы.
- Дописываем их к коду вируса (сохраняем информацию, необходимую для восстановления работоспособности).
- Дописываем к коду вируса переход на инструкцию, продолжающую исполнение кода-жертвы. Таким образом, после исполнения собственного кода вирус корректно исполнит пролог кода-жертвы.
- Создаем новую секцию, записываем туда код вируса и правим заголовок.
- На место этих первых инструкций кладем переход на код вируса.
Это вариант вполне себе корректного вируса, который может внедриться в исполняемый файл, ничего не сломать, скрыто выполнить свой код и вернуть исполнение программе-хосту. Теперь, давайте его ловить.Вдруг, откуда ни возьмись, появляется рыцарь на белом компе, в левой руке у него отладчик, а в правой – дизассемблер, программист антивирусной компании. Откуда он там взялся? Вы, конечно, догадались. С большой долей вероятности, он появился там из «смежной области». Антивирусная область в плане программирования весьма уважаема теми, кто в теме, ибо возиться этим ребятам приходится с весьма изощренными алгоритмами, причем в довольно стеснённых условиях. Сами посудите: у вас на входе сотня тысяч экземпляров всякой заразы и исполняемый файл, работать вы должны практически в реальном времени, а цена ошибки весьма высока.
Для антивируса, как и для любого конечного автомата, принимающего бинарное решение «да/нет» (инфицирован/здоров), существует два типа ошибок – false positive и false negative (ошибочно признал файл заразным, ошибочно пропустил зараженный). Понятно, что общее число ошибок надо снижать в любом раскладе, но false negative для антивируса куда более неприятна, чем false positive. «После скачивания торрента, перед установкой игры отключите антивирус» — знакомо? Это и есть «false positive» – crack.exe, записывающий что-то в исполняемый .exe файл для достаточно умного эвристического анализатора (см. ниже), выглядит как вирус. Как говорится: «лучше перебдеть, чем недобдеть».
Думаю, не надо описывать вам компоненты современного антивируса, все они крутятся вокруг одного функционала – антивирусного детектора. Монитор, проверяющий файлы на лету, сканирование дисков, проверка почтовых вложений, карантин и запоминание уже проверенных файлов – все это обвязка основного детектирующего ядра. Второй ключевой компонент антивируса – пополняемые базы признаков, без которых поддержание антивируса в актуальном состоянии невозможно. Третий, достаточно важный, но заслуживающий отдельного цикла статей компонент – мониторинг системы на предмет подозрительной деятельности.
Итак (рассматриваем классические вирусы), на входе имеем исполняемый файл и один из сотни тысяч потенциальных вирусов в нем. Давайте детектировать. Пусть это кусок исполняемого кода вируса:
XX XX XX XX XX XX ; начало вируса длиной N байт . . .
68 2F 2F 73 68 push 0x68732f2f ; “hs//”
68 2F 62 69 6E push 0x6e69622f ; “nib/”
8B DC mov ebx, esp ; в ESP теперь адрес строки «/bin/sh»
B0 11 mov al, 11
CD 80 int 0x80
XX XX XX XX ; конец вируса длиной M байт . . .
Сразу хочется просто взять пачку опкодов (68 2F 2F 73 68 68 2F 62 69 6E 8B DC B0 11 CD 80) и поискать эту байтовую строку в файле. Если нашли – попался, гад. Но, увы, оказывается эта же пачка байт встречается и в других файлах (ну мало ли кто вызывает командный интерпретатор), да еще и таких строк для поиска «стотыщ», если искать каждую, то никакая оптимизация не поможет. Единственный, быстрый и правильный способ проверить наличие такой строки в файле – это проверить ее существование по ФИКСИРОВАННОМУ смещению. Откуда его взять?
Вспоминаем «смежную область» — особенно места про то, куда вирус себя кладет и как передает себе управление:
- вирус внедряется в padding между заголовком и началом первой секции. В этом случае можно проверить существование этой байт-строки по смещению
«длина заголовка» + N (где N – число байт от начала вируса до байт-строки) - вирус лежит в новой, отдельной секции. В этом случаем можно проверить существование байт-строки от начала всех секций с кодом
- вирус внедрился в padding между концом кода и концом кодовой секции. Можно использовать отрицательное смещение от конца секции, типа «конец кодовой секции» — М (где M — число байт от конца байт-строки до конца кода вируса) – «длина байт-строки»
Теперь оттуда же про передачу управления:
- вирус записал свои инструкции прямо поверх инструкций в Entry Point. В этом случае ищем байт строку просто по смещению «Entry Point» + N(где N – число байт от начала вируса до байт-строки)
- вирус записал в Entry Point JMP на свое тело. В этом случае надо сначала вычислить куда смотрит этот JMP, а потом искать байт-строку по смещению «адрес перехода JMP» + N(где N – число байт от начала вируса до байт-строки)
Что-то я устал писать «байт-строка», она переменной длины, хранить ее в базе неудобно, и совершенно необязательно, поэтому вместо байт-строки мы будем использовать её длину плюс CRC32 от неё. Такая запись очень короткая и сравнение работает быстро, так как CRC32 алгоритм не из медленных. Гнаться за устойчивостью к коллизиям контрольных сумм смысла нет, так как вероятность коллизии по фиксированным смещениям мизерная. Кроме того, даже в случае коллизии ошибка будет типа «false positive», что не так уж и страшно. Обобщаем все вышеописанное, вот примерная структура записи в нашей антивирусной базе:
- ID вируса
- флаги, указывающие откуда считать смещение (от EP, от конца заголовка, от конца первой секции, от начала всех секций, от адреса перехода инструкции JMP в EP и т.п.)
- смещение (offset)
- длина сигнатуры (Lsig)
- CRC32 сигнатуры (CRCsig)
Оптимизируем вход (оставляем только сигнатуры, которые «влазят» в данный файл, сразу из заголовка подготавливаем набор необходимых смещений) и далее:
{ # для всех подходящих записей
- на основании флагов вычисляем базовое смещение в файле (начало кодовой секции, entry point и т.п.)
- прибавляем к нему offset
- читаем Lsig байт
- считаем от них CRC32
- если совпало – мы поймали вирус
}
Ура, вот наш первый антивирус. Он достаточно крут, так как при помощи достаточно полной базы сигнатур, нормально подобранных флагов и хорошей оптимизации этот детектор способен очень быстро ловить 95% всяких зараз (подавляющее большинство современного malware это просто исполняемые файлы, без всякой способности к мутации). Далее начинается игра «кто быстрее обновит базы сигнатур» и «кому раньше пришлют новый экземпляр какой-нибудь гадости».
Сбор и каталогизация этой «гадости» является задачей весьма нетривиальной, но совершенно необходимой для качественного тестирования детектора. Сбор эталонной базы исполняемых файлов задача непростая: попробуйте найти все экземпляры зараженных файлов (для сложных случаев в нескольких экземплярах), каталогизировать их, перемешать с «чистыми» файлами и регулярно гонять по ним детектор с целью выявления ошибок детектирования. Такая база собирается годами, и является очень ценным активом антивирусных компаний. Возможно, я ошибаюсь, и её реально достать (всякие сервисы online-проверок на вирусы вполне в состоянии предоставить некоторый её аналог), но, когда я занимался этим вопросом, ничего похожего достать было нельзя (по крайней мере, под Linux).
Какое страшное слово – «эвристический анализатор», сейчас его и не увидишь в интерфейсах антивирусов (наверное, пугает пользователей). Это одна из самых интересных частей антивируса, так как в нее пихают все, что не укладывается ни в один из движков (ни сигнатурный, ни в эмулятор), и похож на доктора, который видит, что пациент кашляет и чихает, но определить конкретную болезнь не может. Это код, который проверяет файл на некоторые характерные признаки заражения. Примеры таких признаков:- некорректный (испорченный вирусом, но работоспособный) заголовок файла
- JMP прямо в точке входа
- «rwx» на секции кода
Ну, и так далее. Помимо указания факта заражения, эвристик может помочь принять решение – запускать ли более «тяжелый» анализ файла? Каждый признак имеет разный вес, от «подозрительный какой-то» до «не знаю чем, но файл заражен точно». Именно эти признаки дают большинство ошибок «false positive». Не забудем также о том, что именно эвристик может предоставить антивирусной компании экземпляры потенциальных вирусов. Сработал эвристик, но ничего конкретного не было найдено? Значит файл точно является кандидатом на отправку в антивирусную компанию. Как мы увидели, для быстрого и точного сравнения детектору необходимы сами байты сигнатуры и ее смещение. Или, другим языком, содержимое кода и адрес его расположения в файле-хосте. Поэтому понятно, как развивались идеи сокрытия исполняемого кода вирусов – по двум направлениям:
- сокрытие кода самого вируса;
- сокрытие его точки входа.
Сокрытие кода вируса в результате вылилось в появление полиморфных движков. То есть движков, позволяющих вирусу изменять свой код в каждом новом поколении. В каждом новом зараженном файле тело вируса мутирует, стараясь затруднить обнаружение. Таким образом, затрудняется создание содержимого сигнатуры.
Сокрытие точки входа (Entry Point Obscuring) в результате послужило толчком для появления в вирусных движках автоматических дизассемблеров для определения, как минимум, инструкций перехода. Вирус старается скрыть место, с которого происходит переход на его код, используя из файла то, что в итоге приводит к переходу: JMP, CALL, RET всякие, таблицы адресов и т.п. Таким образом, вирус затрудняет указание смещения сигнатуры.
Гораздо более подробно некоторые алгоритмы таких движков и детектора мы посмотрим во второй статье, которую я планирую написать в ближайшее время.
Параллельно с развитием вирусных движков и противостоящих им детекторов активно развивались коммерческие защиты исполняемых файлов. Появилось огромное количество небольших коммерческих программ, и разработчикам нужны были движки, позволяющие взять EXE-файл и «завернуть» его в некоторый «конверт», который умеет защищенным образом генерировать валидный серийный номер. А кто у нас умеет скрывать исполняемый код, и внедрять его в исполняемые файлы без потери работоспособности? Правильно, те самые разработчики из «смежной области». Поэтому написание хорошего полиморфного вируса и навесной защиты исполняемого файла – это очень похожие задачи, с использованием одних и тех же алгоритмов и инструментов. Так же схожи и процесс анализа вирусов и создания сигнатур и взлом коммерческого ПО. В обоих случаях надо добраться до истинного кода и либо создать сигнатуру, либо достать из него алгоритм генерации серийного номера.
В интернетах существуют несколько страниц по теме «классификация компьютерных вирусов». Но мы же договорились, вирус – это то, что умеет само себя воспроизводить в системе, и чему необходим файл-носитель. Поэтому всякие трояны-руткиты-malware – это не вирусы, а тип payload-кода, который вирус может таскать на себе. Для описываемых в статье технологий классификация компьютерных вирусов может быть только одна: полиморфные и неполиморфные вирусы. То есть меняющиеся от поколения к поколению, либо нет.
Рассмотренный в статье детектор легко детектирует неполиморфные (мономорфными их назвать, что ли) вирусы. Ну а переход к полиморфным вирусам является отличным поводом, наконец, завершить эту статью, пообещав вернуться к более интересным методам сокрытия исполняемого кода во второй части.
Кто придумал первый компьютерный вирус? / Хабр
Самые первые вирусы были безобидными. Это были эксперименты – типа одного из первых вирусов “Creeper”, который просто выводил сообщение “I’M A CREEPER: CATCH ME IF YOU CAN”. Их распространение ограничивалось домашними сетями (Creeper существовал на TENEX ОС). Это было в 1971 году.
Сейчас существуют миллионы вирусов, распространяющихся через интернет всякими путями – файловые раздачи, e-mail, сайты. Когда всё связано со всем, вирусы распространяются быстро. Защита от вирусов – прибыльный бизнес.
Начиналось это довольно медленно и гораздо раньше, чем можно было предположить. Первые вирусы распространялись через оффлайн – они работали с дискетами и переносились на них между компьютерами. Кто же изобрёл вирус?
Первый вирус для Mac был написан в качестве подростковой шутки. Первый вирус для PC был сделан для борьбы с пиратством.
Elk Cloner
В 1981 году Ричард Скрента был в 9 классе. Он был очень умным хулиганом, вооружённым компьютером Apple II. Больше всего он любил издеваться над сверстниками по поводу их пиратских компьютерных игр. В 2000 году в интервью он сказал:
Я шутил над сверстниками, меняя копии пиратских игр, чтобы они самоуничтожались через определённое количество запусков. Я раздавал игры, на них подсаживались, а затем она вдруг переставала работать и выдавала какой-нибудь смешной комментарий на экран (чувство юмора девятиклассника).
В итоге друзья перестали подпускать Скренту к своим дискетам. Ему перестали одалживать игры, все перестали играть в его игрушки, и т.п. Но он не угомонился. Он начал штудировать инструкции и описания, пытаясь отыскать дыру в безопасности Apple II. И он придумал способ выполнять код, не притрагиваясь к дискетам.
«Я придумал оставлять определённый след в ОС на работающем школьном компьютере. Если следующий пользователь не перезагружал комп со своего диска, его диск подвергался воздействию моего кода».
Написал он код на ассемблере за две недели, и назвал его Elk Cloner. Он стал тем, что впоследствии назвали «вирусом для загрузочного сектора». Когда неинфицированный диск вставляли в дисковод инфицированного компьютера, тот заражал диск, записывая на него копию вируса в загрузочный сектор. Этот код автоматически выполнялся при загрузке. Принося заражённый диск на другой компьютер, и загружаясь с него, человек заражал и этот компьютер копией вируса.
Вирус немного мешал работе компьютера, а на 50-й запуск вместо запуска программы выводил целую поэму на экран:
Elk Cloner: программа, обладающая личностью
Пролезет на ваши диски
Проникнет на ваши чипы
Да, это Клонер!
Прилипнет, словно клей
Оперативку вашу подправит
Пришлите Клонера скорей.
Из-за отсрочки появления программу сразу нельзя было заметить, что улучшало шансы на распространение. Эпидемия продолжалась несколько недель.
Программа добралась и до компьютера учителя Скренты, обвинившего его в проникновении к нему в кабинет. Вирус подхватили и родственники Скренты из Балтимора (сам он жил в Питсбурге), а через много лет он услышал про случай заражения компьютера, принадлежавшего какому-то моряку.
Brain
Первым распространившимся вирусом для IBM PC стал вирус Brain. Он тоже селился в загрузочном секторе. Он был написан братьями Базитом и Амжадом Фарук Альви из Пакистана в 1986 году. Им было 17 и 24 года.
У братьев была компьютерная фирма Brain Computer Services, и вирус они написали, чтобы отслеживать пиратские копии их медицинского софта. Пиратская программа отжирала оперативку, замедляла работу диска, и иногда мешала сохранить данные. По заверениям братьев, она не уничтожала данные. Программа содержала следующее сообщение:
Welcome to the Dungeon 1986 Basit & Amjad (pvt) Ltd. BRAIN COMPUTER SERVICES 730 NIZAB BLOCK ALLAMA IQBAL TOWN LAHORE-PAKISTAN PHONE :430791,443248,280530. Beware of this VIRUS… Contact us for vaccination… $#@%$@!!
Добро пожаловать в подземелье… Берегитесь этого вируса… Свяжитесь с нами для лечения…
В заголовке были указаны реальные контакты. Когда кто-либо звонил им за помощью, они могли идентифицировать пиратскую копию. Также вирус подсчитывал количество сделанных копий.
Они обнаружили, что пиратство было широко распространено, и копии их программ распространялись очень далеко. Амжад говорит, что первый их звонок поступил из США, Майами.
Братья Альви в 2011 году
Это был первый из множества звонков из США. Проблема оказалась в том, что Brain распространялся и по другим дискетам, а не только по копиям их программы. В Университете Делавера даже случилась эпидемия этого вируса в 1986 году, а затем он появлялся и во многих других местах. Исков подано не было, но в газетах про это писали много. Создателей даже упоминали в журнале Time Magazine в 1988.
New York Times писала в мае 1988: «Дерзкая компьютерная программа, которая в этом месяце появилась на компьютерах Бюллетеня Провиденса, уничтожила файлы одного корреспондента и распространилась через дискеты по всей сети газеты. Компьютерщики считают, что это первый случай заражения компьютерной ситемы американской газеты такой дерзкой программой, которую называют компьютерным „вирусом“.
Братьям Альви пришлось сменить телефоны и убрать контакты из поздних версий вируса. Продажи программы они прекратили в 1987 году. Их компания выросла в телекоммуникационного провайдера и сейчас это – крупнейший провайдер в Пакистане. Расположена она всё по тому же адресу.
А теперь – Chaos
Скрента в 2012 году
Скрента работал в области информационной безопасности, а сейчас он CEO компании Blekko, которая занимается поисковыми технологиями.
Хотя дискет уже давно нет, вирусы в загрузочных секторах существуют. Теперь они работают с USB-флешками. Поскольку физические носители всё меньше используются для переноса данных, специалисты уверены, что дни загрузочных вирусов сочтены.
Война с вирусами переместилась в онлайн. Скрента сказал в интервью The Register: „Грустно, что существует такая большая индустрия антивирусов. Надо делать более защищённые системы, а не организовывать многомиллионную индустрию, чтобы подчищать существующие“.
Скрента и братья Альви не чувствуют вины за то, что начали адское шествие вредоносных программ по миру. „Джин в любом случае выбрался бы из бутылки, — написал Скрента в блоге,– мне было интересно быть первым, кто его выпустил“.
Какие бывают компьютерные вирусы и чем опасны
Первые компьютерные вирусы появились сразу же после создания компьютеров. Программисты писали их просто ради забавы, такие вирусы не наносили никакого вреда. Но современные компьютерные вирусы создаются с совершенно другими целями и представляют серьезную опасность. Какие существуют вирусы и как с ними бороться?
Все существующее на сегодняшний день вредоносное ПО можно разделить на две категории: вирусы и троянские программы. Первые просто выполняют на зараженном компьютере какие-то негативные для пользователя или шуточные действия например, могут стереть файлы или полностью отформатировать винчестер, выключить компьютер, сделать для пользователя недоступной мышку, вывести на экран какое-то сообщение и т.д.
Как правило, создатели вирусов не преследуют корыстных целей, чаще всего такие программы пишутся просто для развлечения. Но есть и исключения – например, вирусы, блокирующие работу ОС Windows.
Пользователь видит сообщение, в котором ему предлагается перечислить какую-то сумму денег на конкретный счет, после чего ему будет выслан код разблокировки.
Встретив такой вирус, следует запомнить особенности сообщения в частности, номер счета или телефона (если предлагается пополнить баланс телефона), затем зайти с другого компьютера на сайты антивирусных компаний и поискать соответствующий разблокировщик. Но даже если не получится удалить вирус, наихудшие последствия от него — форматирование жесткого диска ПК.
Самую большую опасность представляют троянские программы
Эта разновидность вредоносного ПО создается с целью кражи конфиденциальных данных человека. Если работа вируса на компьютере обычно хорошо заметна, то троянская программа старается полностью скрыть свое присутствие. Ее задача состоит в том, чтобы собрать нужную информацию например, логины, пароли, данные банковских карт или онлайн-банкинга и т.д., после чего незаметно передать все владельцу трояна.
Качественные троянские программы пишутся высококвалифицированными программистами и могут стоить тысячи долларов. Хорошо сделанный троян абсолютно невидим, его не может обнаружить ни одна антивирусная программа до тех пор, пока данные о троянце не попадут в антивирусные базы.
Современные шпионские программы легко обходят и файерволы. Сделав свое черное дело, многие трояны самоуничтожаются, не оставляя после себя никаких следов. О том, что ваш компьютер был заражен троянцем, вы можете узнать только после того, как у вас пропадут деньги с банковской карты, или окажутся взломаны почтовые ящики, админки принадлежащих вам сайтов и т.д.
Бэкдоры
Существует и такой класс вирусов, как бэкдоры. Заразив ваш компьютер, вирус создает в нем лазейку, через которую хакер получает полный доступ к машине. Он может просматривать и копировать информацию с дисков, что-то удалять или добавлять. Хакер может использовать ваш компьютер для сканирования сетей и взлома других компьютеров, для осуществления атак на серверы. Управление тысячами взломанных компьютеров может осуществляться из одного центра, в этом случае образуется ботнет – сеть зараженных компьютеров, подчиняющихся одному человеку.
Вирусы и троянские программы представляют огромную опасность, поэтому с ними борются всеми возможными способами. Основная проблема состоит в том, что принципы построения и работы самой распространенной на сегодняшний день операционной системы Windows предоставляют хакерам массу возможностей для создания и внедрения вредоносного ПО.
Разработчики ОС пытаются заделывать бреши, но их все равно остается слишком много. Гораздо более безопасной в этом плане является операционная система Linux не случайно многие хакеры пользуются именно ею.
В любом случае для защиты от вирусов и троянов на компьютере обязательно должны стоять актуальный антивирус и брандмауэр. Также следует соблюдать элементарные правила безопасности – в частности, не скачивать и не открывать подозрительные файлы.
33. Компьютерные вирусы – типы и виды. Методы распространения вирусов. Основные виды профилактики компьютера. Основные пакеты антивирусных программ. Классификация программ-антивирусов.
Компьютерный вирус — разновидность компьютерных программ, отличительной особенностью которых является способность к размножению (саморепликация). В дополнение к этому вирусы могут без ведома пользователя выполнять прочие произвольные действия, в том числе наносящие вред пользователю и/или компьютеру. По этой причине вирусы относят к вредоносным программам.Существует очень много разных вирусов. Условно их можно классифицировать следующим образом:
Сетевые -распространяющиеся по компьютерным сетям
Файловые-этовирусы, которые внедряются в исполняемые файлы
Загрузочные — внедряются в загрузочный сектор диска.
Макро-вирусы — заражают файлы документов WORDи EXCEL.После загрузки макро-вирусы остаются в памяти компьютера и могут заражать другие документы.
Резидентные-это вирусы, оставляющие свою резидентную часть, которая продолжает наносить вред.
Нерезидентные — не заражают программы их действия ограничено по времени.
Безвредные — влияют на работу компьютера, чаще всего просто занимают место на диске.
Неопасные — их действия ограничивается уменьшением свободного места на диске графическими или звуковыми явлениями.
Опасные — приводят к серьезным сбоям в работе компьютера.
Очень опасные — их действия могут привести к потере данных, программ, порче головок винчестера.
Откуда берутся вирусы:
— Глобальные сети — электронная почта
— Электронные конференции, файл-серверы ftp и BBS
— Локальные сети
— Пиратское программное обеспечение
— Персональные компьютеры “общего пользования”
— “Случайные” пользователи компьютера
Основные виды профилактики компьютера.
Приобретать программное обеспечение у официальных продавцов.
Копии хранить на защищенных от записи дискетах.
Периодически создавать копии файлов, с которыми ведется работа.
Не запускать непроверенные файлы, в том числе и полученные от компьютерной сети.
Ограничить круг лиц допущенных к работе ПК
Время от времени запускать антивирусную программу.
Антивирус — это программа, выявляющая и обезвреживающая компьютерные вирусы.Антивирусная программа (антивирус) — любая программа для обнаружения компьютерных вирусов, а также нежелательных (считающихся вредоносными) программ вообще и восстановления зараженных (модифицированных) такими программами файлов, а также для профилактики — предотвращения заражения (модификации) файлов или операционной системы вредоносным кодом.
3 класса антивирусных программ:
Полифаги. Принцип их действия основан на проверке файлов, загрузочных секторов диска, а так же поиска известных и новых (неизвестных полифагу) вирусов. Для поиска вирусов используется маска. Маской вируса называют некоторую постоянную последовательность программного кода специфичную для этого вируса. Если антивирус обнаружит такую последовательность в каком-либо файле, то файл считается зараженным и подлежит лечению. Полифаги могут обеспечивать проверку файлов в процессе их загрузки в оперативную память. Такие программы называются антивирусными мониторами. Достоинство: полифагов их универсальность. Недостаток: большие размеры антивирусных баз данных, их постоянное обновление, низкая скорость поиска вирусов.
Ревизоры. Принцип работы основан на подсчете контрольных сумм диске файлов. Эти контрольные суммызатем сохраняются в базе данных антивирусов вместе с длинною файлов, датой их последнего изменения и т.д. При последующем запуске ревизоров сверяет данные находящиеся в базе с реально подсчитанными значениями. Если информация о файле не совпадает, то ревизор говорит, что файл изменен или заражен вирусом. Недостаток: ревизор не может обнаружить вирус в новых файлах, т.к. информации о них в базе еще нет.
Блокировщики. Это программы перехватывающие вирусоопасные ситуации ( например, запись загрузочных секторов диска) и сообщающая об этом пользователю. Достоинство: способны обнаруживать и останавливать вирус, а самой ранней стадии его размножения.
10 признаков вирусного заражения компьютера
К сожалению, со стремительным развитием цифровых технологий происходит еще более стремительное развитие компьютерных вирусов. И очень часто бывает так, что установленная на ПК антивирусная программа не обеспечивает 100%-ной защиты. Для того чтобы понимать, заражен ли ваш компьютер, есть определенные признаки. Рассмотрим основные из них.
Содержание статьи:
Признаки вирусного заражения ПК
- Сбои в работе системы. Если ОС начинает работать нестабильно, периодически «падая» с появлением «синего экрана смерти» — скорее всего, имеет место заражение.
- Медленная работа Windows может означать то, появившийся вирус-троянец самостоятельно запускает ненужные программы.
- Излишняя активность винчестера во время «простоя системы» — сигнал о том, что в ваших файлах копаются приложения-злоумышленники.
- Странности в работе ОС, возникающие, как правило, во время загрузки – диалоговые окна и т.п. могут означать появление вируса.
- Непонятные сообщения об ошибках в приложении и невозможности открыть файл должны вас насторожить. При их появлении проверьте ПК.
- Некорректная работа приложений. Если ваша программа пытается самостоятельно выйти в Сеть, или появляются полноэкранные изображения – это может быть проделками вирусов.
- Повышенная сетевая активность. Если ваш роутер или другое сетевое оборудование начинают сигнализировать о высокой активности во время относительного бездействия ПК – пришло время чистить компьютер от вирусов.
- Непонятные сообщения с вашего email могут сигнализировать о взломанном аккаунте.
- Ваш IP заблокирован – не исключено, что ПК взломан и используется для рассылки спама.
- Несанкционированное отключение антивируса. Некоторые вирусы настолько продвинуты, что способны отключать антивирусную защиту. Будьте осторожны!
Что делать, если появляются вышеописанные признаки
Прежде всего, не стоит отчаиваться и впадать в панику. Ваша проблема наверняка не уникальна. Сначала воспользуйтесь надежной лечащей утилитой последней версии. Если самостоятельно ликвидировать угрозу не получается – лучше обратитесь к специалистам.
Как максимально обезопасить себя
Напоследок повторим еще раз основные меры профилактики от заражения компьютерными вирусами:
- Обязательно используйте антивирус с обновленными базами данных;
- Воздержитесь от открытия подозрительных сайтов;
- Не открывайте файлы во вложениях электронной почты, особенно с неизвестного адреса.
Вместо послесловия
Следуйте описанным в этой статье рекомендациям и пусть ваши данные будут на компьютере в безопасности!
поделитесь с друзьями:
ВКонтакте
OK
Как выявить вирусы в компьютере
Интернет является неотъемлемой часть жизни современного человека. С другой стороны, он становится источником опасных вирусов, некоторые из которых следует удалять на начальных этапах «инфицирования». Но как выявить вирусы в компьютере? Какие самые распространенные симптомы заражения? Об этом и не только – в моей очередной статье.
Конечно же, подхватить «заразу» можно и без подключения к интернету. К примеру, если Вы вставляете в USB порт «вредоносную» флешку. Об этом я писал в статье как вирус блокирует USB порт. Или обмениваетесь файлами внутри рабочей сети.
На сегодняшний день даже самый лучший антивирус не обеспечивает 100% защиты.
Но есть множество способов обнаружить вирус даже без специального ПО. Сейчас я расскажу о них, но сначала мы рассмотрим основные признаки «заболевания».
СОДЕРЖАНИЕ СТАТЬИ:
Как узнать о заражении?
Хакеры, которые разрабатывают вредоносные скрипты, довольно хитрые особи, которые умело маскируют угрозу под безопасную программу. В любом случае, не нужно паниковать и видеть во всем опасность. Необходимо внимательно проанализировать ситуацию.
Начинать волноваться можно, когда:
- Во время запуска Windows появляется окно блокировки, которое содержит текст наподобие «Вы нарушили такие-то статьи криминального кодекса и дело будет передано в суд. Чтобы избежать этого, отправьте СМС / пополните счет и т.д.». Помните, не так давно я рассказывал об этом вирусе?
- Вы не можете зайти на сайты социальных сетей или поисковых систем. Опять же, появляется окно с предложением заплатить денег. Подробно об этом я писал в тематической статье.
- Система не слишком быстро реагирует на Ваши команды, медленно открываются приложения, процедура копирования / перемещения файлов длится слишком долго.
- Загрузка ОС занимает больше времени, чем раньше. Стоит учесть, что данный признак актуален, если Вы не инсталлировали сторонних приложений, которые могли прописаться в автозагрузке.
- Во время запуска ПК самостоятельно открывается браузер, его начальная страница изменена, постоянно расходуется сетевой трафик (хотя Вы ничего не делаете).
- От Вашего имени начинает рассылаться спам (через e-mail и аккаунты соцсетей).
- Перестает работать двойной щелчок мыши при открытии файлов (при условии, что манипулятор рабочий).
- Начинают бесследно пропадать документы, установленные приложения и прочие файлы.
- ПО не запускается или выполняется с ошибками, которых ранее не было.
Если имеют место быть какие-либо из перечисленных признаков, есть вероятность заражения. Но не стоит паниковать, ведь я всегда готов подсказать, как удалить вирусы.
Способы обнаружения
Я не буду рассказывать, как выявить вредоносный код (файл) с помощью антивирусного софта. Уверен, с этим справится каждый. Достаточно запустить полную проверку с помощью встроенного / стороннего ПО (Kaspersky, Dr.Web Cure It!).
Хочу подробнее рассказать о случае, когда система работает без антивируса (или от последнего нет никакой пользы).
Проверяем диспетчер процессов
Это первое, что приходит мне в голову, когда возникают подозрения. Зачастую, троян маскируется под безопасный процесс и делает свое темное дело. Как обнаружить?
Ого! Как много непонятных процессов. Как же найти лишние?
- Следует сразу же исключить системные.
Вот их краткий перечень:
- Csrss
- Lsass
- Explorer
- Svchost
- Wininit
- System
- Winlogon
- Внимательно просмотрите Ваш перечень. «Шпионы» и прочие вредоносные программы могут скрываться под такими же названиями с разницей в одну-две буквы. Вот, присмотритесь:
- Если список содержит названия, состоящие из бессмысленного набора букв и цифр, стоит задуматься:
- Если в чём-то сомневаетесь, то лучше «забейте» название процесса в поисковой системе, чтобы узнать о нём побольше.
Одним из таких является вирус Recycler я рассказывал о как можно от него избавиться.
С диспетчером задач разобрались? Если есть вопросы, пишите в комментариях, я обязательно отвечу.Анализируем автозагрузку
Большинство вирусов запускаются вместе с системой, блокируя её или активируя свои вредные функции. Хотите узнать, как «вычислить» таких злодеев?
- Вызываем окно «Выполнить» с помощью комбинации Win + R.
- Вводим команду «msconfig» для открытия конфигуратора Microsoft.
- На экране появится нечто подобное (только с другими элементами списка «Автозагрузка»):
- Опять же, смотрите на названия, проверяйте их через Google / Яндекс. Если уверены, что самостоятельно не добавляли элемент в автозапуск, и он не связан с установленным приложением, то смело удаляйте его.
- Перезапустите ПК и повторите предыдущие шаги. Если удаленный пункт снова активен, значит это однозначно вирус. Потребуется более доскональное сканирования и лечение.
Вот мы и разобрались с простейшими способами, которые позволят совершенно бесплатно выявить угрозу на начальном этапе. Такой подход максимально эффективен для предотвращения дальнейшего распространения «заразы». Больше материала можно найти в разделе лечение вирусов, там описаны самые распространенные вирусы и методы борьбы с ними.
Если статья оказалась полезной, почему бы не поблагодарить автора (это я о себе) репостами в социальных сетях. Буду очень признателен. И не забывайте, что при любой ситуации можете обращаться ко мне через форму комментирования.
Какие 10 самых популярных компьютерных вирусов всех времен?
Обновлено: 30.06.2020, Computer Hope
Вирусы бывают разных форм и создаются с разными целями. Некоторые повреждают или удаляют файлы компьютера, в то время как другие предназначены для репликации, пока они не используют вашу оперативную память; выводит ваш компьютер из строя. Есть даже вирусы, такие как Ping-Pong, которые созданы для шутки и не причиняют реального ущерба.
На сегодняшний день существует более миллиона компьютерных вирусов, но лишь небольшой процент из них находится в массовом обращении.Лишь немногие из них вызвали хаос и финансовые затраты на уровне вирусов, перечисленных на этой странице.
Десять самых распространенных вирусов всех времен
Ниже приведены некоторые из вирусов, которые привели к массовым компьютерным заражениям:
1. Storm Worm (также называемый Peacomm и Nuwar ) — 19 января 2007 года более 200 миллионов электронных писем содержали ссылки для загрузки Storm Worm, которые помогают сыграть определенную роль в общей атаке. Большинство полагает, что червь получил свое название от того факта, что одно из электронных писем, несущих вирус, содержало тему «230 погибших, пока шторм бьет Европу».
- В отличие от W32_Storm_Worm, выпущенного в 2001 году, этот вирус был выпущен и идентифицирован в конце 2007 года.
- Разрешено хакерам удаленно управлять компьютером, используя его для злонамеренных действий, таких как отправка большого количества электронной почты (спама).
- Распространяется через поддельные ссылки на видео и новости.
2. Netsky и Sasser — Netsky распространяется через электронную почту и сети Windows, создавая большие объемы интернет-трафика и вызывая атаки типа «отказ в обслуживании» (DoS).В то время считалось, что Netsky и его варианты ответственны за 25% всех вирусных инфекций. Sasser реплицировал, находя другие системы с уязвимостями и заставляя их загружать вирус. Попав на новую машину, он изменил операционную систему, чтобы пользователи не могли выключить свой компьютер.
- Выпущено в феврале и апреле 2004 г. соответственно.
- Создано 17-летним Свеном Яшаном.
- Один из немногих вирусов, по которым можно установить связь с их создателем.
3. MyDoom — Этот червь был уникален тем, что имел своего рода таймер. Вирус начал атаки типа «отказ в обслуживании», а через 11 дней прекратил свое распространение. Эти атаки были нацелены на различные серверы Интернета, включая атаки на поисковые системы, в результате чего некоторые из них выходили из строя, а другие возвращали результаты поиска намного медленнее, чем обычно.
- Выпущено 1 февраля 2004 г.
- Реплицируется с использованием электронной почты и одноранговых сетей.
- Создан бэкдор, который оставался открытым даже после того, как червь перестал распространяться.
4. Blaster Worm — Как только этот червь попадает в сеть, он распространяется быстрее, потому что брандмауэры часто не блокируют внутренние машины от использования порта, используемого червем. Его остановили фильтрация интернет-провайдерами и осведомленность общественности.
- Выпущена в августе 2003 г., автор неизвестен.
- Заражены миллионы компьютеров по всему миру.
- Запущены атаки типа «отказ в обслуживании» (DoS) на серверы Microsoft.
5. SQL Slammer — Распространенный вирус для веб-серверов Slammer (также известный как Sapphire) заразил почти половину серверов, которые помогают запускать Интернет через 15 минут после его первоначальной атаки.
- Выпущено в январе 2003 г.
- Пострадало компьютерных сетей и систем, вызвав отключение и ряд повреждений, оцениваемых более чем в 1 миллиард долларов.
- Вызвал сбои в работе банкоматов Bank of America и службы 911 Сиэтла.
6. Nimda — Распространяясь через электронную почту и веб-страницы, этот червь нацелился на серверы Интернета, почти полностью замедляя работу Интернета. Он также открыл бэкдор в операционной системе компьютера, что позволило хакеру получить доступ к компьютеру. Однако доступ был ограничен разрешениями учетной записи пользователя.
- Выпущено в 2001 году.
- Имя — это слово «админ», написанное задом наперед.
- Самый быстрораспространяющийся компьютерный вирус в истории.
7. Code Red / Code Red II — Эти вирусы использовали уязвимость в Microsoft Windows 2000 и NT, вызывая переполнение буфера.Code Red инициировал атаки типа «отказ в обслуживании» против веб-серверов Белого дома, а Code Red II открыл хакерам лазейку для доступа к системам Windows 2000.
- Выпущено летом 2001 г.
- Позже заблокировано для распространения патчем Microsoft.
8. Klez — Этот вирус был уникален тем, что хакеры воспроизводили его во многих формах. Он также был способен к спуфингу, чтобы способствовать распространению вируса, поскольку получатели могли подумать, что он исходит от друга.
- Выпущен в конце 2001 года.
- Распространяется по электронной почте.
- Может отключать антивирусные программы и выводить компьютер из строя.
9. ILOVEYOU — Путешествовал по электронной почте в виде сообщения от тайного поклонника. Когда пользователи загружали вложение под названием WIN-BUGSFIX.EXE, вирус копировал и встраивался в ключевые файлы; включая ключи реестра.
- Предполагается, что он будет создан Онелем де Гусманом (Филиппины) в 2000 году.
- Первоначально распространялся через электронную почту, а затем через клиентов IRC.
- Ущерб, причиненный вирусом, оценивается примерно в 10 миллиардов долларов.
10. Melissa — После активации вирус будет реплицироваться, а затем рассылается первым 50 людям в адресной книге получателя.
- Создано Дэвидом Смитом в 1999 году.
- Создал беспорядок для государственных и общественных сетей.
- Вызвал некоторых провайдеров электронной почты отключать службы электронной почты до тех пор, пока вирус не будет локализован.
История компьютерных вирусов и что нас ждет в будущем
Когда дело доходит до кибербезопасности, существует несколько терминов с более узнаваемым именем, чем «компьютерные вирусы».Однако, несмотря на распространенность этих угроз и их широкое влияние, многие пользователи не знают об основной природе вирусов. Далее следует краткая история компьютерного вируса и то, что ждет эту широко распространенную киберугрозу в будущем.
Теория самовоспроизводящихся автоматов
Что такое компьютерный вирус? Эта идея впервые обсуждалась в серии лекций математика Джона фон Неймана в конце 1940-х годов и в опубликованной в 1966 году статье «Теория самовоспроизводящихся автоматов».По сути, работа была мысленным экспериментом, в котором предполагалось, что «механический» организм — такой как кусок компьютерного кода — может повредить машины, скопировать себя и заразить новых хозяев, как биологический вирус.
Программа Creeper
Как отмечает Discovery, программа Creeper, которую часто считают первым вирусом, была создана в 1971 году Бобом Томасом из BBN. Creeper был фактически разработан как тест безопасности, чтобы увидеть, возможна ли самовоспроизводящаяся программа.Это было… вроде того. При заражении каждого нового жесткого диска Creeper пытался удалить себя с предыдущего хоста. Creeper не имел злого умысла и отображал только простое сообщение: «Я КРИПЕР. ПОЛУЧИТЕ МЕНЯ, ЕСЛИ ВЫ МОЖЕТЕ!»
Вирус кролика
Согласно InfoCarnivore, вирус Rabbit (или Wabbit) был разработан в 1974 году, имел злой умысел и мог дублировать себя. Попав на компьютер, он сделал несколько своих копий, что сильно снизило производительность системы и в конечном итоге привело к сбою машины.Скорость репликации дала имя вирусу.
Первый троян
Под названием ANIMAL, первый троянец (хотя есть некоторые споры относительно того, был ли это троян или просто другой вирус) был разработан программистом Джоном Уокером в 1975 году, согласно Fourmilab. В то время чрезвычайно популярны были «программы для животных», которые пытаются угадать, о каком животном думает пользователь, с помощью игры из 20 вопросов. Версия, которую создал Уокер, пользовалась большим спросом, и отправить ее своим друзьям означало сделать и передать магнитные ленты.Чтобы упростить задачу, Уокер создал PERVADE, который установился вместе с ANIMAL. Во время игры PREVADE проверил все компьютерные каталоги, доступные пользователю, а затем сделал копию ANIMAL во всех каталогах, где его еще не было. Здесь не было злого умысла, но ANIMAL и PREVADE подходят под определение трояна: внутри ANIMAL пряталась еще одна программа, которая выполняла действия без согласия пользователя.
Вирус загрузочного сектора мозга
Brain, первый вирус для ПК, начал заражать 5.2-дюймовые дискеты в 1986 году. Как сообщает Securelist, это была работа двух братьев, Басита и Амжада Фарук Альви, которые управляли компьютерным магазином в Пакистане. Устав от клиентов, делающих нелегальные копии их программного обеспечения, они разработали Brain, который заменил собой загрузочный сектор дискеты с вирусом. Вирус, который также был первым стелс-вирусом, содержал скрытое сообщение об авторских правах, но на самом деле не повредил никакие данные.
Вирус LoveLetter
Внедрение надежных и быстрых широкополосных сетей в начале 21 века изменило способ передачи вредоносных программ.Больше не ограничиваясь дискетами или корпоративными сетями, вредоносное ПО теперь могло очень быстро распространяться по электронной почте, через популярные веб-сайты или даже напрямую через Интернет. В результате начали формироваться современные вредоносные программы. Ландшафт угроз превратился в смешанную среду, в которой обитают вирусы, черви и трояны — отсюда и название «вредоносное ПО» как общий термин для вредоносного ПО. Одной из самых серьезных эпидемий этой новой эры стало LoveLetter, появившееся 4 мая 2000 года.
Как отмечает Securelist, он следовал образцу более ранних почтовых вирусов того времени, но в отличие от макровирусов, которые доминировали в ландшафте угроз с 1995 года, он не принял форму зараженного документа Word, а прибыл в виде файла VBS. .Это было просто и понятно, и, поскольку пользователи не научились с подозрением относиться к нежелательным письмам, это сработало. Строка темы была «Я люблю тебя», и каждое электронное письмо содержало вложение «LOVE-LETTER-FOR-YOU-TXT.vbs». Создатель ILOVEYOU, Онель де Гусман, сконструировал своего червя для перезаписи существующих файлов и замены их собственными копиями, которые затем использовались для распространения червя по электронной почте всех жертв. Поскольку сообщение часто приходило новым жертвам от кого-то знакомого, они с большей вероятностью открывали его, что делало ILOVEYOU доказательством эффективности социальной инженерии.
Вирус Code Red
Червь Code Red был червем «без файлов» — он существовал только в памяти и не пытался заразить файлы в системе. Воспользовавшись уязвимостью Microsoft Internet Information Server, быстро реплицирующийся червь вызвал хаос, манипулируя протоколами, которые позволяют компьютерам общаться и распространяться по всему миру всего за несколько часов. В конце концов, как отмечает Scientific American, скомпрометированные машины были использованы для запуска распределенной атаки отказа в обслуживании в Белом доме.gov веб-сайт.
Heartbleed
Один из самых последних крупных вирусов, появившихся в 2014 году, ворвался на сцену и поставил под угрозу серверы в Интернете. Heartbleed, в отличие от вирусов или червей, возникает из-за уязвимости в OpenSSL, универсальной криптографической библиотеке с открытым исходным кодом, используемой компаниями по всему миру. OpenSSL периодически отправляет «контрольные сигналы», чтобы гарантировать, что защищенные конечные точки по-прежнему подключены. Пользователи могут отправить OpenSSL определенный объем данных, а затем запросить обратно тот же объем, например, один байт.Если пользователи заявляют, что отправляют максимально разрешенный объем, 64 килобайта, но отправляют только один байт, сервер ответит последними 64 килобайтами данных, хранящихся в оперативной памяти, отмечает технический специалист по безопасности Брюс Шнайер, которые могут включать что угодно, начиная с имен пользователей. к паролям для защиты ключей шифрования.
Будущее компьютерных вирусов
На протяжении более 60 лет компьютерные вирусы были частью коллективного человеческого сознания, однако то, что когда-то было просто кибервандализмом, быстро превратилось в киберпреступность.Черви, трояны и вирусы постоянно развиваются. Хакеры мотивированы и умны, всегда готовы раздвинуть границы возможного соединения и кода, чтобы разработать новые методы заражения. Будущее киберпреступности, похоже, связано с большим количеством взломов PoS (точек продаж), и, возможно, недавний троян удаленного доступа Moker является хорошим примером того, что нас ждет в будущем. Эту недавно обнаруженную вредоносную программу сложно обнаружить, трудно удалить и обойти все известные средства защиты. Нет ничего определенного — перемены — это источник жизненной силы как для атаки, так и для защиты.
Другие полезные материалы и ссылки, связанные с компьютерными вирусами
Краткая история компьютерных вирусов и их будущее
KasperskyКогда дело доходит до кибербезопасности, существует несколько терминов с более узнаваемым именем, чем «компьютерные вирусы». Однако, несмотря на распространенность этих угроз и их широкое распространение, многие пользователи не знают об основной природе вирусов.
10 самых смертоносных компьютерных вирусов всех времен
Получение компьютерного вируса так или иначе случилось со многими пользователями.Для большинства это просто легкое неудобство, требующее очистки, а затем установки той антивирусной программы, которую вы собирались установить, но так и не смогли.
Однако в других случаях, может привести к полной катастрофе, , когда ваш компьютер превратится в очень дорогой кирпич, который никакое количество антивирусов не сможет защитить.
В этом списке мы выделим некоторые из самых ужасных и печально известных компьютерных вирусов, у которых нанесли большой ущерб в реальной жизни .А поскольку люди обычно приравнивают обычные вредоносные программы, такие как черви и троянские кони, к вирусам, мы также включаем их. Эти вредоносные программы причинили огромный вред, исчисляемый миллиардами долларов, и нарушили критически важную реальную инфраструктуру.
Вот 10 самых известных и вредоносных компьютерных вирусов .
Рекомендуемая литература: 10 признаков взлома вашего ПК
1. ILOVEYOU
ILOVEYOU считается одним из самых опасных компьютерных вирусов, когда-либо созданных .Ему удалось нанести ущерб компьютерным системам по всему миру, причинив ущерб на сумму около 10 миллиардов долларов. Считалось, что заражено 10% компьютеров в мире. Это было настолько плохо, что правительства и крупные корпорации отключили свою почтовую систему, чтобы предотвратить заражение.
Вирус был создан двумя филиппинскими программистами, Реонелом Рамонесом и Онелем де Гусманом. Что он сделал, так это то, что использовал социальную инженерию, чтобы заставить людей нажимать на вложение ; в данном случае признание в любви .Вложение было на самом деле сценарием, который выдает себя за файл TXT, поскольку в то время Windows скрывала фактическое расширение файла.
После щелчка он отправит себя всем в списке рассылки пользователя и продолжит заменять файлы собой, в результате чего компьютер не сможет загрузиться. Этим двоим не было предъявлено обвинение, поскольку не существовало законов о вредоносном ПО. Это привело к принятию Закона об электронной коммерции для решения проблемы.
2. Код красный
Code Red впервые появился в 2001 году и был обнаружен двумя сотрудниками eEye Digital Security.Он был назван Code Red, потому что пара пила Code Red Mountain Dew на момент открытия.
Червь нацелился на компьютеры с установленным веб-сервером Microsoft IIS , используя проблему переполнения буфера в системе. Он оставляет очень мало следов на жестком диске, так как он может работать полностью в памяти, ее размер составляет 3569 байт.
После заражения он продолжит создание сотни копий самого себя, но из-за ошибки в программировании он будет дублировать еще больше и в конечном итоге потребляет много системных ресурсов.
Затем он запустит атаку отказа в обслуживании на несколько IP-адресов, известной из которых была атака на веб-сайт Белого дома. Он также обеспечивает доступ к серверу через бэкдор, обеспечивая удаленный доступ к машине.
Самый запоминающийся симптом — это сообщение, которое он оставляет на пораженных веб-страницах: «Взломано китайцами!» , который сам стал мемом. Позднее был выпущен патч, который, по оценкам, привел к потере производительности на 2 миллиарда долларов. В общей сложности пострадали 1-2 миллиона серверов, что удивительно, если учесть, что в то время было 6 миллионов серверов IIS.
3. Мелисса
Названные после экзотической танцовщицы из Флориды, он был создан Дэвид Л. Смитом в 1999 году начался как зараженный документ Word , который был вывешен на Usenet группы alt.sex, претендующий список паролей для порнографического места. Это вызвало у людей любопытство, и когда он был загружен и открыт, он запускал макрос внутри и высвобождал свою полезную нагрузку.
Вирус рассылает себя по почте 50 основным людям в адресной книге электронной почты пользователя , что привело к увеличению трафика электронной почты, нарушив работу почтовых служб правительств и корпораций.Он также иногда искажал документы , вставляя в них ссылку на Симпсоны.
Смита в конце концов поймали, когда они проследили до него документ Word. Файл был загружен с использованием украденной учетной записи AOL, и с их помощью правоохранительные органы смогли арестовать его менее чем через неделю с момента начала эпидемии.
Он сотрудничал с ФБР в поимке других создателей вируса, в том числе известного создателя вируса Анны Курниковой. За сотрудничество он отсидел всего 20 месяцев и заплатил штраф в размере 5000 долларов из 10-летнего срока.Сообщается, что вирус нанес ущерб на 80 миллионов долларов.
4. Sasser
Windows-червь, впервые обнаруженный в 2004 г. , он был создан студентом-информатиком Свеном Яшаном, который также создал червя Netsky. Хотя сама полезная нагрузка может казаться просто раздражающей (она замедляет работу и приводит к сбою компьютера, в то же время затрудняя сброс без отключения питания), он эффекты были невероятно разрушительными: миллионы компьютеров были заражены, и что важно, критически важно. Инфраструктура пострадала .
Червь воспользовался уязвимостью переполнения буфера в службе подсистемы Local Security Authority (LSASS), которая контролирует политику безопасности локальных учетных записей, вызывая сбои в работе компьютера. Он также будет использовать системные ресурсы для распространения на другие машины через Интернет и автоматически заражать другие.
Воздействие вируса было широко распространенным, поскольку, хотя эксплойт был уже исправлен, многие компьютеры не обновлялись. Этот привел к более чем миллиону заражений , уничтожив критически важные инфраструктуры, такие как авиакомпании, информационные агентства, общественный транспорт, больницы, общественный транспорт и т. Д.В целом ущерб оценивается в 18 миллиардов долларов. Яшен судился как несовершеннолетний и получил 21 месяц условно.
5. Зевс
Zeus — это троянский конь, созданный для заражения компьютеров Windows с целью выполнения различных криминальных задач. Наиболее распространенными из этих задач являются клавиатурных шпионов «человек в браузере» и захват формы . Большинство компьютеров были заражены либо в результате скрытых загрузок, либо в результате фишинговых атак.
Впервые обнаруженный в 2009 году, ему удалось взломать тысячи учетных записей FTP и компьютеров крупных транснациональных корпораций и банков, таких как Amazon, Oracle, Bank of America, Cisco и т. Д.Контроллеры ботнета Zeus использовали его для кражи учетных данных социальной сети, электронной почты и банковских счетов.
Только в США было подсчитано, что более 1 миллиона компьютеров были заражены, из них с 25% в США. Вся операция была сложной, в ней были задействованы люди со всего мира, которые действовали как денежные мулы для контрабанды и передачи наличных главарей в Восточной Европе.
Около 70 миллионов долларов были украдены и у них было кольцо. В связи с операцией арестовано 100 человек.В конце 2010 года создатель Zeus объявил о своей отставке, но многие эксперты считают это ложью.
6. Conficker
Также известный как Downup или Downadup , Conficker — это червь неизвестного авторства для Windows, который впервые появился в 2008 году. Название происходит от английского слова configure и немецкого уничижительного слова. Заражает компьютеры, используя уязвимости в ОС для создания ботнета.
Вредоносная программа смогла заразить более 9 миллионов компьютеров по всему миру, затронув правительства, предприятия и отдельных лиц.Это было — одна из крупнейших известных заражений червями, когда-либо обнаруженных , причинившая ущерб в 9 миллиардов долларов.
Червь работает, используя уязвимость сетевой службы , которая присутствовала и не была исправлена в Windows. После заражения червь сбрасывает политики блокировки учетных записей, блокирует доступ к сайтам обновлений Windows и антивирусным программам, отключает определенные службы и блокирует учетные записи пользователей среди многих.
Затем он переходит к установке программного обеспечения, которое превратит компьютер в подчиненное устройство ботнета и пугающее программное обеспечение, чтобы выманивать у пользователя деньги.Позже Microsoft предоставила исправление и патч, и многие поставщики антивирусов предоставили обновления для своих определений.
7. Stuxnet
Считается, что он был создан Силами обороны Израиля совместно с американским правительством. Stuxnet является примером вируса, созданного для целей кибервойны , поскольку он был предназначен для срыва ядерных усилий иранцев. Было подсчитано, что Stuxnet удалось вывести из строя одну пятую ядерных центрифуг Ирана и что почти 60% заражений было сосредоточено в Иране.
Компьютерный червь был разработан для атаки на промышленные программируемые логические контроллеры (ПЛК), которые позволяют автоматизировать процессы в оборудовании .
Он был специально нацелен на разработанные Siemens и распространялся через зараженные USB-накопители. Это изменило скорость машин, заставив их разорваться на части. Если бы на зараженном компьютере не было программного обеспечения Siemens, он бездействовал бы и заразил других ограниченным образом, чтобы не выдать себя. В конце концов компания Siemens нашла способ удалить вредоносное ПО из своего программного обеспечения.
8. Mydoom
Surfing в 2004 году, Mydoom был червем для Windows , который стал одним из самых быстро распространяющихся почтовых червей со времен ILOVEYOU. Автор неизвестен, и считается, что создателю заплатили за его создание, поскольку оно содержит текстовое сообщение «andy; Я просто делаю свою работу, ничего личного, извини ».
Он был назван сотрудником McAfee Крейгом Шмугаром, одним из тех, кто его открыл. «Mydom» — это строка текста в коде программы (мой домен), и, предчувствуя, что она будет большой, добавила в нее «гибель».
Червь распространяется в виде ошибки передачи электронной почты и содержит собственное вложение . После выполнения он отправляется на адреса электронной почты, которые находятся в адресной книге пользователя, и копирует себя в папку любой программы P2P для распространения через эту сеть.
Полезная нагрузка сама по себе двоякая: во-первых, она открывает бэкдор для разрешения удаленного доступа, а во-вторых, запускает атаку отказа в обслуживании на неоднозначную группу SCO. Считалось, что червь был создан, чтобы нарушить работу SCO из-за конфликта из-за права собственности на некоторый код Linux.Ущерб от него оценивается в 38,5 миллиардов долларов, и червь в той или иной форме все еще активен.
9. CryptoLocker
CryptoLocker представляет собой троянскую программу-вымогатель , нацеленную на компьютеры под управлением Windows. Он использует несколько методов для распространения , например электронную почту, и после заражения компьютера он приступит к шифрованию определенных файлов на жестком диске и любом подключенном к нему хранилище с помощью криптографии с открытым ключом RSA.
Хотя удалить вредоносное ПО с компьютера достаточно просто, файлы все равно останутся зашифрованными. Единственный способ разблокировать файлы — заплатить выкуп до крайнего срока . Если крайний срок не соблюден, выкуп значительно увеличится или ключи дешифрования будут удалены. Выкуп обычно составляет 400 долларов предоплатой наличными или биткойнами.
Операция по выкупу была остановлена, когда правоохранительным органам и охранным компаниям удалось взять под контроль часть ботнета, работающего с CryptoLocker и Zeus .
Евгению Богучеву, лидеру группировки, было предъявлено обвинение, и ключи шифрования были переданы затронутым компьютерам.По данным, собранным в ходе рейда, количество заражений оценивается в 500 000 человек, при этом количество тех, кто заплатил выкуп, составляет 1,3%, что составляет 3 миллиона долларов.
10. Воспоминания
Хотя это не так опасно, как остальные вредоносные программы в этом списке, это одно из немногих вредоносных программ для Mac, получивших известность , поскольку оно показало, что компьютеры Mac не защищены. Троянец был впервые обнаружен в 2011 году антивирусной компанией Intego как поддельная установка Flash.
В его новом воплощении пользователю просто нужно включить Java (что, вероятно, есть у большинства из нас).Он распространяется с помощью взломанных веб-сайтов, содержащих код JavaScript, который загружает полезные данные. После установки Mac становится частью ботнета других зараженных компьютеров Mac.
Хорошая новость заключается в том, что , если он заражен , просто локализован для учетной записи этого конкретного пользователя . Плохая новость заключается в том, что заражено более 600 000 компьютеров Mac, в том числе 274 компьютера Mac в районе Купертино, штаб-квартиры Apple.