Сейчас на форуме: asfa, Rio (+6 невидимых)

 eXeL@B —› Вопросы новичков —› С какой стороны подступиться
Посл.ответ Сообщение

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

Создано: 24 октября 2013 17:04 · Поправил: cardiroot
· Личное сообщение · #1

Программа ничем не упакована.
Имеет триальный период. По истечению триального периода - при запуске открывается окошко, информирующее о том что триал-период закончен.
Открываю софтину в OllyDbg. Требуется найти ShowMessage с этим сообщением. Но проблема в том, что заголовок ShowMessage-а пустой, в самом сообщении все на русском. А в ольке не видны русские символы.
Т.е. даже не могу найти место куда брейкпоинт всунуть. Натолкните, пожалуйста,на мысль.



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

Создано: 24 октября 2013 17:11 · Поправил: deniskore
· Личное сообщение · #2

cardiroot пишет:
Открываю софтину в OllyDbg. Требуется найти ShowMessage с этим сообщением. Но проблема в том, что заголовок ShowMessage-а пустой, в самом сообщении все на русском. А в ольке не видны русские символы.

Ищите хекс код сообщения (можете предварительно его набрать в файлике) и ставьте на него бп.
Или ставьте бп на саму апи, и смотрите там буфер, и так же ставите бп.



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 24 октября 2013 18:47
· Личное сообщение · #3

cardiroot пишет:
Программа ничем не упакована.

А у программы имя есть? Или хотя бы ссылка?



Ранг: 8.3 (гость), 1thx
Активность: 0.020
Статус: Участник

Создано: 25 октября 2013 00:00
· Личное сообщение · #4

cardiroot Да имя проги было бы узнать не плохо.
Ну или попробуй в Olly трассировать. До вывода окна.
Ну и тоже было бы не плохо в IDA посмотреть.



Ранг: 22.4 (новичок), 23thx
Активность: 0.020
Статус: Участник

Создано: 25 октября 2013 01:52 · Поправил: Dazz
· Личное сообщение · #5

если сообщения на русском встроены в экзешник, то я в таком случае делал так: в hex-редакторе менял русские буквы на латинские в нужном сообщении и искал это измененное сообщение в Olly.

p.s. мысль от дилетанта=)



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 25 октября 2013 02:09
· Личное сообщение · #6

cardiroot
Ставь бряк на ShowWindow затем выходи по F8 потихоньку до начала создания окна. Обычно 2-3 выхода и ты на месте.




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 25 октября 2013 10:18
· Личное сообщение · #7

cardiroot пишет:
А в ольке не видны русские символы.

Видны, надо шрифт выставить с поддержкой unicode. Т.е. пкм -> Appearance -> Font (all) -> Lucida (UNICODE)

-----
Stuck to the plan, always think that we would stand up, never ran.




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

Создано: 25 октября 2013 10:37 · Поправил: deniskore
· Личное сообщение · #8

ARCHANGEL пишет:
Видны, надо шрифт выставить с поддержкой unicode.

Только что проверил, с 2 олькой (win7) на АNSI и UNICODE апи, русский текст отображается как "...", а вот 1 олька нормально читает только UNICODE апи с русским текстом.



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

Создано: 25 октября 2013 11:29 · Поправил: cardiroot
· Личное сообщение · #9

ARCHANGEL пишет:
Видны, надо шрифт выставить с поддержкой unicode. Т.е. пкм -> Appearance -> Font (all) -> Lucida (UNICODE)

Пробовал. Видел данный совет на этом форуме. Не помогло.
Djeck пишет:
Ставь бряк на ShowWindow затем выходи по F8 потихоньку до начала создания окна. Обычно 2-3 выхода и ты на месте.

На главное окно? Там перед сообщением о триалке открывается окно ввода имени и пароля (не регистрационное, а для входа в БД)
deniskore пишет:
Ищите хекс код сообщения (можете предварительно его набрать в файлике) и ставьте на него бп.
Или ставьте бп на саму апи, и смотрите там буфер, и так же ставите бп.

Написал... открыл в текстовом файле - скопировал HEX-значения. В проге они найдены не были. Или искал не там, или автор сделал там вместо текста картинку с текстом.
To all:
Речь о программе для Сервисного центра. Но там Firebird ставить надо чтобы мучать ее. Думаю, не у многих желание появится)
Нашел по ключевому слову Trial...но не сильно понятные инструкции. Как понял - пропатчил. Программа запускается, нормально функционирует, но при запуске 3-4 экзепшена выскакивает)) но дальше запускается гуд и работает. Или лишнее занопил, или хз) Пока что продолжаю разбираться дальше)



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 25 октября 2013 13:11
· Личное сообщение · #10

