Сейчас на форуме: Lohmaty, tyns777 (+7 невидимых)

 eXeL@B —› Вопросы новичков —› DefWindowProcW, как найти строчку, которую я ввел в регистрационном окне?
Посл.ответ Сообщение

Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 24 января 2018 18:20
· Личное сообщение · #1

Я пробовал функции GetWindowText GetWindowTextA, GetWindowTextW, GetDlgItemText GetDlgItemTextA, GetDlgItemTextW, но не получилось. Далее я попробовал DefWindowProcW, и нашел, что при нажатии ОК, можно поймать WM_LBUTTONDOWN. На этом идеи закончились.. В программе много потоков и она не начинается с entry point.

76C4507D CALL to DefWindowProcW from USER32.76C4C4E4
hWnd = 000A02EE ('RegisterWindow',class='HwndWrapper[AnyTrans for iOS....')
Message = WM_MOUSEACTIVATE
hParent = 000A02EE ('RegisterWindow',class='HwndWrapper[AnyTrans for iOS....')
Hittest = HTCLIENT MouseMsg = WM_LBUTTONDOWN




Ранг: 71.5 (постоянный), 95thx
Активность: 0.10.38
Статус: Участник

Создано: 24 января 2018 18:40
· Личное сообщение · #2

Ну в вариант с SendMessage и флагом WM_GETTEXT?



Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 24 января 2018 18:45
· Личное сообщение · #3

Пробовал SendMessage, такого флага не выдаёт, выдаёт только WM NOTIFY, WM SETCONTEXT




Ранг: 71.5 (постоянный), 95thx
Активность: 0.10.38
Статус: Участник

Создано: 24 января 2018 19:14 · Поправил: BlackCode
· Личное сообщение · #4

Есть еще универсальный вариант, который прокатывает в 99% случаев, это бряк на DestroyWindow.
К примеру, вылезает окно о неправильно введенном ключе и перед закрытием этого окна ставите бряк на DestroyWindow.
Эта функция вызывается постоянно при уничтожении окна.
Единственный вариант, если это не самописная имплементация.
Еще можно поискать в памяти где лежит вводимый ключ, поискать как обычную строку или в варианте double char аля юникод и поставить брейкпоинт на доступ к памяти по данному адресу.

P.S. И вообще, раскройте тайну, что за ПО вы ковыряете? Это может ускорить решение вышей проблемы)
Плюс получите опыт)

| Сообщение посчитали полезным: mks11

Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 24 января 2018 19:49
· Личное сообщение · #5

Там не появляется добовачное окно при неправильном введённом коде, появляется строчка в том же окне. Я когда буду у компа скину точную версию проги.)



Ранг: 9.0 (гость), 6thx
Активность: 0.030.02
Статус: Участник

Создано: 24 января 2018 19:53
· Личное сообщение · #6

А ничо, шо софт на дотнете писан ?




Ранг: 71.5 (постоянный), 95thx
Активность: 0.10.38
Статус: Участник

Создано: 24 января 2018 21:17 · Поправил: BlackCode
· Личное сообщение · #7

dsrabot1
И то верно) На нем и написан)
mks11
Короче, в руки декомпиллер, к примеру dnSpy... и копать)




Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 25 января 2018 01:14
· Личное сообщение · #8

Текст рисуется через TextOut/ExtTextOut(). Оконные механизмы могут быть какими угодно, поэтому нужно начать с конца - найти событие отрисовки текста и далее найти источники данных(текст).

-----
vx





Ранг: 77.2 (постоянный), 74thx
Активность: 0.190.15
Статус: Участник

Создано: 25 января 2018 03:11
· Личное сообщение · #9

difexacaw
Через пост читаем?
dsrabot1 пишет:
А ничо, шо софт на дотнете писан ?




Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 25 января 2018 10:53 · Поправил: cppasm
· Личное сообщение · #10

А ничё что в теме нет ни названия проги ни бинарника?
По классу окна гадать?




Ранг: 71.5 (постоянный), 95thx
Активность: 0.10.38
Статус: Участник

Создано: 25 января 2018 11:01
· Личное сообщение · #11

cppasm

Название программы AnyTrans
--> Download<--




Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 25 января 2018 16:16
· Личное сообщение · #12

sefkrd

Какая разница на чём он написан ?

-----
vx




Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 25 января 2018 17:55
· Личное сообщение · #13

BlackCode скачал dnSpy, теперь дело прояснилось, нашел участок, где проверяется валидность ключа, так что спасибо за помощь =)




Ранг: 77.2 (постоянный), 74thx
Активность: 0.190.15
Статус: Участник

Создано: 25 января 2018 18:07
· Личное сообщение · #14

mks11
Попробуй разобрать алгоритм проверки..
Там все на виду.. Кейген забабахаешь..



Ранг: -0.7 (гость), 170thx
Активность: 0.540
Статус: Участник

Создано: 25 января 2018 22:21
· Личное сообщение · #15

sefkrd пишет: difexacaw
Через пост читаем?
dsrabot1 пишет:
А ничо, шо софт на дотнете писан ?


Так говорите будто индей понимает разницу.



Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 26 января 2018 03:40 · Поправил: dosprog
· Личное сообщение · #16

difexacaw пишет:
Какая разница на чём он написан ?

)) Стыць-пыздыць.

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





Ранг: 315.1 (мудрец), 631thx
Активность: 0.30.33
Статус: Модератор
CrackLab

Создано: 26 января 2018 04:17
· Личное сообщение · #17

mks11 пишет:
нашел участок, где проверяется валидность ключа, так что спасибо за помощь =)

стало быть, можно закрыть.


 eXeL@B —› Вопросы новичков —› DefWindowProcW, как найти строчку, которую я ввел в регистрационном окне?
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати