Как стать автором
Обновить

Комментарии 57

такой кейгенми можно было ломать без трассировки вообще. также статья для начинающих но вы не описали как работает антиотладочный механизм.
Просто камент для читателей:
патчить JNZ было не обязательно т.к. цель — написание кейгена. можно было поправить ZF в момент перед прыжком. если бы цель была пропатчить программу то надежнее всего JNZ(и аргумент) заменить нопами — опкод 90h
И плюс вам в карму и в топик. за попытку вернуть хабру звание торта
согласен
«Этот крякмис предназначен в первую очередь для новичков...»
Конечно ZF можно было перевести это как один из вариантов, но я выбрал другой.
Спасибо вам за комментарий.
Автор топика мошенническим путем получил у меня инвайт, после получения извинившись за обман. Все ради того, чтобы опубликовать этот и я полагаю подобные материалы.
Видимо я уже старенький и чего-то в этой жизни не понимаю.
Расскажите, а как можно мошенническим путём получить инвайт?
Было заключено соглашение об обмене инвайтами, но после выполнения моей части юзер сказал, что без хабра не мог жить и дышать и у него не было другого выхода кроме как кого-нибудь обмануть.
Это юмор такой?
Нет, все правда. Небольшие мои художественные украшения, в реальности это звучало так:

«простите конечно что вас обманул, но мне необходимо было попасть на хабр и это был мой единственный шанс. инвайта на [вырезано] у меня не было.»
НЛО прилетело и опубликовало эту надпись здесь
Там же FS:[18] считывается, совсем по-пацански было бы подключить к Олли патчер IsDebuggerPresent :)
JE, JNE… Вспомнились старые добрые времена и softice. Эх настольгия!
Любопытно, кому-нибудь удалось завести софтайс на WinXP? Помню бился с ним, но так и не удалось заставить его должным образом работать. После перешел на Олли и забыл об айсе как о страшном сне :)
А он там и не должен работать, он же на уровне ядра запускается и в XP он понятия не имеет как туда влезть там же все совсем по другом, службы и т.д. Странно что такая программа как softice перестала развиваться под новые версии ОС. Видимо с защитами и брандмауэрами, дефендерами и прочим появившимися с XP softice уже просто никак не сможет влезть к ядру не поломав всю систему.
Нет, дебаггер продолжил своё существование в виде DriverStudio. Просто в каждом новом релизе винды немножко меняется ядро и его API. Дебаггер работает как обычный драйвер. Дрова от 2K обычно не подходят к XP. Однако если они не используют меняющиеся API, то впихнуть можно руками. Собсно ниже даны ссылки, как впихнуть SoftICE.

Никаких защит нет. Если у пользователя есть права ставить Native Apps (Win32 лишь оболочка поверх NT, у NT свои собственные программы с Win32 несовместимые, дрова — один из типов Native Apps), то в ядро можно сунуть что угодно.
да, куча статей по запуску сайса под хр
Я многое перепробовал, но нормально работать с ним не получалось: то он клавиатуру не видел, то на бряки не срабатывал, то просто вешал комп.
НЛО прилетело и опубликовало эту надпись здесь
А зачем там Sice? Если нужна kernel-mode отладка — WinDBG, а еще лучше — IDA+WinDBG. Для юзермода хватает Olly.
Истинные кейгены пишутся на асме :)
Для кейгена порой удобно копировать участки кода прямо из отладчика. Вот за что люблю Олли, так это за его удобство работы и плагины.

