![]() |
Взлом Defrag Professional Version 10
Взлом Defrag Professional Version 10
[Инструменты] OllyDbg – отладчик Restorator – редактор ресурсов Hiew – хекс редактор. [Интро] Итак, попалась мне эта программа. Стандартные средства Windows по проведению дефрагментации меня в принципе устраивали, но вроде как попробовать что-то альтернативное хотелось (зачем?). Запустила прогу, а она говорит, что у меня 30 дней триала. И через эти 30 дней меня лишат всех благ данного продукта. Такой расклад меня категорически не устраивал…. Что ж… будем исправлять. [Crack it!] Итак, что мы видим. Программа просит регистрации. Причем просит следующим образом. У нас есть Registration Wizard. Поясняю что это значит. То есть прохождение каждого шага регистрации сопровождается нажатием кнопки “Next”, ну и при успешном завершении “Finish”. По моим наблюдениям в подобного рода программах процедура проверки введенных данных находится в непосредственной близости от вызова функции GetParent (хотя не факт, но это было возможной зацепкой)… Загружаю программу в Olly и вижу такой старт-ап Код:
004776BA o> E8 E59F0000 CALL oodcnt.004816A4Код:
004776BF ^ E9 17FEFFFF JMP oodcnt.004774DBКод:
004774DB 6A 60 PUSH 60По поводу защиты у меня была идея с GetParent, и я стала ее опробовать. Однако, убив час-полтора, я поняла, что процедура, отвечающая за вывод злого диалога и регистрацию спрятана совсем не в главном модуле…. В директории с программой лежало много длл. Мое внимание привлекла dll oorwiz.dll (с комментарием O&O Registration Wizard) … Однако, просмотрев ресурсы в Restorator, я ничего интересного не нашла… Тогда будем проверять все библиотеки подряд….. Но это не принесло желаемого результата… В одной библиотеке был намек на диалог регистрации, но…. Ссылок на него я не нашла в исполняемом модуле и oorwiz. Это плохо. Тогда я стала присматриваться к защите. Когда триал еще не окончен есть три варианта действий. *Enter registration code – ввести код * Continue with unregistered version - юзать триал * Buy now! – купить (не рассматривается) Можно выбирать один из пунктов и нажать “Next”. Есть вариант нажать “Cancel”, но тогда вне зависимости от выбранного пункта высвечивается сообщение “Are you sure you want to end the registration process?”. Причем похоже на MessageBox… Если нажмем “Yes” программа завершится. Так. У нас опять есть зацепка… MessageBox… В Olly Dbg ставим точку останова на данную функцию. Сначала я поставила бряк на ASCII версию функи, но когда это не сработало, поставила на Unicode-вариант… И не ошиблась. Но адрес возврата из функции не соответствовал нашему исполняемому модулю, а соответствовал некой библиотеке. Этой библиотекой оказалась уже однажды попавшая под подозрение oorwiz… Тогда теперь будем снова проверять GetParent). Но уже в либе. Итак, ставим точки останова… Выбираем пункт “Enter registration code”… жмем “Next”.. брякаемся на GetParent в первый раз. Но это не тот вызов. Нам нужен вызов, который будет после ввода невалидного ключа. Пропускаем…. Вводим код, имя и название компании (или ничего не вводим)))… “Next” и … Попадаем сюда Код:
0269578B 50 PUSH EAXКод:
026957B5 E8 E6E8FFFF CALL oorwiz.026940A0Теперь вывод: меняем тут (проверка возвращенного значения). Код:
026957BA 85C0 TEST EAX,EAXCнова гружу файл в Olly…. На этот раз я вижу ту же библиотеку, но опять по другому адресу. Поэтому все пришлось выполнить по новой( Код:
020857BA . 85C0 TEST EAX,EAX[The end] |
Жду статей по закейгениваю...мы все уже поняли,что патчить ты умеешь =)
|
GoreMaster, ok)))))). Хотите закейгенивание, будет закейгенивание.
|
зачем править в hiew,если правится легко и без напрягов в олли? то, что ты правишь, не исправляет лоадер при смене базы загрузки, а сталобыть и олли не будет ругацо. hex-редакторы использовали во времена windasm и softice ;)
|
И правда так удобней....... Чет я туплю(((((
|
лучше расписывай алгоритмы ;) проверки, как находишь проверки, етц
зы:вот када допешу вм, будем что расписывать ;) |
Хорошо.. Хотя я канешн старалась максимально подробно расписать..
ЗЫ Спс за конструктивную критику) |
хех, что то все цели у тя слишком лёгкие, не айс это =))
возьми чтонить посложнее =) з.ы. советую AutoDebug любую версию... я в своё время несколько дней просидел над этой прогой... |
0x0c0de
))) У проги O&O Defrag 8.5 Build 1788 Professional Защита StarForce V3.X DLL -> StarForce Copy Protection System Там тоже Wizard: рег. код, триал или купить.. |
Цитата:
если не ошибаюсь ядерная штука =) лучше бы посоветовал фемиду снять =) |
EB_FE, пост не в тему. Во-первых. Рассматривается НЕ 8-я версия, а 10. Во вторых. Основная библиотека, которая и подвергнецц0 патчу, в 10 версии ничем не запакована (а нет, если бы она старфорсом была пакована, я бы это умолчала, тихо бы сняла старфорс и продолжила взлом=))))), то же относится к основному исполняемому модулю. Модулей (по крайней мере в 10 версии) в каталоге полно.. После твоего поста они подверглись тщательному Multi-scan -y и скану по отдельности следующими детекторами:
PEID DiE ProtectionID Все они удивленно на меня посмотрели ("ты ч0 параноик?"))))) ну и сказали, что ниче пакованого нет. Тем более старфорса. Ну я думаю. Мож сигнатуры какие глючные? энтропию посчитала. "Not packed". В общем хз. С другой стороны, как я уже имела дело с 10 версией. Хотя я не врубаю если там правда был старфорс, то нахрена его в поздних версиях убирать?!!!! В общем имя файла, запротекченного старфорсом + имя детектора в студию. Цитата:
Цитата:
|
0x0c0de
Вот выложил EXE. http://ifolder.ru/3082453 Инструметы те же юзал PEID 094 DiE_0.62 Если надо, могу потом всю прогу выложить. 9 МБ весит. P.S. убери меня из игнор листа )) |
Скоро надо будет переименовывать тему из взлом десятой версии в распаковку восьмой.
Как вы там говорите? Старфорс? Ну ладно.. Я по поводу этого сказать ниче не могу - у меня не детектирует. Может и старфорс. Код:
005A40E7 o> 68 CCDC19A4 PUSH A419DCCCТолько не особо агрессивный он для старфорса (точнее вообще не агрессивный). Опять же. Мануалов я не читала. Мда. Импорт я восстановила с помощью следующего самопального скрипта Код:
var iat_beginКод:
00BA0000 50 PUSH EAXmov retaddr,$RESULT bphws retaddr,"x" Потом дойти до рет это у нас run... Остановицц0, забрать с верхушки стека правильный адрес и положить его в таблицу. Ну то, что я изначально запрашиваю адрес начала таблицы и адрес конца - про это вообще не говорю. Это ясно. Ну и хардвар убираем, увеличиваем адреса и идем дальше... Причем... Если встречаем 0 в таблице-перескакиваем, или правильный адрес... это у нас cmp [element],0 je add_ cmp [element],50000000 ja add_ mov eip,[element] Почему 50000000? Я намекаю на адрес системной библиотеки. Ну ладно. Вроде там скрипт элементарный. OEP нашла Код:
00469103 6A 60 PUSH 602EB_FE выкладывать ниче не надо ибо диз есть. Уж гугл-то юзать я умею. Только там не 9 метров, а 11. У меня не анлим, поэтому давайте по-человечески я постоянно десятки мегабайт трафика не могу выкачивать. По поводу 10 версии. Я не больная (больная канешн, но не настолько). Там правда нет старфорса Исполняемый файл. Смотрим и удивляемся. http://slil.ru/24771918 Вопрос исчерпан. |
поробуй Protection ID 5.2c или 6.0 (если найдёшь) он всякое г типа старфорса
должен сдетектить.... |
Усе, переборола свою аццкую лень. Довела до конца.....
Файл тут. http://slil.ru/24772592 Tested : WinXP sp2 По поводу скрипта.... Когда он отработает 2-3 функции все равно надо будет вручную восстановить. 2Hellsp@wn ага .... Его юзала.... Говорит [!] File appears to have no protection or is using an unknown protection В общем ладно, но ИМХО это не старфорс=\ Или минимальный протект... Щас поразбирала пеидовские сигнатуры))) И вот че нашла [StarForce V3.X DLL -> StarForce Copy Protection System] signature = E8 ?? ?? ?? ?? 00 00 00 00 00 00 ep_only = true [StarForce ProActive 1.1 -> StarForce Technology] signature = 68 ?? ?? ?? ?? FF 25 ?? ?? 57 ep_only = true [StarForce 3.0 -> StarForce Technology] signature = 68 ?? ?? ?? ?? FF 25 ?? ?? 63 ep_only = true [StarForce V3.X -> StarForce Copy Protection System] signature = 68 ?? ?? ?? ?? FF 25 ?? ?? ?? ?? 00 00 00 00 00 ep_only = true А теперь, следственный эксперимент. Смотрим на энтри поинт и видим, что сигнатурами старфорса тут не пахнет. Ну надо ж было так дизинформировать общественность!=\ Где вы там старфорс нашли я НЕ ПОНИМАЮ. Мож это прот собственного сочинения))))))) |
| Время: 04:04 |