Крякинг: Записки дилетанта

Как статья ?

  • Классно

    Голосов: 18 90.0%
  • Мог-бы и по лучше написать

    Голосов: 0 0.0%
  • Что-то слабовато

    Голосов: 0 0.0%
  • А зачем это ?

    Голосов: 1 5.0%
  • Ндя..., лучше-бы выкладовал ключи

    Голосов: 1 5.0%

  • Всего проголосовало
    20

bugor

VIP
VIP
Регистрация
29.08.2013
Сообщения
5
Репутация
1
прочитал, ибо мне вдруг тут захотелось самому крякнуть нечто. Выяснилось, я ни-ера не шарю в терминологии. хоть в первый класс идиОтдыхай!!!
 

bugor

VIP
VIP
Регистрация
29.08.2013
Сообщения
5
Репутация
1
можете подсказать с чего нужно начинать "чайнику", учить мат.часть и пр. В общем пошлите меня!
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
6 085
Репутация
8 208
К сожалению как-то тяжело даётся, наверное нужно либо ОЧЕНЬ сильное желание иметь, либо какое-то призвание что-ли...

Я изучал Нарваха "Введение крэкинг с нуля", дошёл до антидампа и ACProtect (Это 41-я глава) и забросил...bam88

Даже и незнаю когда продолжу и продолжу-ли воообще, по причине что перестал понимать как и что делается и как следствие интерес пропал, сейчас появился другой интерес - Это веб, там как-то по проще всё...WinkSmile

Есть сайт да вроде обсуждают крэкинг...

Есть ещё вот классный сайт там как ассемблер так и крэкинг рассматривается и ещё много чего, автор сайта молодец...

можете подсказать с чего нужно начинать "чайнику", учить мат.часть и пр. В общем пошлите меня!

Другое дело, что вы эти посты набрали лишь для флуда, зря я распинаюсь, вам не интересен не крэкинг не этот ресурс, а интересно только набрать посты для ключа, или ещё чего...

Я прав ? Можете неотвечать, посмотрел ваши посты, 100% прав !:Mem26:
 

bugor

VIP
VIP
Регистрация
29.08.2013
Сообщения
5
Репутация
1
Другое дело, что вы эти посты набрали лишь для флуда, зря я распинаюсь, вам не интересен не крэкинг не этот ресурс, а интересно только набрать посты для ключа, или ещё чего...

Я прав ? Можете неотвечать, посмотрел ваши посты, 100% прав !:Mem26:

Да, вы быстро меня раскусили. Вот я подлец.
У меня нет возможности долго сидеть в онлайн, поэтому пишу сегодня.
Но информацию Вашу принял к сведению. По ссылкам посмотрел, да , чтобы вникнуть в суть нужно долго и планомерно изучать, а самостоятельно еще дольше.
Кроме этого, после Вашего разоблачительного поста от "Сильного желания" осталось "Желание", Вы прекрасно умеете мотивировать.
В связи с этим я хочу извиниться, что заставил Вас тратить на меня время.
Мои сообщения можете удалить!
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
6 085
Репутация
8 208
Кроме этого, после Вашего разоблачительного поста от "Сильного желания" осталось "Желание", Вы прекрасно умеете мотивировать.
Ну вот можете-же нормальные посты писать...wink1

По теме к сожалению (Или счастью) простого желания недостаточно...

Для начала берёте книгу по ассемблеру x86, во вложении "Курс молодого байца", там описывается немножко процессор, что это такое вообще...

Если осилите это, здесь на форуме есть цикл статей Р. Нарвахо "Введение в крэкинг с нуля при помощи OleDbg", читаете его, если осилите, идёте уже на exelab.ru и давите всех интеллектом, как-то так...WinkSmile
 

Вложения

  • Assembler.Win32.Kurs.Molodogo.Boyca.zip
    116.5 КБ · Просмотры: 16
Ф

ФАПСИ

Гость
Решил ещё один крякми, в этом крякми две части, это жёстко забитый серийник и динамически генерирующийся, я пока парюсь с жёстко забитыми, т.к. кейгены пока писать не умею, но если до этого дойду, то напишу в следующий статьях:

Посмотреть вложение 52194

Решаем первое задание «HardCoded», тут немножко по сложнее, т.к. серийник сравнивается побайтно, т.е. если в прошлом крякми это делала специальная апи, то здесь автор сам написал такую программу, которая сравнивает всё побайтно в цикле…

Вообще рекомендую скачать версию олле 2.01 эта последняя версия, но там интерфейс малость поменялся, зато не будет ключить на x64, итак что-бы не разводить писанину, сразу приступим к решению:

Посмотреть вложение 52195

Находим АПИ GetWindowTextA и ставим там точку останова, именно в этой апи идёт считывание что мы введём и как следствие что идёт после этой функи будет уже обработка, проверка на правильность и т.д.

К сожаленю что-бы поставить точку останова на процедуре, в 2.01 поменялось немногу, нужно выделить нужную АПИ далее правой кнопкой и Find refences

Посмотреть вложение 52196

Далее там уже правой кнопкой и можно поставить точку останова:

Посмотреть вложение 52197

Кстати видно что функа фызывается аж три раза, причём два раза с MaxCount =32 и один MaxCount=11, кстати 11 – это и есть длинна нашего пароля… :)

В общем запускаем крякми в олле, вводим всякую дребедень, нажимаем “CheckHardxoded”, всё программа зависла по точке останова, прям на нужном нам месте, гы-гы:

Посмотреть вложение 52202

В общем-то пароль уже виден в коде, но скучно давайте анализировать дальше код:

Нажимаем F7, НО после этого незабудим:

Посмотреть вложение 52199

Далее опять F7.

Иначе олле нетуда залезет, а конкретно залезет в саму функу, нам это не нужно…

Короче нажимаем F7 и топаем по коду:

Посмотреть вложение 52200

Что-бы не делать куча скринов выделю код, который нас интересует:

Код:
                              Comments
CALL <JMP.&USER32.GetWindowTextA>  ; \USER32.GetWindowTextA
LEA EAX,[401353]      ; ASCII "HardCoded"
LEA EBX,[403215]      ; ASCII "aS"

CMP BYTE PTR DS:[EAX],0
JE SHORT 0040138C
MOV CL,BYTE PTR DS:[EAX]
MOV DL,BYTE PTR DS:[EBX]
CMP CL,DL
JNE SHORT 004013D2
INC EAX
INC EBX
JMP SHORT 0040137B

Это по сути цикл, в начале в регистры заносится EAX и EBX, то-что у нас в памяти по адресам [401353] – это на кстати пароль, гы-гы, и [403215] – это то-что мы ввели, но это я думаю понятно, что происходит далее…

CMP BYTE PTR DS:[EAX],0 сравниваем, если регистр EAX=0, если да то JE SHORT 0040138C, переход на адрес 0040138C там и будет наша окошко, которое скажет что мы молодцы, гы-гы…

Если-же EAX не ноль то перехода не будет, а в специальные регистры CL и DL, заносится содержимое регистров EAX и EBX, причём если из описания, то регистр DL– это регистр данных, а CL-это счётчик, но вот заносится будут байты, а не всё значение целиком, это и есть побайтная проверка, в Олле это кстати видно хорошо (Смотреть в самом низу):

Посмотреть вложение 52203

Используется цикл Loopи обращения к индексам, как-то так:

CMP CL,DL

JNE SHORT 004013D2

Если байты CL и DL не равны, то JNE SHORT 004013D2 то переходим по адресу 004013D2, там нас обругают что-мы валенки и несмогли решить крякми…

Далее если равно, то уменьшаем регистры EAX и EBX: INC EAX, INC EBX и переходим в начало цикла JMP SHORT 0040137B и так делаем пока EAX не станет нулём ! :)
Классная штука спасибо помогла с Anime Studio хотя на адойб не прокатит
 

Антоха

Уважаемый пользователь
Форумчанин
Регистрация
26.12.2012
Сообщения
2 780
Репутация
4 652

Автор пропал и развитие блога остановилось.
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
6 085
Репутация
8 208

Автор пропал и развитие блога остановилось.
Какой-то старый блог, а вообще в ассемблере по мойму 20-30 команд всего, в принципе по любому манну можно учить, но мне больше-всего понравился Нарвахо, первые главы, там можно и потренироваться в OleDBG...

А-так нужно что-то делать, какой-то проект и попутно учить, просто по манам можно только основы выучить, которые быстро забудутся если не будет практики...WinkSmile
 

Rufus

Уважаемый пользователь
Форумчанин
Регистрация
14.12.2014
Сообщения
247
Репутация
114
Так тот чел сам учился и попутно делал записи в блоге.Для общего развития глянуть можно.
А Нарваха и exelab со своими видеоуроками это основа.Наверное первое на что натыкается в поисковике новичок.
 
Верх Низ