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

 eXeL@B —› Вопросы новичков —› Исследование программы Заказы и заявки 1.8
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 августа 2012 17:31
· Личное сообщение · #1

Приветствую.

Решил поизучать эту программку. Хомяк: softstudio.ru/orders/
Стоит недорого, просто решил с чего-то начать. Запакована она UPX'ом, что не составило труда её распаковать. Как пишут на сайте программы, то в демо-режиме у неё есть какие-то ограничения. Из найденных мною, это были сообщения при старте программы, о том, что она незарегистрирована:

И в меню Справочники -> Курсы валют:

Так же при старте программа выдает окно для ввода регистрационного номера (но она не показывает его, если в поля были введены любые данные, даже неправильные).
Это самое окно я убрал, чтобы оно не показывалось, даже, если данных в полях нет.

А вопрос мой, как новичка, заключается в следующем: каким путём идти, чтобы в Olly отыскать места вызовов, как я понимаю getDlgItem, ведь это они изображены на скриншотах. Это нужно для того, чтобы убить окно с предупреждением при старте программы, ну и начать разбираться со вторым окном, которое выпадает при попытке открыть Справочники -> Курсы валют.

Заранее спасибо.




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 08 августа 2012 17:51
· Личное сообщение · #2

ge0rgich ну а как ты убрал Это самое окно я убрал, чтобы оно не показывалось, даже, если данных в полях нет.
также убирай и остальные окна?

-----
[nice coder and reverser]




Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 августа 2012 18:01
· Личное сообщение · #3

Hellspawn
Дело вот в чем. То окно, в котором вводятся регистрационные данные, оно программное. Т.е. программист нарисовал его, так сказать =)
Выследил я его каким образом: запустил Олю, Seacrh for -> All referenced text strings. Получил такой нехилый список строчек. Привлекла меня сразу строка с надписью ASCII "Registration". Сделал Follow in disassembler и попал по адресу. Далее прошелся по шагам и заменил то, что требовалось, чтобы сработал JE.

А вот как тут найти нужный мне GetDlgItem с текстом на кириллице - я не в курсе Да и ещё определить, кто и когда его вызывает. Вот в чём проблемка-то.




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 08 августа 2012 18:04
· Личное сообщение · #4

ge0rgich ясно, в OllyDbg можно искать кириллицу: alt+m (карта памяти), выделяешь свой ехе, потом правой кнопкой search и в поле ascii прямо по-русски пишешь, попробуй.

-----
[nice coder and reverser]


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

Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 августа 2012 18:15
· Личное сообщение · #5

Hellspawn
Когда я вбиваю в поле Search кириллицей, то буквы не отображаются Вбил туда адрес почтового ящика, который фигурирует в сообщении, и Оля нашла что-то. Затем перешёл в дампе по этому адресу, который она мне указала. Оно или не оно, пока сказать не могу. Как действовать дальше?



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 08 августа 2012 18:18
· Личное сообщение · #6

вообще это очень похоже на реальную демку
0040EDB4 - процедура проверки ключа
после проверки прога в любом случае выходит на показ сообщения о демке.
ищи команды типа MOV EDX,DWORD PTR DS:[7B3208] это _msgAlert

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

Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 августа 2012 18:21
· Личное сообщение · #7

Vovan666
Не совсем понял, что вы имеете ввиду под словами "реальная демка"? Функционал-то полной программы в ней есть.
Сейчас поищу, что вы предлагаете. Спасибо.



Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 августа 2012 23:32
· Личное сообщение · #8

При загрузке убрал окно с предупреждением. Теперь наступает самое весёлое - убирать окна в курсе валют и при этом заставить прогу показывать рабочее окно с курсами этих самых валют. Пока у меня ничего не вышло, я лишь только положил насмерть прогу с ошибками
В общем, предупреждение, которое вылезает вызывается тут:
Code:
  1. 0040517D   CALL Orders.0040EDB4  ; Тут собственно происходит вызов и проверка регистрации, как и писал Vovan666
  2. 00405182   MOV EDX,DWORD PTR DS:[7B3208]            ; Orders._msgAlert

Помогите, пожалуйста, с процедурой проверки ключа. Благодарствую.




Ранг: 253.5 (наставник), 684thx
Активность: 0.260.25
Статус: Участник
radical

Создано: 08 августа 2012 23:57 · Поправил: DimitarSerg
· Личное сообщение · #9

ge0rgich
Что значит помогите ? Трассируй, смотри, анализируй...
Не думаю, что найдутся добродеятели, которые закейгенят за тебя (уже был опыт, когда закейгенили за просто так, типа ради интереса человека в реверсе, а оказалось не совсем так).