Кстати, было бы интересно почитать также про исследование протекторов (ASProtect, Armadillo и прочее).
вам на cracklab.ru
На крэклабе уже давно не публикуется ничего нового. Теперь там рулит только форум.
Ох, сколько подобного прочел раньше на страницах ][акер-а, одной из первых статей была эта: www.xakep.ru/magazine/xa/080/070/1.asp
Кому интересно, со всеми статьями более подробно можно познакомиться здесь: www.xakep.ru/local/search/search.asp?text=crackme
ждем статью о взломе VMProtect )
Кому интересна данная тема, советую добавить в закладки данный сайт, в свое время учился по нему, достаточно хорошие статьи.
ещё есть cracklab.ru
На Cracklab DVD 2007, вроде, есть мое видео по взлому какой-то программки, уже даже и не помню какой.
И штук двадцать моих статей :)
Эх, ностальгия :)
Почему ностальгия? Реверс инжиниринг и сейчас достаточно популярен и современен :)
я три года назад этим развлекался, да потом забросил :)
На Windows 7 прога сразу пишет Debugger Found, причём никакой дебаггер я даже запустить не успел ;)
интересно)
сам крякмис из раздела windows xp. Я подумал что юзеры семёрки, если захотят, заюзают режим совместимости
Совутую:
www.wasm.ru/ ==> Курс Рикардо Нарваха(к сожалению не знаю как правильно склонить) «Введение в крэкинг с нуля, используя OllyDbg»
Эээ. Я крякнул это с первой попытки, просто запустив прогу и вписав значения в поля…
*вписав удачные значения в поля
Шутите?(= Ну либо какой-то кусок вашего мозга находится в спутанном состоянии с куском мозга разработчика данного кракми
Нет, не шучу. Я вписал 1 и 2. Потом сообразил, что ответ — верхнее поле +1 =)
И это для новичков? Что-то совсем для яслей )=
Когда-то погрузился в вопросы кряков программ. На 3 дня полностью выпал из привычного ритма жизни. Но на 3-й день мне удалось взломать очень специфичный плагин для ms word, кряков на который не было вообще. Хочу сказать, что взлом программ очень увлекательный процесс, требующий терпения, концентрации и знаний.
НЛО прилетело и опубликовало эту надпись здесь
Побольше таких статей.
будут. обещаю
>00401D48 > 8006 01 ADD BYTE PTR DS:[ESI],1 //добавляем 1 байт к первому байту слова находящемуся по адресу расположенному в ESI
Может быть 1 _бит_ добавляется к первому байту? Чтобы в итоге получить следующий символ в ASCII таблице?
Наверное «прибавляем байт-единицу» имелось в виду.
Вроде-бы прибавляем единицу к байту (не первый байт, а просто байт)
Статья заинтересовала, только с ассемблером совсем не знаком. Подскажите где познакомиться?

Вот кейген на C#:

  1. private string GeneratePassword()
  2.     {
  3.       string userName = txtUserName.Text;
  4.  
  5.       if (!String.IsNullOrEmpty(userName))
  6.       {
  7.         int i = 0;
  8.         StringBuilder pass = new StringBuilder();
  9.  
  10.         pass.Append(userName);
  11.  
  12.         while (i < userName.Length)
  13.         {
  14.           pass[i] = GetNextASCIISymbol(userName[i]);
  15.           i += 2;
  16.         }
  17.  
  18.         return pass.ToString();
  19.       }
  20.  
  21.       else
  22.       {
  23.         return String.Empty;
  24.       }
  25.     }
  26.  
  27.     private char GetNextASCIISymbol(char symbol)
  28.     {
  29.       int index = (int)symbol;
  30.       char result = Char.MinValue;
  31.  
  32.       index++;
  33.       result = Convert.ToChar(index);
  34.  
  35.       return result;
  36.     }
* This source code was highlighted with Source Code Highlighter.

уже писали
wasm.ru
cracklab.ru
Спасибо. Буду повнимательней в следующий раз.
если уж для новичков, то начинать надо с объяснения, что такое WinAPI, и почему getdlgitemtexta, messageboxa… а так да — слишком все просто.

удивительно, как меняется человек — несколько лет назад думал, что никогда это не брошу, а теперь изредка запускаю ida и то только, что бы пропатчить что ни будь, типа utorrent :-)

p.s. первые кейгены тоже писал на паскале, а потом понял, что гораздо проще рипнуть асм-код и использовать его в кейгене на асме :)
НЛО прилетело и опубликовало эту надпись здесь
Отдел К внимательно следит за постом :)
НЛО прилетело и опубликовало эту надпись здесь
Есть некоторые программы, которые «крякнуть» даже проще, чем этот crackme.
Например, WinRAR, чтобы убрать надоедливое окошко, можно отлавливать таймер + функцию DialogBoxParam. Или можно просто удалить окошко из ресурсов с помощью ResHacker-a.
Автору: после слов «лицезреем следующее» не хватает цитирования куска кода
та картинка должна быть ;)
поправил спасибо
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации