Вирусы вклинивающиеся в код файла не нарушая его работоспособность

Обновлено: 05.07.2024

Презентация на тему: " Основные понятия Компьютерные вирусы и антивирусные программы Выполнили : Сикк Д.,Ниденс Н." — Транскрипт:

1 Основные понятия Компьютерные вирусы и антивирусные программы Выполнили : Сикк Д.,Ниденс Н.

2 Компьютерный вирус – это специально созданные саморазмножающиеся программы, которые могут испортить или уничтожить программы и файлы, хранящиеся в памяти компьютера, или сделать неработоспособным компьютер.

4 Схема работы компьютерных вирусов: Заражение происходит при запуске инфицированной программы или при обращении к носителю, имеющему вредоносный код; Размножение происходит как серия последовательных заражений; Атака во время которой вирус производит более или менее разрушительные действия и при этом непременно проявляет себя.

5 - файловые вирусы - макровирусы макровирусы - загрузочные вирусы -сетевые вирусы. Вредоносные программы ВИДЫ КОМПЬЮТЕРНЫХ ВИРУСОВ

6 Файловый вирус (англ. File infector) компьютерный вирус, распространяющийся путем внедрения своего кода в тело исполняемых файлов. При каждом запуске такого заражённого файла сначала выполняется код вируса, и только потом код самой программы. Объектом вирусного поражения могут выступать исполняемые двоичные файлы (EXE, COM), файлы динамических библиотек (DLL), драйверы (SYS), командные файлы (BAT, CMD) и другие. Файловые вирусы: Перезаписывающие вирусы Перезаписывающие вирусы Вирусы-компаньоны Паразитические вирусы Файловый вирус

7 Данный тип вирусов характеризуется тем, что стирает информацию, содержащуюся в зараженных файлах,, делая их частично или полностью непригодными для восстановления. Зараженные файлы не изменяют свой размер до тех пор, пока вирус не начинает занимать больше места, чем исходный файл, потому что вместо того, чтобы скрываться внутри файла, вирус занимает его содержимое. Единственный способ избавиться от файла, зараженного перезаписывающим вирусом – это удалить полностью файл, таким образом, потерять его содержимое. Примеры: Way, Trj.Reboot, Trivial.88.D. Перезаписывающие вирусы

8 Вирусы-компаньоны Вирусы-компаньоны могут быть также отнесены как к файловым вирусам, так и к резидентным или вирусам прямого действия. Сове название они получили потому, что как только они попадают в систему, то начинают «сопровождать» другие файлы, которые уже существуют. Другими словами, для того чтобы выполнить свои разрушительные действия, вирусы-компаньоны могут ждать в памяти до тех пор, пока нужная программа не запустится (резидентный вирус), или действовать немедленно, копируя себя (вирусы прямого действия). Примеры: Stator, Asimov.1539, Terrax.1069

10 Макровирусы Макро-вирусы поражают файлы, которые созданы с помощью определенных приложений или программ, которые содержат макросы.Являются ограничено резидентными,т.е. находятся в оперативной памяти и заражают документы,пока открыто приложение. К ним относятся документы Word (расширения DOC), электронные таблицы Excel (расширения XLS), презентации PowerPoint (расширения PPS), базы данных Access (расширения MDB), Corel Draw и т.д. Макрос – это небольшая программа, которую пользователь может связать с файлом, созданного с помощью определенных приложений. Эти мини- программы делают возможной автоматическую серию операций для того, чтобы эти операции выполнялись как одно действие, таким образом, не заставляя пользователя выполнять их одно за другим. Существует не просто один тип макро-вирусов, а один для каждой утилиты: Microsoft Word, Microsoft Excel, Microsoft PowerPoint, Microsoft Access, Corel Draw, Lotus Ami Pro, и т.д. Примеры макро-вирусов:Relax, Melissa.A, Bablas, O97M/Y2K.

11 Загрузочный вирус Данный тип вирусов поражает загрузочный сектор гибкого или жесткого диска. Это важная часть диска, где вместе с информацией хранится программа, которая делает возможной загрузку (старт) компьютера с данного диска. Эти вирусы поражают не файлы, а скорее диски, которые их содержат. Сначала они атакуют загрузочный сектор диска, затем, как только Вы запускаете компьютер, загрузочный вирус поразит жесткий диск компьютера. Самый лучший способ предотвратить заражение загрузочными вирусами – это проверять гибкие диски на защиту от записи и никогда не загружать компьютер с неизвестной дискетой в дисководе. Некоторые примеры загрузочного вируса: Polyboot.B, AntiEXE.

12 Сетевые вирусы – это чрезвычайная опасность со стороны локальных сетей и Интернета включительно. Вирусы, проникая на компьютер через сеть, могут привести не только к повреждению важной информации, но и самой системы в целом. Сетевые вирусы для распространения используют возможности и протоколы глобальных и локальных сетей. Самым главным принципом работы такого вируса является уникальная возможность передать свой код без сторонней помощи на рабочую станцию или удаленный сервер. Примеры: «Win.Homer» и «Macro.Word.ShareFun» Сетевые вирусы

13 Вредоносные программы люк или лазейка - секретная точка входа в программу, которая позволяет недобросовестным программистам получить доступ к секретной информации; логическая бомба - или «бомба» замедленного действия, скрывается в обычных программах, действует при наступлении определенных условий (определенная дата, событие), до наступления этого момента старается заразить как можно больше программ;

14 «черви» - используют сетевые соединения для распространения вирусов от одной системы к другой; «троянский конь» - маскируется под обычные прикладные программы, дополнительно выполняет несанкционированные действия (просмотр и запоминание секретной информации, считывание оперативной памяти для передачи их «на сторону»).

15 Источники вирусов Интернет и локальная сеть Электронная почта Флеш-накопители Пиратские диски

16 ИНТЕРНЕТ и локальные сети Самый крупный источник вирусов - это, конечно же, Интернет. Вирусы в Интернете можно подхватить практически везде - получив "червя" по электронной почте, скачав программу из какого- либо архива, получив фотографию знакомого через ICQ и т. д.

18 ФЛЕШ – НАКОПИТЕЛИ (флешки) Флешки основной источник заражения для компьютеров, не подключённых к сети Интернет. Использование этого канала преимущественно обусловлено возможностью создания на флешке специального файла autorun.inf. Большое количество вирусов распространяется через цифровые фотоаппараты, цифровые видеокамеры, цифровые плееры (MP3-плееры), сотовые телефоны.

19 ПИРАТСКИЕ ДИСКИ Мы часто отдаем предпочтение именно пиратским дискам, которые стоят намного дешевле лицензионных и содержат целые сборники полезного программного обеспечения и фильмов. Однако приобретая пиратский диск, не забывайте о том, что такие диски никак не могут гарантировать безопасность вашего компьютера.

20 Например, даже если в адресных книгах некоторых пользователей имеются только два адреса, то почтовый вирус, заразивший компьютер одного пользователя, через три рассылки поразит компьютеры уже восьми пользователей. РАСПРОСТРАНЕНИЕ КОМПЬЮТЕРНЫХ ВИРУСОВ

21 КАК УБЕРЕЧЬСЯ ОТ ВИРУСОВ? Чтобы обезопасить свой компьютер и свои файлы, пользователю необходимо знать основные методы защиты от компьютерных вирусов.

23 Для обнаружения, удаления и защиты от компьютерных вирусов разработаны специальные программы, которые называются антивирусными. АНТИВИРУСНЫЕ ПРОГРАММЫ

24 Антивирусная программа Незаражённая программа Компьютерный вирус ПРОЦЕСС ЗАРАЖЕНИЯ ВИРУСОМ И ЛЕЧЕНИЯ ФАЙЛА Компьютерный вирус Заражённый файл Вылеченный файл

25 Антивирус Антивирус лаборатории Касперского лаборатории Касперского Предназначена для пресечения всех возможных путей проникновения вирусов в компьютер, включая Интернет, электронную почту, флешки и т.д. Используются все типы антивирусной защиты. - предназначена для поиска и обезвреживания файловых, загрузочных и файловой-загрузочных вирусов.