Если интересует именно сторона реверса - разбирайся с функой сам (а она там не маленькая, и спец, который ценит свое время меньше чем за 100$ и пальцем не пошевелит), спрашивай конкретно - тогда помогут, а если нужно лекарство (кейген) - то либо в поиск специалистов, либо купи !

-----
ds


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

Ранг: 11.2 (новичок), 9thx
Активность: 0.030
Статус: Участник

Создано: 09 августа 2012 00:24 · Поправил: Flasher-11
· Личное сообщение · #10

Попробуй использовать связку Оля + SourceRescuer, найдешь окно регистрации и адрес кнопки, а там и до кейгена не далеко ну или патча, главное упорство и тщательный анализ
Попробуй поставить бряк на реестр, т.к ключ он там хранит


DimitarSerg пишет:
а патч - не интересно

Кому как, мне лично больше патч нравится, но это дело вкуса.

Vovan666 пишет:
вообще это очень похоже на реальную демку

Пожалуй соглашусь, т.к форма таковая вообще отсутствует




Ранг: 253.5 (наставник), 684thx
Активность: 0.260.25
Статус: Участник
radical

Создано: 09 августа 2012 00:59 · Поправил: DimitarSerg
· Личное сообщение · #11

Flasher-11 пишет:
найдешь окно регистрации

Code:
  1. procedure TdlgRegistration.OKBtnClick(Sender: TObject);
  2. begin
  3. // Address $428414
  4. end;

и че дальше ?
Ниже пробежавшись видно считывание серийника по частям:
Code:
  1. CALL <Orders.TControl::GetText(void)>

И что серийник лежит в реестре тут:
Code:
  1. HKEY_CURRENT_USER\Software\ATStudio\Orders
  2. Параметр Registration

Так что толку с этого всего 0 и до кейгена все же далековато, если он хочет разбираться в проверке ключа - пусть разбирает(адрес функи есть, осталось подключить мозг), а патч - не интересно

ge0rgich
Для упрощения создай мап-файл Идой или DeDe и подцепи его плагом MapImp

-----
ds


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


Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 09 августа 2012 04:29
· Личное сообщение · #12

Code:
  1. /*404B75*/  JE SHORT 00404B9F===============>jmp
  2. /*40CAF4*/  PUSH EBP  //FormShow=============>ret
  3. /*405164*/  PUSH EBP  //actRateJournalExecute====>ret

Чистой воды демка Vovan666 писал выше регистрация навешана для понтов

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 19.9 (новичок), 31thx
Активность: 0.030.01
Статус: Участник

Создано: 09 августа 2012 10:47
· Личное сообщение · #13

ПРи попытке удалить заказ тоже вылазит наг




Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 августа 2012 10:48 · Поправил: ge0rgich
· Личное сообщение · #14

Всем спасибо. Буду для начала пробовать сделать патч. Как появятся вопросы, то отпишу сюда.

ClockMan, как это для понтов регистрация? У них на сайте покупается ключ, который вбивается в прогу. Или вы хотите сказать, что они обманывают? Не совсем понятно.

evggrig, угу. Вчера нашёл этот наг.



Ранг: 19.9 (новичок), 31thx
Активность: 0.030.01
Статус: Участник

Создано: 09 августа 2012 10:55
· Личное сообщение · #15

ge0rgich
http://rghost.ru/39664939 там пропатченый exe.
Скорее всего при покупке высылают полную версию с ключем.



Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 августа 2012 11:03 · Поправил: ge0rgich
· Личное сообщение · #16

evggrig
блин. Качал я этот пропатченный exe-шник. Халтура. Вы меня сердечно простите, но, вроде как, я в школе учился и читать умею. Это я про сайт программы:
softstudio.ru/shop_item.php?idd=265498&codepage=0&currency=WMR
Товар: текстовая информация (371 байт)
Описание товара: Регистрационный ключ.


Либо лыжи не едут, либо я - ... Такие дела, да.




Ранг: 104.9 (ветеран), 46thx
Активность: 0.040.02
Статус: Участник

Создано: 09 августа 2012 11:30
· Личное сообщение · #17

ge0rgich пишет:
Товар: текстовая информация (371 байт)

что мешает в "текстовую информацию" включить еще и приватную ссылку на закачку полной версии программы?



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

Создано: 09 августа 2012 11:36 · Поправил: negoday
· Личное сообщение · #18

Видел подобную защиту в программе Товар-Деньги-Товар, там демонстрационная версия отличается от полной тем, что туда нельзя ввести регистрационные данные - это первое, второе - в демо версии на каждую процедуру навешан наг, срабатывающий на разницу в документах 3 месяца. Таким образом ломание демо версии крайне трудоёмкое и малоперспективное занятие. Тут, видимо, та же ситуация. Нужна полная версия которую и нужно ломать. Судя по пиару сего сабжа на руборде - автор его воодушивился успехами фирмы провизион и решил идти тем же путём




Ранг: 275.9 (наставник), 340thx
Активность: 0.22=0.22
Статус: Участник
RBC

Создано: 09 августа 2012 11:38 · Поправил: Kindly
· Личное сообщение · #19

ge0rgich пишет:
У них на сайте покупается ключ, который вбивается в прогу.

вот когда купишь, тогда и пришлют тебе с ключом FULL дистрибутив.

опоздал

-----
Array[Login..Logout] of Life




Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 августа 2012 11:38
· Личное сообщение · #20

ManHunter
Моему мозгу мешает описание: Регистрационный ключ.

Ладно, как бы то ни было, я все равно собирался покупать прогу, но и исследовать её я не брошу. Вечером куплю эту "текстовую информацию (371 байт)" и отпишу, что там было

А пока продолжаю вылавливать окна.



Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 августа 2012 18:40
· Личное сообщение · #21

Итак, купил я серийник. Хочу отметить, что прислали именно серийник, а не как предполагали тут ссылку на полную версию и т.д. Серийник состоит из 5 блоков. Первый блок содержит только буквы, остальные блоки - буквы и цифры. После ввода серийника ограничения, как и заявлено на сайте, снимаются.
Хотелось бы уточнить строки у ClockMan:
Code:
  1. /*404B75*/  JE SHORT 00404B9F===============>jmp
  2. /*40CAF4*/  PUSH EBP  //FormShow=============>ret
  3. /*405164*/  PUSH EBP  //actRateJournalExecute====>ret

С чего вы решили, что это именно демка?

И каким путём идти сейчас, имея серийник - писать патч, убивающий наги и открывающий функционал, или же изучать как проверяется серийник?



Ранг: 19.9 (новичок), 31thx
Активность: 0.030.01
Статус: Участник

Создано: 09 августа 2012 18:54
· Личное сообщение · #22

ge0rgich
Имея серийник проще сделать второе. Если делать первое то достаточно отследить последний оставшийся наг на удалении заказов. Два из них убираются если патчить так как написал ClockMan. Первый джамп похоже отвечает за вызов окна ввода серийника при запуске.



Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 августа 2012 18:59
· Личное сообщение · #23

evggrig
На удаление, на обновление курса валют еще наг висит. С ним я вообще ничего не понял. Пытался найти это окно в памяти (которое полсе нага будет появляться), но его нет



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

Создано: 09 августа 2012 19:02 · Поправил: Vnv
· Личное сообщение · #24

ge0rgich
Серийник проверяется здесь: 0040EDB4. Происходит замена 2D (-) на Z, перетасовка символов, замена из своей таблицы и сравнение: сумм некоторых символов, делений других символов и т.д. Разбирать весь механизм - влом.

P.S. Посмотри ЛС.



Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 августа 2012 19:06
· Личное сообщение · #25

Vnv
да, спасибо. Выше уже говорили про этот адрес. Сейчас буду смотреть, как прога себя ведёт с валидным серийником.



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

Создано: 09 августа 2012 22:08 · Поправил: Vnv
· Личное сообщение · #26

Vovan666 пишет:
0040EDB4 - процедура проверки ключа
после проверки прога в любом случае выходит на показ сообщения о демке.

При вводе "правильно" серийника вызывается Exception и процедура проверки серийника не доходит до своего логического завершения!!!



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

Создано: 09 августа 2012 22:24 · Поправил: Vnv
· Личное сообщение · #27

Yes!!!

ge0rgich
Лови пролеченный: http://rghost.ru/private/39681978/2801d647694de53fe188c65306880459
Пароль на всё - твой ник, захочешь - удалишь ссыль.



Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 августа 2012 22:36
· Личное сообщение · #28

Vnv
Хм. Что-то он не пролеченный какой-то. Все наги на месте.



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

Создано: 09 августа 2012 22:41
· Личное сообщение · #29

ge0rgich пишет:
Что-то он не пролеченный какой-то.

А по подробней? У меня после ввода серийника "все единицы" - фунциклирует нормально.



Ранг: 5.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 августа 2012 22:44
· Личное сообщение · #30

Vnv, а. Ну дык надо было предупредить, что какой-нибудь серийник вбить надо )
Собственно, хотелось бы пояснений, как и что вы сделали?


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


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