![]() |
Реверс оконного приложения
У меня появилось задание - реверснуть вредоносное приложение. Но я столкнулся с проблемой так как не прошарен таких вещах. Вообщем есть процедура обработки сообщений, в ней 3 ветки: WM_DESTROY, WM_CREATE, WM_TIMER
c WM_DESTROY все понятно, в WM_CREATE проверяется версия винды, вызывается функция запускающая какое-то левое приложение, и устанавливается таймер, в WM_TIMER приложение соединяется с каким-то хостом, добавляет в реестр новый ключ для какого-то приложения. Вся загвоздка в том, что у меня отладчик вылавливает только ветку WM_TIMER, минуя ветку, где таймер устанавливается. И вообще после CreateWindow отладчик вылетает на процедуре обработки сообщений, минуя цикл обработки. Соответсвенно 2 вопроса - как-так может быть, что минуется цикл обработки, и каким образом мы попадаем на ветку WM_TIMER минуя ветку установки таймера WM_CREATE? если кому совсем интересно то приложение я взял здесь http://vx.netlux.org/vl.php?dir=Trojan-Spy.Win32.Small там взял Trojan-Spy.Win32.Small.i |
Посмотрел файлик, скорее всего это происходит из-за того, что трой хукает обработку сообщений (с помощью функции SetWindowsHookExA):
Код:
seg025:00401584 push 0 |
Цитата:
|
У меня нормально попадает на
Код:
|
Цитата:
я смотрел Trojan-Spy.Win32.Small.a, щас i посмотрю |
Цитата:
вообще по сути, при вызове CreateWindow приложению должно посылаться сообщение WM_CREATE? как в этом случае происходит обработка этого сообщения? насколько я понимаю оно лежит в очереди, пока не завершится CreateWindow и мы не попадем на цикл принятия сообщений, а дольше сообщение берется из очереди и пинается функции обработки, я правильно понимаю ситуацию с WM_CREATE? зы. Олька совсем не патченная |
>> при вызове CreateWindow приложению должно посылаться сообщение WM_CREATE
да Здесь брякнись и трейси до SetTimer ... Код:
0040117C |. C785 6CFFFFFF >MOV DWORD PTR SS:[EBP-94],94 |
Цитата:
Запускаю на вынь хр, под виртуальной машиной vmware, права администраторские, если это может иметь отношение |
Перед WM_CREATE окну посылается еще несколько сообщений
Вот код WNdProc Код:
text:00401149 ; =============== S U B R O U T I N E =======================================Вот здесь Код:
text:00401152 cmp [ebp+Msg], 2дебажу в IDA, бряк ставлю на начало окнонной процедуры (.text:00401149), все работает |
>> Запускаю на вынь хр, под виртуальной машиной vmware, права администраторские, если это может иметь отношение
У меня тоже варя, вин xp sp2 и непропатченная олли... Не понимаю, почему может WM_CREATE не работать, оно должно=\ Ось-то чистая (в смысле софт какой нелигитимный не обитает)? http://msdn.microsoft.com/en-us/library/ms632619(VS.85).aspx |
| Время: 04:05 |