![]() |
eXeL@B —› Вопросы новичков —› а давайте жахнем по BallAttack!!! |
Посл.ответ | Сообщение |
|
Создано: 05 мая 2007 06:32 · Поправил: NullDog · Личное сообщение · #1 при поиске в инете кряка под прогу, нашел несколько патчей которые, да, решают проблему зареганности, но некоторые функции игры, все равно, sukA, НЕ РАБОТАЮТ!!! немного о защите. при запуске BallAttack.exe запускается reg.exe. Как мне кажется в reg.exe не происходит проверки валидности ключа, несчитая простейшей проверки количества набранных в окошке символов и знака равно на конце сериала. Если это верно, то ключик идет в реестр, и появляется надпись: "Превед алегархчиг! Спасиб за покупку." (никому не напомнило защиту в играх alawar?? :улыбающийся смайлег: ) после этого опять запускается BallAttack.exe, с параметрами, если его переименовать то он не запустится (для проверки кидал в папку переименнованный notepad, запустился блокнот). запакована данная хрень: ASProtect 1.23 RC4 Demo. (по мнению PeID) распаковываю ручками. кста, при трассировке исключений, за два-три исключения до последнего, уже запускается reg.exe. на этом исключении чуть ниже увидел, что в стек пушатся довольно интересные ASCII. но ковырять я там, sukA, НЕ СТАЛ!!! ибо панически боюсь кода ASProtecta(хотя без труда распоковываю версии 1.22-1.23 ручками), кто знает может зря непоковырялся и не стоило начинать этой темы. stolen'ов вроде нет. но запустить распакованный ручками exeшник неполучилось. страннанах. (кто справился, киньте ламиру распакованные ballattack и reg, буду весьма признателен). незнаю, мож мои мысли ошибочны по поводу защиты этой проги, но суть вопроса от этого не меняется. нужна помощь и любые мысли по поводу ее взлома. сайтпроги: ballattack.com скаченная мной версия: 1.18 [2.87mb] ![]() |
|
Создано: 05 мая 2007 14:24 · Личное сообщение · #2 Распаковывается руками и запускается без проблем. Заливать правда никуда не стал, потому что весит все это распакованное добро 2 метра. Проще всего будет скачать стриппер для аспра (здесь же на сайте скачать/инструменты/распаковщики). Он тоже распаковывает без проблем. Тоже решил поковырять игрушку, но по причине полной чайниковости пока ничего хорошего не нашел. ![]() |
|
Создано: 05 мая 2007 16:44 · Личное сообщение · #3 NullDog Используй поиск форума. Было уже, например, тут. ----- Сколько ни наталкивали на мысль – все равно сумел увернуться ![]() |
|
Создано: 05 мая 2007 17:57 · Поправил: Sturgeon · Личное сообщение · #4 Valdis В итоге сломать не смогли ![]() Для чайника очень сложно разобраться. Вот что накопал: Длина пароля больше 16 символов. По адресу 004026C8 начинается проверка введенного пароля. Пароль сверяется со строкой "agUHq+2=Rp#oLJwY". Правда сверяются только первые восемь символов. А вот дальше засада... Оставшаяся часть строки по адресу 00402A27 сравнивается со строкой "#pYgYaUw". И вот тут у меня мозг вскипает. С одной стороны для первой проверки восьмой символ пароля должен быть "=", с другой стороны этот же символ для второй проверки должен быть "#". Как с этим бороться я не знаю ![]() P.S. Чуть не забыл. Все адреса для файлика reg.exe ![]() |
|
Создано: 05 мая 2007 21:55 · Личное сообщение · #5 |
|
Создано: 11 мая 2007 09:11 · Личное сообщение · #6 во первых 10x 2 Sturgeon, за то что подсказал адрес начала проверки ключа, без него я бы искал данный адрес наверно целый день. ![]() Вот что я нарыл за этот день. как я и предпологал, в reg.exe сериал проверяется по определенной маске, и ключ сохраняется в реестр. Правда не совсем по той маске, что предпологал я в первом посте. Итак, введите следующий ключ: #HHq+2=Rp#oLJwYUqqwertyuiopagasdfU#aaqaH+ Данный ключ разделен в системе проверки по маске на три секции: 1 секция (#HHq+2=R) длиной 8 символов от начала сериала, которая должна содержать символы по адресу 0046BB49, расположение которых четко связано с длиной всего ключа. 3 секция (U#aaqaH+) длиной 8 символов с конца сериала, эти символы генерируются путем участия 2 и 1 секций, изменится одна из этих секций эта часть будет совершенно другая. По адресу 00402799 в цикле в EBX получается некоторое значение состоящее из 8знаков, далее к каждому знаку данной комбинации прибавляется начальный адрес уже известной строки 0046BB49, в результате и получаются эти самые 8 конечных символов пароля. 2 секция. К этой секции принадлежат все символы находящиеся между 1 и 3 секциями. Если пароль соответствует маске, то его 2 секция заносится в реестр, которая скорее всего сверяется с эталоном (или не эталоном) в Ballattack.exe, который, suka, я так и не смог РАСПАКОВАТЬ!! видимо у меня дамп непрально снимается. Sturgeon, могешь кинуть Ballattack.exe распакованный?? reg.exe ненадо. сам справился. %) ![]() |
|
Создано: 11 мая 2007 18:07 · Личное сообщение · #7 Скину без проблем. Только весит он распакованный почти 1,5 метра. Меня с пометровой оплатой, честно говоря, жаба душит ![]() Ты скачай сначала отсюда стриппер (всего 138 кило). Попробуй им. www.exelab.ru/download.php?action=get&n=MTUw Если не получится, пиши, залью куда-нибудь. З.Ы. Я так и не докопался до всего того, что ты написал ![]() ![]() |
|
Создано: 12 мая 2007 05:40 · Личное сообщение · #8 Да у меня нет администраторских прав на компе, поэтому не могу воспользоваться стрипером, ты его раром запокуй, он будит весить почти столькожи сколько и в сжатом состоянии. кста у меня мой нерабочий весит 1.14. ![]() Пы.сы. 1. длина моего ключика 29h. 004026B6 MOV EBX,0F <--- запомни это значение 004026BB MOV WORD PTR SS:[EBP-14],8 <--- всего будет проверено 8 символов 004026C1 MOV EDI,reg.0046BB58 <--- в EDI конец строки agUHq+2=Rp#oLJwY 004026C8 <---- в этом цикле берется первый символ введенного пароля и сверяется с символом EDI, если они не совпадают, то dec EBX и dec EDI, если символы совпадают то в стек 13F238 сохраняется EBX. Я понимаю, для моего ключа первое число в EBX должно быть 9, второе 2, остальные нули. так и делаю подгоняю первую комбинацию. Немного дальше идет такая проверка: 004029BB MOV EAX,DWORD PTR SS:[EBP-40] <--- наше значение 13F238 004029BE ADD EAX,10 <--- к значению прибавляется 10 004029C1 CMP EDX,EAX <--- сравнивается с 29h значит для моего ключа первое число должно быть 9, второе 1, остальные нули. Опять подгоняю первую комбинацию. таким образом и получаем #HHq+2=R Остальное думаю понятно. ![]() ![]() |
|
Создано: 12 мая 2007 11:22 · Личное сообщение · #9 |
![]() |
eXeL@B —› Вопросы новичков —› а давайте жахнем по BallAttack!!! |