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

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

Репутация: 2726


По умолчанию

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

Цитата:
А ведь это здорово, мы можем записать адрес возврата, например, адресом следующих после 6789 байт
Цитата:
после RET управление переходит к нашему коду, который выводит MessageBox и завершает процесс.
довольно неэстетичный способ - жестко прописывать конкретный адрес
буфера в _стеке_
не проще ли просто найти \xFF\xE4 (jmp esp) в ntdll
и поставить его адрес для eip ?
кто бы что не говорил, jmp esp легче найти где-нибудь так чтоб он был почти везде одинаков. темболее если специфическое приложение использует какую-нибудь свою dll

Цитата:
С помощью ORG мы задаем место в памяти, с которого будет располагаться наш код во время выполнения.
Рискую показать глупость, но зачем задавать базу если этот код все равно просто пойдет в бинарном виде в стек...

ну и веселая очепятка
Цитата:
Итак, пробуем FASW
ещё, думаю, прикольно было бы написать про создание win32-шеллкода для bindport'а... именно шеллкода

PS
http://cribble.by.ru/data/getprocaddressex.asm
Цитата:
var_6C equ -6Ch
var_2C equ -2Ch
var_28 equ -28h
var_24 equ -24h
var_20 equ -20h
var_1C equ -1Ch
var_18 equ -18h
var_14 equ -14h
var_10 equ -10h
var_C equ -0Ch
var_8 equ -8
var_4 equ -4
arg_0 equ 8
arg_4 equ 0Ch
))))
я тоже так делаю, просто не показываю

Последний раз редактировалось KEZ; 09.11.2006 в 06:23..