Ollydbg, F7, ожидание ввода пользователя из диалогового окна?

Я новичок в реверс-инжиниринге. Когда я ввожу код в ollydbg с помощью F7, пока не появится диалоговое окно, ожидающее ввода пользователя, как мне правильно обработать ввод данных пользователем в программе?


person Bùi Văn Thủ    schedule 03.05.2014    source источник
comment
Вы хотите управлять нажатием кнопки?   -  person Amir    schedule 05.03.2016


Ответы (1)


ollydbg 1.10 используется для демонстрации 2.01 имеет аналогичную функциональность

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

предполагая, что вы работаете с simple application, который активно не мешает кому-либо отлаживать
pasuing приложения в ollydbg и viewing call stack должно быть достаточно

press f12 (Одной резьбовой программы предполагается здесь или вам нужно выбрать правильную тему)

Чтобы приостановить отладчик

press ctrl+k Для просмотра стека вызовов

ollydbg покажет как вызываемого, так и вызывающего абонента, а также в контекстном меню (щелчок правой кнопкой мыши) и имеет несколько параметров, включая выполнение до возврата к конкретному вызову.

select any one of the call в пользовательском коде и установите точку останова или

use execute till retn

ollydbg call Stack

Код для стека вызовов, показанного в SONS, заключается в следующем MessageBox ждет пользовательского ввода (для нажатия OK)

before pressing ok pause (f12)  and view call stack (ctrl+k)

чтобы увидеть стек вызовов, похожий на изображение

matryoshka:\>dir /b     matryoshka.cpp
matryoshka:\>type matryoshka.cpp

#include <windows.h>
#pragma comment(lib, "user32.lib")
void funcg (void) {
    MessageBoxA(NULL,"Matryoshka Doll\n","Matryoshka Doll",MB_OK);    
}
void funcf (void) {
    funcg();
}
void funce (void) {
    funcf();
}
void funcd (void) {
    funce();
}
void funcc (void) {
    funcd();
}
void funcb (void) {
    funcc();
}
void funca (void) {
    funcb();
}
void main (void) {
    funca();
}
matryoshka:\>cl /Zi /analyze /W4 /nologo matryoshka.cpp /link /RELEASE
matryoshka:\>dir /b *.exe
matryoshka.exe

matryoshka:\>OLLYDBG.EXE matryoshka.exe
person blabb    schedule 12.05.2014