Мегаобучалка Главная | О нас | Обратная связь


Алгоритм заражения файлов для размножения.



2019-07-04 157 Обсуждений (0)
Алгоритм заражения файлов для размножения. 0.00 из 5.00 0 оценок




Вирус OneHalf 3544 для своего размножения использует заражение файлов которые записываются на гибкие магнитные носители (дискеты). При обнаружении обращения DOS к дискете для записи файла вирус определяет, не превышает ли длина заражаемого .СОМ файла + длина тела вируса (3544 байт) величины 64 килобайта. Эта величина является пределом длины файлов такого типа. Если превышает, то заражение не производится, а если не превышает, то производится проверка имени файла. Если имя файла содержится в списке не подлежащих заражению (SCAN, CLEAN, FINDVIRU, GUARD, NOD, VSAFE, MSAV,CHKDSK), то заражение также не производится. Далее вирус производит поиск признака зараженности файла. Если файл уже заражен, то число секунд во времени создания файла будет равно остатку деления числа даты во времени создания файла на 30. При наличии признака заражения файл повторно не заражается.

Если файл не заражен, то в теле файла создается 10 пустых «пятен» для размещения в них расшифровщика тела вируса. Выбирается случайное число для их размещения в теле файла, проверяя при этом, чтобы расстояние между двумя ближайшими было не менее 10 байт. Здесь мы можем увидеть, что размещение «пятен» кода расшифровщика является случайным, что также мы можем отнести к проявлениям полиморфности вируса. Код расшифровщика записывается в «пятна». Таблица размещения «пятен» записывается в начале файла. При неудачной записи «пятна» удаляются и файл не заражается.

Генерируется случайное число, которое становится ключом шифрации тела вируса. Тело вируса шифруется, ключ записывается в таблице размещения «пятен» расшифровщика. Зашифрованное тело вируса записывается в конец заражаемого файла. При неудачной записи заражение отменяется и «пятна» расшифровщика удаляются. Если запись произведена успешно, то уже зараженный файл записывается на дискету. Из-за того, что для выбора ключа шифровки тела вируса используется случайное число, что исключает повторение байт в шифрованном теле вируса, можно классифицировать вирус OneHalf 3544 как вирус-мутант или полиморфный вирус.

 

ВЫВОДЫ.

Вирус OneHalf 3544 является тщательно разработанным файлово-загрузочным мутирующим стелс-вирусом, использующим оригинальный механизм заражения и размножения;

Однако при наличии отличного механизма полиморфности недостаточно развитый механизм стелсирования позволяет обнаруживать вирус при просмотре количества памяти в Norton Commander и просмотре MBR диска программой Diskedit из комплекта Norton Utilities (версия не ниже 6.0)т с ключом /M (запрет использования прерываний DOS).

При всей тщательности прописывания процедур заражения и шифровки - расшифровки диска при практических заражениях дисков обнаружено, как минимум, две ошибки. Одна из них состоит в том, что некоторые диски емкостью 420 мегабайт заражаются некорректно (при заражении неверно определяется количество секторов MBR и последний сектор тела вируса «отражается» на сектор, занимаемый Partition Table, что приводит диск в нерабочее состояние). Следует учесть, что в этом случае вирус успевает корректно перенести оригинальный MBR в один из скрытых секторов и можно восстановить работоспособность диска при помощи переноса MBR на свое место вручную Diskedit’ором. При этом не следует забывать, что вирус не успевает полностью отработать свой механизм инсталляции (вылечить файл-переносчик) и заражение может повториться снова при его запуске. Второй ошибкой является то, что при шифровании некоторых дисков вирус «ошибается» и шифрует последние 2 дорожки с ключом, отличным от записанного в MBR. При следующем запуске и работе с зашифрованными дорожками он корректно исправляет эту ошибку. Однако, если этот момент совпадает с расшифровкой дорожек антивирусами, то последние 2 дорожки можно считать утерянными.

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

Вирус имеет несколько слабых мест, которые можно использовать для борьбы с ним.

1) Запись в MBR нового значения нижней границы заши-

фрованныхнных дорожек дает возможность обнаружить  

вирус по изменению MBR встроенными возможностями         

BIOS (проверка на вирусы ) и ревизором Adinf.

2) Проверка заражаемого файла на зараженность, выпол-

                няемая сравнением количества секунд времени созда -

                ния файла с остатком деления даты времени создания 

                файла на 30, дает возможность применить метод вакци -

                нирования файлов с целью предотвратить распростра-

                нение вируса с компьютера даже при наличии зараже -

                ния. При изменении количества секунд во времени соз-

                дания файла вирус будет считать такой файл уже зара -

                женным, а т.к. он вылечивает файл-носитель при первом 

                заражении мы не будем иметь в системе и файлах, пе-

                реписываемых на дискету, тела вируса.

3) Хранение в MBR ключа шифрования дорожек диска и 

                последнего значения границы дорожек дает возмож -

               ность в большинстве случаев корректно расшифровать  

               дорожки. Хранение в файле таблицы размещения «пя -

               тен» расшифровщика позволяет корректно удалить «пят-

               на» и само тело вируса из файла.

4) Проверку наличия своего тела в памяти вирус произво- 

     дит вызовом несуществующей функции DOS и анализом 

     кода возврата. Это дает возможность написать резидент-

     ную вакцину, которая бы перехватывала вызов этой    

    функции, выводила аварийное сообщение и запрещала 

    дальнейшее выполнение операций. Этот способ приме   

    нил Александр Крыжановский в своей вакцине  

    VS_ONE_H.

5) Запрет заражения файлов с определенными именами да

    ет возможность «обмануть» вирус для получения истин

    ного значения объема ОЗУ. Достаточно назвать нашу про

               грамму с запросом размера память как CHKDSK, и мы 

               получим истинное значение количества памяти. По раз-

               нице мы можем судить о заражении нашей системы.

6)      Многие вирусы трассируют int13h до BIOS, чтобы   

     обойти антивирусные ревизоры. Так же поступает и     

     OneHalf, если увидит, что машина не заражена, и ее нуж-   

     но заразить - тогда он прописывает себя в MBR, но де

     лает это после того, как оттрассирует int13h.

               Вакцина А.Крыжановского также перехватывает int13h,           

               и использует антитрассировочный алгоритм, называю-

               щийся в программистком мире "поплавок". Как только

               кто-либо в системе совершал попытку оттрассировать 

               прерывание 13h, вакцина выдает предупреждение и 

               останавливает систему.

               Метод «поплавка» основан на том, что трассировка 

              делается пошагово – процессор переключается в режим 

              отладки, и после выполнения каждой команды вызывает

               debug-прерывание, используемое, обычно отладчиками    

               для пошаговой отладки программы, чтобы проанализиро

               вать результаты выполнения команды. Вызов отладочно 

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

              процессора, в котором сохраняется адрес возврата. Это и

              используется для того, чтобы определить трассировку: 

              Мы запрещаем прерывания, затем помещаем в первую

              свободную ячейку стека код 0000 или FFFF (оба адреса  

             не могут быть адресом возврата), затем считываем из    

             первой свободной ячейки стека значение, разрешаем пре 

             рывания и сравниваем считанное значение с тем, что мы     

             туда помещали.

              Смысл метода в том, что когда программа выполняется 

              нормально, после запрета прерываний, никто не сможет    

              прервать выполнение нашей программы, и поэтому

              поместив в первую свободную ячейку стека какое-либо 

              значение, мы затем сможем его же оттуда и прочитать, 

              потому что стек использовать некому. Если же програм     

              ма выполняется пошагово, то несмотря на запрет преры-

              ваний, процессор все равно вызовет debug-прерывание 

              после команды, которой мы помещали в стек число. Это 

             debug-прерывание поместит в использованную нами ячей-

              ку стека адрес возврата, после чего этот адрес мы и про-

              читаем следующей командой чтения из стека. Получив 

              несовпадение записанного и считанного чисел мы смо-

              жем убедиться в том, что включен режим пошагового 

      выполнения команд процессора и мы можем утверждать, 

             что подверглись заражению вирусом.

   Для предотвращения заражения компьютера вирусом OneHalf 3544 рекомендую использовать резидентную вакцину VS_ONE_H, написанную ялтинским программистом Александром Крыжановским. Так же можно использовать AVP монитор Евгения Касперского. Можно использовать для обнаружения заражения ревизор ADINF Дмитрия Мостового, но необходимо помнить, что его лечащий блок не умеет расшифровывать дорожки, а простое восстановление MBR приведет к потере зашифрованных данных!

Для обнаружения и лечения вируса и устранения его последствий рекомендую использовать полифаг DoctorWeb Игоря Данилова (версия не ниже 1.7, версия 1.6 просто удаляет тело вируса из системы, а это недопустимо), AVP 3.0 Pro Евгения Касперского, а так же можно использовать словацкий фаг ONEHALF (специально написан для данного вируса) , полифаги TBAV, F-PROT, Norton Antivirus.

 

Источники информации.

1. Информатика: Учебник / под ред. Проф. Н.В. Макаровой. - М.: 

Финансы и статистика, 1997.

2. П. Абель. Язык ассемблера для IBM PC и программирования.

   Москва, 1992.

3. Листинг вируса Onehalf 3544, полученный при помощи диз-

   ассемблера Sourcer v. 7.0

4. Вакцина против вируса OneHalf 3544 (VS_ONE_H.COM), напи-

   санная Александром Крыжановским, 1995.

5. Антивирусные программы DrWeb 1.6; 1.7; 4.15; 4.16; AVP 3.0

   Pro build 1.32, Adinf 12.0, TBAV, F-PROT, NAV.

6. Хижняк П.Л. Пишем вирус и антивирус для IBM – совместимых  

   компьютеров. Инто. Москва 1991

7. Касперский Е. Компьютерные вирусы в MS-DOS. Эдель. Моск - 

   ва. 1992 г.

8. Интернет: сайты www.avp.ru ; www.virus.com;   

   www.virus.perm.ru

8. Электронный журнал «Infected voice» №5/1995.

Содержание.

1. Ведение ………………………………………………………2

2. Классификация вирусов ……………………………………3

3. Анализ алгоритма вируса ………………………………….5

4. Размещение вируса в зараженном файле ………………….5

5. Размещение вируса в зараженном MBR …………………..6

6. Алгоритм инсталляции вируса …………………………….7

7. Алгоритм заражения файлов для размножения…………...9

8. Выводы ………………………………………………………11

9. Источники информации …………………………………….17



2019-07-04 157 Обсуждений (0)
Алгоритм заражения файлов для размножения. 0.00 из 5.00 0 оценок









Обсуждение в статье: Алгоритм заражения файлов для размножения.

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...
Как построить свою речь (словесное оформление): При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою...
Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (157)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)