Мусорные команды

eXeL@B DVD

Материал из Справочник исследователя программ

Перейти к: навигация, поиск

Мусорные команды — машинные команды, результаты исполнения которых в программе не используются; могут, например, вставляться при генерации процедуры расшифровщика (декриптора) полиморфного вируса для затруднения обнаружения вируса и анализа его тела.

Пример (fasm)

Декриптор:

  mov  esi, start_of_virus_body
  mov  ebx, decryption_key
  mov  ecx, virus_size
decryption_loop:
  xor  [esi], ebx
  inc  esi
  loop decryption_loop

Декриптор, делающий то же самое, но содержащий «мусорные» команды:

  mov  esi, start_of_virus_body
  nop                              ; мусор
  mov  ebx, decryption_key
  add  edx, 105                    ; мусор
  mov  ecx, virus_size
  xchg ebp, edx                    ; мусор
  jc   decryption_loop             ; мусор
decryption_loop:
  xor  [esi], ebx
  push ebx                         ; мусор
  pop  eax                         ; мусор
  inc  esi
  dec  eax                         ; мусор
  loop decryption_loop
  jcxz next                        ; мусор
next:

См. также

Ассемблер

Машинный код

NOP