Написание книги – нелегкий труд, успех которого невозможен без посторонней помощи.

Выражаю благодарность своим друзьям и близким, издательству 'Питер', в особенности Дмитрию Гурскому и Юлии Чернушевич, и всем, кто потратил на данную работу свои силы и время.

Взлом сайтов, кража паролей и конфиденциальной информации, удаленные проникновения и вторжения – это та реальность, в которой мы живем. 'Не так уж все и облачно', – скажут некоторые из читателей и будут правы лишь в том, что в действительности информация о взломах, которую обнародуют, – лишь небольшой процент от реальных инцидентов взлома.

Против чего надо защищаться в первую очередь и какими средствами это можно сделать эффективнее всего – ответы на эти вопросы читатель найдет на страницах данной книги.

Так уж повелось, что издания, посвященные компьютерной безопасности, чаще всего можно грубо разделить на те, которые рассчитаны на профессионалов, и те, что предназначены для новичков. Ко всему прочему издания подобного рода обычно рассматривают вопросы безопасности исключительно с точки зрения защиты.

Эта книга коренным образом разрушает такой стереотипный подход. Она будет одинаково полезной и интересной как для новичков, так и для продвинутых пользователей. Вопросы безопасности здесь рассмотрены как с точки зрения защиты, так и с точки зрения взлома.

Издание удачно сочетает в себе теорию и практику. Многочисленные примеры из реальной жизни и иллюстрации позволяют за считанное время овладеть навыками организации многоуровневой системы защиты от хакерских вторжений и вредоносного кода.

Усвоив материал издания, вы с легкостью сможете ответить на множество вопросов, касающихся компьютерной безопасности.

Все материалы, приведенные в книге, носят исключительно ознакомительный характер. Автор не несет никакой ответственности за использование их в злонамеренных целях.

Мы будем рады узнать ваше мнение!

Введение в безопасность

¦ Классическая модель безопасности – это мыльный пузырь?

¦ Основы информационной безопасности

¦ Некоторые разновидности сетевых атак

¦ Классификация угроз безопасности веб-серверов

Цель данной главы – сформировать у читателя базовое представление о том, что же такое компьютерная безопасность. Здесь же в деталях приводится авторитетная классификация угроз безопасности веб-серверов, призванная упорядочить знания и помочь разобраться в многообразии возможных атак и их реализации. Начнем первую главу с рассмотрения классической модели безопасности.

1.1. Классическая модель безопасности – это мыльный пузырь?

Предположим, что рассматриваемая нами система (в данном контексте будем говорить об операционных системах линейки Windows) защищена межсетевым экраном и антивирусом; ко всему прочему (а это, с точки зрения взлома, можно считать одним из ключевых моментов), пользователь работает не от прав администратора!

Насколько безопасна такая система? Попробуем выяснить это вместе.

Нужен ли нам антивирус? «Конечно же, нужен, – скажет абсолютное большинство. – Как без антивируса-то? Чем же мы будем защищаться?».

Диски надо регулярно проверять? Вдруг 'киберзараза' тихо сидит и ждет, а потом в определенный день и час отформатирует жесткий диск.

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

Обновление антивирусных баз – это вообще святое. Базы недельной давности – уже древние. Поэтому риск 'подцепить заразу' со старыми базами очень велик, и это прописная истина. Выход – базы надо обновлять регулярно.

Одного антивируса явно недостаточно! Все мы знаем, что для обеспечения мало-мальски приличного уровня безопасности надо установить два антивирусных продукта, а чтобы они не конфликтовали – на разные системы. Все верно.

Все было сделано правильно и работало на ура… Ничего не предвещало беды… пока в один прекрасный день система не легла-таки под новым вирусом неизвестного происхождения. Файлы были хитро переписаны вирусным кодом и/или жесткий диск зверски отформатирован. Но ведь все было сделано правильно!

Вариант 1. Вы «подцепили заразу» раньше, чем ее сигнатуры успели попасть в базы вашего антивируса, к тому же вирусом оказался не классический EXE-файл, а HTML-страница. Почему бы и нет?

Механизм работы такого вируса реализуется через уязвимости браузера при обработке ActiveX- объектов. Итак, начнем веселый некролог системе следующим образом (листинг 1.1).

Листинг 1.1. Устанавливаем стартовую страницу браузера

Вариант 2. Звучит кощунственно: содержимое HTML-файла, подобно патологоанатому, методично «потрошит» винчестер. Невозможно? Еще как возможно! А вот и сценарий стартовой страницы (листинг 1.2).

Образ диска и дамп оперативной памяти позволяет выполнить ПО FTK Imager.

Инструментарий, с помощью которого будет производиться снятие слепка оперативной памяти лучше всего запускать с внешнего носителя, во избежания оставить лишнее следы на жестком диске (данные с жесткого диска необходимо сохранить в неизменном виде).

Важно помнить следующие:

  • В случае заражения ПК вирусом шифровальщиком есть шанс что при потере сетевого соединения, малварь начнет шифровать все данные на ПК, Вам необходимо предварительно оценить важность и критичность информации расположенной на зараженном ПК.
  • Чтобы малварь не успела среагировать на выключение системы, проще всего выдернуть кабель питания.

Перед началом исследования малвари статическим и динамическим анализом, необходимо подготовить безопасную среду, которая должна включать в себя следующие:

1.Подготовить виртуальную машину с помощью Virtual Box или VMware (Важно актуальной версии), или отдельно выделенный ПК, желательно с Windows 7.

Далее следующий софт, который должен быть установлен для благоприятной среды выполнения вредоносного кода:

Так же необходимо изолировать виртуальную среду от основной ОС:

  • Отключение Drag&Drop
  • Отключение общих папок
  • Отключение буфера обмена
  • Отключение от сети. Если интернет нужен настраиваем VPN.
  • Удаляем VMware Tools, virtualbox guest additions (малварь может обнаружить данные дополнения и перестать выполняться т.к. выполнение вредоносного кода в виртуальной среде один из признаков ее исследования)

2. Необходимо настроить выход в сеть интернет используя VPN, чтобы поддерживать связь с сервера управления вредоносным ПО.
3. Чтобы была возможность откатиться на первоначальное состояние тестовой среды, необходимо сделать snapshot.

И так, статический анализ:

1. Проверка потенциально вредоносного файла антивирусным ПО.
2. Залив потенциально вредоносного файла на VirusTotal, в данном случае осторожно с потенциально конфиденциальной/приватной информацией, так как после залива она будет доступна всем. Либо осуществить поиск по сгенерированной хеш сумме.


Оглавление

Приведённый ознакомительный фрагмент книги Создаем вирус и антивирус предоставлен нашим книжным партнёром — компанией ЛитРес.

В этой главе рассказано о вирусах, заражающих EXE-файлы. Приведена классификация таких вирусов, подробно рассмотрены алгоритмы их работы, отличия между ними, достоинства и недостатки. Для каждого типа вирусов представлены исходные тексты с подробными комментариями. Также приведены основные сведения о структуре и принципах работы EXE-программы.

COM-файлы (небольшие программы, написанные в основном на языке Assembler) медленно, но верно устаревают. Им на смену приходят пугающие своими размерами EXE-«монстры». Появились и вирусы, умеющие заражать EXE-файлы.

Структура и процесс загрузки EXE-программы

В отличие от COM-программ, EXE-программы могут состоять из нескольких сегментов (кодов, данных, стека). Они могут занимать больше 64Кбайт.

EXE-файл имеет заголовок, который используется при его загрузке. Заголовок состоит из форматированной части, содержащей сигнатуру и данные, необходимые для загрузки EXE-файла, и таблицы для настройки адресов (Relocation Table). Таблица состоит из значений в формате сегмент: смещение. К смещениям в загрузочном модуле, на которые указывают значения в таблице, после загрузки программы в память должен быть прибавлен сегментный адрес, с которого загружена программа.

При запуске EXE-программы системным загрузчиком (вызовом функции DOS 4Bh) выполняются следующие действия:

1. Определяется сегментный адрес свободного участка памяти, размер которого достаточен для размещения программы.

2. Создается и заполняется блок памяти для переменных среды.

3. Создается блок памяти для PSP и программы (сегмент:0000h — PSP; сегмент+0010h:0000h — программа). В поля PSP заносятся соответствующие значения.

4. Адрес DTA устанавливается равным PSP:0080h.

5. В рабочую область загрузчика считывается форматированная часть заголовка EXE-файла.

6. Вычисляется длина загрузочного модуля по формуле: Size=((PageCnt*512)–(HdrSize*16))–PartPag.

7. Определяется смещение загрузочного модуля в файле, равное HdrSize*16.

8. Вычисляется сегментный адрес (START_SEG) для загрузки — обычно это PSP+10h.

9. Считывается в память загрузочный модуль (начиная с адреса START_SEG:0000).

10. Для каждого входа таблицы настройки:

a) читаются слова I_OFF и I_SEG;

b) вычисляется RELO_SEG=START_SEG+I_SEG;

c) читается слово по адресу RELO_SEG:I_OFF;

d) к прочитанному слову прибавляется START_SEG;

e) результат запоминается по тому же адресу (RELO_SEG:I_OFF).

11. Распределяется память для программы в соответствии с MaxMem и MinMem.

12. Инициализируются регистры, выполняется программа:

b) АХ=результат проверки правильности идентификаторов драйверов, указанных в командной строке;

c) SS=START_SEG+ReloSS, SP=ExeSP;

d) CS=START_SEG+ReloCS, IP=ExeIP.

EXE-вирусы условно можно разделить на группы, используя в качестве признака для деления особенности алгоритма.

Вирусы, замещающие программный код (Overwrite)

Такие вирусы уже стали раритетом. Главный их недостаток — слишком грубая работа. Инфицированные программы не исполняются, так как вирус записывается поверх программного кода, не сохраняя его. При запуске вирус ищет очередную жертву (или жертвы), открывает найденный файл для редактирования и записывает свое тело в начало программы, не сохраняя оригинальный код. Инфицированные этими вирусами программы лечению не подлежат.

Эти вирусы получили свое название из-за алгоритма размножения: к каждому инфицированному файлу создается файл-спутник. Рассмотрим более подробно два типа вирусов этой группы:

Вирусы первого типа размножается следующим образом. Для каждого инфицируемого EXE-файла в том же каталоге создается файл с вирусным кодом, имеющий такое же имя, что и EXE-файл, но с расширением COM. Вирус активируется, если при запуске программы в командной строке указано только имя исполняемого файла. Дело в том, что, если не указано расширение файла, DOS сначала ищет в текущем каталоге файл с заданным именем и расширением COM. Если COM-файл с таким именем не найден, ведется поиск одноименного EXE-файла. Если не найден и EXE-файл, DOS попробует обнаружить BAT (пакетный) файл. В случае отсутствия в текущем каталоге исполняемого файла с указанным именем поиск ведется во всех каталогах, доступных по переменной PATH. Другими словами, когда пользователь хочет запустить программу и набирает в командной строке только ее имя (в основном так все и делают), первым управление получает вирус, код которого находится в COM-файле. Он создает COM-файл еще к одному или нескольким EXE-файлам (распространяется), а затем исполняет EXE-файл с указанным в командной строке именем. Пользователь же думает, что работает только запущенная EXE-программа. Вирус-спутник обезвредить довольно просто — достаточно удалить COM-файл.

Вирусы второго типа действуют более тонко. Имя инфицируемого EXE-файла остается прежним, а расширение заменяется каким-либо другим, отличным от исполняемого (COM, EXE и BAT). Например, файл может получить расширение DAT (файл данных) или OVL (программный оверлей). Затем на место EXE-файла копируется вирусный код. При запуске такой инфицированной программы управление получает вирусный код, находящийся в EXE-файле. Инфицировав еще один или несколько EXE-файлов таким же образом, вирус возвращает оригинальному файлу исполняемое расширение (но не EXE, а COM, поскольку EXE-файл с таким именем занят вирусом), после чего исполняет его. Когда работа инфицированной программы закончена, ее запускаемому файлу возвращается расширение неисполняемого. Лечение файлов, зараженных вирусом этого типа, может быть затруднено, если вирус-спутник шифрует часть или все тело инфицируемого файла, а перед исполнением его расшифровывает.

Вирусы, внедряющиеся в программу (Parasitic)

Вирусы этого вида самые незаметные: их код записывается в инфицируемую программу, что существенно затрудняет лечение зараженных файлов. Рассмотрим методы внедрения EXE-вирусов в EXE-файл.

Способы заражения EXE-файлов

Самый распространенный способ заражения EXE-файлов такой: в конец файла дописывается тело вируса, а заголовок корректируется (с сохранением оригинального) так, чтобы при запуске инфицированного файла управление получал вирус. Похоже на заражение COM-файлов, но вместо задания в коде перехода в начало вируса корректируется собственно адрес точки запуска программы. После окончания работы вирус берет из сохраненного заголовка оригинальный адрес запуска программы, прибавляет к его сегментной компоненте значение регистра DS или ES (полученное при старте вируса) и передает управление на полученный адрес.

Следующий способ — внедрение вируса в начало файла со сдвигом кода программы. Механизм заражения такой: тело инфицируемой программы считывается в память, на ее место записывается вирусный код, а после него — код инфицируемой программы. Таким образом, код программы как бы «сдвигается» в файле на длину кода вируса. Отсюда и название способа — «способ сдвига». При запуске инфицированного файла вирус заражает еще один или несколько файлов. После этого он считывает в память код программы, записывает его в специально созданный на диске временный файл с расширением исполняемого файла (COM или EXE), и затем исполняет этот файл. Когда программа закончила работу, временный файл удаляется. Если при создании вируса не применялось дополнительных приемов защиты, то вылечить инфицированный файл очень просто — достаточно удалить код вируса в начале файла, и программа снова будет работоспособной. Недостаток этого метода в том, что приходится считывать в память весь код инфицируемой программы (а ведь бывают экземпляры размером больше 1Мбайт).

Следующий способ заражения файлов — метод переноса — по всей видимости, является самым совершенным из всех перечисленных. Вирус размножается следующим образом: при запуске инфицированной программы тело вируса из нее считывается в память. Затем ведется поиск неинфицированной программы. В память считывается ее начало, по длине равное телу вируса. На это место записывается тело вируса. Начало программы из памяти дописывается в конец файла. Отсюда название метода — «метод переноса». После того, как вирус инфицировал один или несколько файлов, он приступает к исполнению программы, из которой запустился. Для этого он считывает начало инфицированной программы, сохраненное в конце файла, и записывает его в начало файла, восстанавливая работоспособность программы. Затем вирус удаляет код начала программы из конца файла, восстанавливая оригинальную длину файла, и исполняет программу. После завершения программы вирус вновь записывает свой код в начало файла, а оригинальное начало программы — в конец. Этим методом могут быть инфицированы даже антивирусы, которые проверяют свой код на целостность, так как запускаемая вирусом программа имеет в точности такой же код, как и до инфицирования.

Вирусы, замещающие программный код (Overwrite)

Как уже говорилось, этот вид вирусов уже давно мертв. Изредка появляются еще такие вирусы, созданные на языке Assembler, но это, скорее, соревнование в написании самого маленького overwrite-вируса. На данный момент самый маленький из известных overwrite-вирусов написан ReminderW (Death Virii Crew group) и занимает 22 байта.

Алгоритм работы overwrite-вируса следующий:

1. Открыть файл, из которого вирус получил управление.

2. Считать в буфер код вируса.

4. Искать по маске подходящий для заражения файл.

5. Если файлов больше не найдено, перейти к пункту 11.

6. Открыть найденный файл.

7. Проверить, не заражен ли найденный файл этим вирусом.

8. Если файл заражен, перейти к пункту 10.

9. Записать в начало файла код вируса.

10. Закрыть файл (по желанию можно заразить от одного до всех файлов в каталоге или на диске).

Читайте также: