Сейчас на форуме: Rio (+5 невидимых) |
![]() |
eXeL@B —› Вопросы новичков —› Нужен хороший совет |
Посл.ответ | Сообщение |
|
Создано: 18 марта 2008 21:58 · Личное сообщение · #1 Не знаю, насколько продвинутые крэкеры могут ответить на мой вопрос через этот сайт, но все же попробую. Вот допустим я ввожу серийник и каждый символ записывается в память. Я отлавливаю этот момент чере сообщение WINDOWS, вижу что мои буквы в памяти. Затем открываю окно программы, ввожу второй символ, и он записывается в памяти на место первого. Естественно, что потом этот самый символ попадает в какой-нибудь регистр, я даже знаю в какой, но следить за этим пошагово можно целый месяц. Вот я и не знаю, что делать ![]() ![]() |
|
Создано: 18 марта 2008 22:05 · Личное сообщение · #2 |
|
Создано: 18 марта 2008 22:13 · Личное сообщение · #3 |
|
Создано: 18 марта 2008 22:23 · Личное сообщение · #4 |
|
Создано: 18 марта 2008 22:29 · Личное сообщение · #5 |
|
Создано: 19 марта 2008 03:10 · Личное сообщение · #6 |
|
Создано: 19 марта 2008 04:09 · Поправил: jondo · Личное сообщение · #7 Вообще это игра. Весит 5 гигабайт. Суть в том, что при открытии можно либо играть в демо-режиме, либо зарегистрироваться. На данном примере в дампе по адресу 0006E274 попала введенная мною первая буква неправильного серийного номре. В серийнике всего 10 символов с цифрами и буквами. Я поставил breakpoint на сообщение 101. Вобще отловить само сообщение о регистрации стандартными методами не получалось. Но вопрос в другом. Если я введу следующий символ серийника, то он запишется вместо этого, а предыдущий пойдет в листинг. А вообщем, если кто-то с этим сталкивался, то знает, что в таких случаях идет очень большой цикл, из которого скорее всего есть выход туда куда надо когда произойдет решающее сравнение всех 10 символов. Естественно, товарищи, в дампе через поиск нету моего введенного серийника по порядку. И поверьте, друзья, это единственная зацепка, которая более-менее реальна. А защита действительно мощная. Для самых профессиональных крэкеров. Высший уровень на сегодняшний день. Но мне очень интересно как это все устроено. ![]() ![]() |
|
Создано: 19 марта 2008 04:51 · Личное сообщение · #8 |
|
Создано: 19 марта 2008 09:02 · Личное сообщение · #9 Ну ты загнул. Какая защита то там конкретно? Из того, что ты сказал я понял то, что тебе нужно проследить за значением, которая прога получает от Винды. Попробуй аппаратные бряки (hardware breakpoint): смотришь куда в память записалось значение. ставишь на эту область бряк на чтение (или запись). Он сработает на инструкции, следующей за той где производилось чтение (запись) этой самой области памяти. Как правило значение будет извлечено в регистр, с ним будут произведены манипуляции и оно вновь будет записано в память. Ну и так до посинения. А вообще выложи экзешник . ) ![]() |
|
Создано: 19 марта 2008 10:01 · Личное сообщение · #10 Что-то у меня такое чувство, что в этом самом ECX лежал вообще не фига не серийник, а указатель на него, а автор темы не шарит, как строчки хранятся в памяти, отсюда сделаю вывод, что лучше бы в запросы на взлом написать. Ногами не пинать, могу и ошибаться. А вообще бряки железные надо тыкать на доступ к буквам серийника и смотреть, где они собираются в 1 кучу, а там уже на серийник бряк тыкать. ![]() |
|
Создано: 19 марта 2008 11:37 · Личное сообщение · #11 Archer пишет: отсюда сделаю вывод, что лучше бы в запросы на взлом написать Горячишься Archer, качать пять гигов или специально покупать никто не будет ![]() jondo Ты все равно дал мало инфы 1. На чем написана прога (exe файл)? 2. На какие API функции ставишь бряки? 3. Если ввел неправильный серийник, как на это реагирует программа? Судя по скрину, ты ковыряешь не в том месте ![]() |
|
Создано: 19 марта 2008 18:08 · Личное сообщение · #12 Ладно, скажу еще подробнее. А вообще мне очень нужны ваши советы. Может быть никто из нас и никогда не взломал бы этот продукт, но всеже.... Может быть я услышу от вас что-нибудь чего не знаю. Как я понял для этого надо перечислить все-то что я знаю. 1. Срабатывают BP на ввод символов. 2. На нажатие кнопки OK после ввода. Все начинается с главного модуля в ENTRY POINT. С этим проблем нет. По ходу дела после долгого исследования этой вещи, я насчитал 5 модулей. Это к вопросу о том, чтобы сделать EXECUTE TO RETURN. Это не срабатывает. В EXE так и не попадаешь при трассировке вручную. Но зато когда после первого бряка ставишь BP MEMORY ON ACCESS на область памяти EXE файла то попадаешь всеже в него. Но там все очень сложно, т.к. программа очень быстро выводит из него и все повторяется. (Этот момент я показал на скриншоте). К вопросу о кучах букв, которые я ввел. Как только я не пробовал их искать, что только не вводил. Никуда они не попадают и в кучу нигде не собираются. А собираются они как раз в том отсеке памяти куда я их ввожу, но быстро размножаются как раз по той области, где подгружаются остальные модули и через них проходит первоначальная загрузка в которой есть агоритм, который в свою очередь считывает эти данные и проверяет их. И просто так алгоритм не будет копировать именно тот адрес, куда вводятся буквы сразу в несколько близлижаших адресов именно вначале запуска (это я сам проверял). Никакие процессорные точки останова тут не помогут. Стоит попасть адресу в стек и все. Да и притом я же говорю, программа начинает останавливаться постоянно на этих процессорных точках по ходу выполнения. А ничего интересного то не происходит. Поэтому должен быть какой-то способ.............. На скриншоте ниже область EXE куда попадаешь ( не напрямую, повторяю, а через 4-5 модулей), если ставишь бряк на доступ к памяти EXE файла после запуска. Или после бряков на всякие сообщения, кнопки и т д......................Подскажите, кто на этом сайте хороший крэкер. Я отправлю DVD по почте. Потом разберем. Серьезно, а то ну очень меня заинтересовал это взлом. Даже если не взломаем, но хоть я сам успокоюсь. ![]() ![]() |
|
Создано: 19 марта 2008 18:14 · Личное сообщение · #13 И также все привсе функции которые используются exe-файлом. Может быть натолкнете на мысль. Ту которую я выделил в рамку красным цветом не помогает. ![]() ![]() |
|
Создано: 19 марта 2008 20:28 · Личное сообщение · #14 *WALL* Какая там супер-мега защита? Что показывает PEiD? //но быстро размножаются как раз по той области Ну вот и придется смотреть что делается во всех этих областях. А твое желание получить результат ничего не ковыряя не пройдет. // Поэтому должен быть какой-то способ Например отправить кому то диск )) ![]() |
![]() |
eXeL@B —› Вопросы новичков —› Нужен хороший совет |