cardiroot
Причем здесь главное окно,ты его хочешь убрать или окно о триале?
Ставишь bp ShowWindow
Нажимаешь F9
В стеке смотришь, что за окно будет показано (в классе окна обычно пишется TTrial или что-то подобное)
Когда дойдешь до своего окна нажимаешь Alt+F9 и по F8 начинаешь выходить из вложенных функций




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

Создано: 25 октября 2013 16:08
· Личное сообщение · #11


ARCHANGEL пишет:
Видны, надо шрифт выставить с поддержкой unicode. Т.е. пкм -> Appearance -> Font (all) -> Lucida (UNICODE)
cardiroot пишет:
Пробовал. Видел данный совет на этом форуме. Не помогло.

В окне (Dump или Stack) ольки нажми на ASCII на хедере, чтобы появился Unicode

-----
IZ.RU




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

Создано: 25 октября 2013 17:33
· Личное сообщение · #12

Djeck пишет:
Причем здесь главное окно,ты его хочешь убрать или окно о триале?
Ставишь bp ShowWindow

В Text strings referenced :CODE не нашел ShowWindow.....
Или не там ищу?
Или вообще следует это делать с плагином CommandBar ?
DenCoder пишет:
В окне (Dump или Stack) ольки нажми на ASCII на хедере, чтобы появился Unicode

Сделал, все равно - крякозяблики...



Ранг: 9.8 (гость), 20thx
Активность: 0.010
Статус: Участник
tPORt

Создано: 25 октября 2013 18:40 · Поправил: JMPer
· Личное сообщение · #13

Шо за театрально-цирковой подход (это и к отвечавшим относится)
Еще обьясните как отладчик запусать.

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

cardiroot
Конкретно по твоей проге - пляши от даты триального периода, она в проге зашита жестко, преобразуй её в тот вид в котором она хранится в программе.
Потом бряки на GetLocalTime ну и ищи классические проверки даты (сравнение чисел с плав.точкой (double)) вида
Code:
  1.          FCOMP ...
  2.          FSTSW AX
  3.          SAHF
  4.          JBE ...

в твоей программе самое простое - "перезашить дату конца триала"
Но как делать - выбирай сам.




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

Создано: 25 октября 2013 22:16
· Личное сообщение · #14

cardiroot пишет:
В Text strings referenced :CODE не нашел ShowWindow.....Или не там ищу?

не там. Это импортируемая функция. ПКМ -> Search for -> Names (Ctrl + N)

JMPer пишет:
Потом бряки на GetLocalTime ну и ищи классические проверки даты (сравнение чисел с плав.точкой (double)) вида

GetLocalTime сама по себе не работает с плавающей с точкой. В Delphi есть функция Now, в которой используется GetLocalTime и суть её преобразовать дни в целое число, а время в дробную часть. Но откуда такая уверенность, что программа писана на дельфях? Телепатия? Firebird можно и в C++ Builder использовать, а программист мог совсем по-другому подойти - GetLocalTime, NtQuerySystemTime, GetSystemTimeAsFileTime, SystemTimeToFileTime

-----
IZ.RU




Ранг: 9.8 (гость), 20thx
Активность: 0.010
Статус: Участник
tPORt

Создано: 25 октября 2013 22:43
· Личное сообщение · #15

DenCoder пишет:
GetLocalTime сама по себе не работает с плавающей с точкой.

Я это знаю, может немножко сумбурно высказался. Просто в дельфе type TDateTime = type Double;
Ну и собственно, как ты и сказал
Code:
  1. function Now: TDateTime;
  2. var
  3.   SystemTime: TSystemTime;
  4. begin
  5.   GetLocalTime(SystemTime);
  6.   with SystemTime do
  7.     Result := EncodeDate(wYear, wMonth, wDay) +
  8.       EncodeTime(wHour, wMinute, wSecond, wMilliseconds);
  9. end;


DenCoder пишет:
Но откуда такая уверенность, что программа писана на дельфях? Телепатия?

Да, телепатия знаю что это за программа.



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 25 октября 2013 23:44
· Личное сообщение · #16

cardiroot пишет:
Или вообще следует это делать с плагином CommandBar ?

Да. bp ShowWindow -> Enter -> F9
Или можешь Ctrl+G -> вводишь ShowWindow -> Enter ->F2




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

Создано: 26 октября 2013 15:12
· Личное сообщение · #17

Может не в тему, но таки да, что-то кириллица в окне дизасма показывается "..." (шрифты менял). В окне дампа все нормально.


 eXeL@B —› Вопросы новичков —› С какой стороны подступиться
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати