Сейчас на форуме: (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Пару вопросов (о процедуре DIV и ломке самодельныйх прог в OllyDbg)
Посл.ответ Сообщение

Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 31 июля 2010 22:55
· Личное сообщение · #1

Всем привет. Как вы уже наверно догадались, я тут новичок)
Вот началось лето, я купил HoN (дота на новом движке) и начал проводить лето в сидячем положении) Но тут пришел отец и сказал, что мы едем на Украину (к родне на наделю). Тут то я и задумался, что я там буду делать - ноут есть, гамать без интернета не во что, а прогать уже лень (после месяца хона :D)... Думал, думал.. И понял, что уже пора выучить наконец асму - Си и делфи знаю - только его и не хватает) Отрыл в закладках ссылку на скрэклаб и начал его изучать. После получаса прочесывания сайта, я понял, что научится крэкингу будет гораздо интересней, чем выучить асму. Но после еще 10 минут понял, что без него никуда)
Начал со статей Калашникова (дошел до урока 20 - уж было больно лень писать неработающий СОМ-вирус да еще и под Дос xD) - закончил полностью прочтя все "Дневники чайника". Асм дался довольно легко (по крайней мере то, что просили сделать в дневниках было для меня как "два пальца" =)) - статьи Калашникова и дневники изучил за три вечера - да и написал прогу, переводящую НЕХ числа в строковый их эквивалент, которая занимала меньше байт чем у автора, за что он в статье обещал личный респект =) Отсюда и начинаются несколько моих вопросов - пара про асму, остальные по крэкингу)
1) Я так и не смог с помощью DIV'а поделить DWORD на 10 - всё компилится, но в Ольке вываливается Integer overflow
2) Не могли бы вы подкинуть ссылку на прогу со списком функций Асмы не в убогом консольном формате
Интернета нормального у меня пока нету - только с мобилы, поэтому лазить по инету в поисках крэкми у меня не хватит денег) Вот и написал парочку своих:
-в поле вводится ключ и нажимается кнопка (на C++). Если правильный ключ, то выводится сообщение с помощью MessageBox о удаче, если нет - о неудаче =)
-то же самое, что и первое только с помощью ShowMessage
-эта уже написана на Делфи. В поле вводится ключ, он проверяется в событии onChange, и при правильности ввода разблокируется кнопка
А теперь разбор полётов:
Первые две легко ломаются по поиску строки, которая сообщает о неправильности ключа
Первая в отличие от второй ломается так же при помощи бряков на MessageBox
Третью так и не смог сломать (если действовать так, будто я не знаю ключа) - даже ставил бряки на все вызовы в Intermodular calls - при печатании ничего не происходит...
3) Каим способом ещё можно сломать вторую прогу (коме как по поиску строки "неудачи")
4) Как сломать третью прогу (буду очень признателен, если вы попробуете свои силы и отпишитесь =))
5) В статье про снятие таймера с гарены автор пишет, что нашёл строку текста в модуле .rsrc. Как попасть в этот модуль? Раньше, чтобы найти какую-нибудь строку в большом приложении (вчера пытался сломать Sound Forge 10), я заходил в Executable modules в ольке, там поочередно открывал каждый модуль (который, ес-но, принадлежит проге) и в нём искал нужную строку. Но там только dll (и основной ЕХЕ), а где найти .rsrc я не понял...

(в аттаче 2 и 3 проги)

Спасибо хотя бы за то, что смогли прочитать до сюда

b715_31.07.2010_CRACKLAB.rU.tgz - crackMe.7z



Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 31 июля 2010 23:19
· Личное сообщение · #2

DirecTwiX пишет:
4) Как сломать третью прогу

Поискать ключ в коде
Ставить бряк на обработчик OnChange
TrueKey



Ранг: 221.3 (наставник), 135thx
Активность: 0.190.07
Статус: Участник

Создано: 01 августа 2010 00:59
· Личное сообщение · #3

По асму рекомендую Фельдман С.К. "Системное программирование. Полный курс лекций с теоретическими материалам4 и лабораторными работами". По реверсу статьи нарвахи

-----
xchg dword [eax], eax




Ранг: 0.4 (гость)
Активность: 0=0
Статус: Участник

Создано: 01 августа 2010 09:54
· Личное сообщение · #4

SVLab, а где найти эту процедуру OnChange?
Как я уже писал, я "ставил бряки на все вызовы в Intermodular calls"
Я открываю ЕХЕ в ольке, потом щёлкая правой кнопкой по коду, там выбираю Search for->All Intermodular calls и в появившемся списке должна быть процедура OnChange?

Про поиск строки в коде - так подходит только для маленьких прог)

1 вопрос можно снять - не слишком актуально)
Да и 3й... Думаю больше нет способов




Ранг: 355.4 (мудрец), 55thx
Активность: 0.320
Статус: Uploader
5KRT

Создано: 01 августа 2010 10:21
· Личное сообщение · #5

Dede, IDA используй что бы обработчик найти

-----
Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes




Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 01 августа 2010 13:56
· Личное сообщение · #6

DirecTwiX пишет:
где найти эту процедуру OnChange

Берем IDR (http://www.exelab.ru/f/action=vthread&forum=3&topic=15434 ). Хотя он пока не работает толком с 2010, но формы посмотреть можно. Открываем программу как 2009. Смотрим формочку в графике. Правой кнопкой на Edit и узнаем, что имя обработчика Edit1Change. Далее в Оле ищем все строки, а среди них это словечко. Не находится в секции с EP, - выводим в дизассемблер первую секцию и снова ищем. Когда найдётся, щелкаем по строке и попадаем в дизассемблер. Прокручиваем немного вниз - первый осмысленный кусок кода - обработчик. Бряк уже ставить не надо, пароль и так видно.


 eXeL@B —› Вопросы новичков —› Пару вопросов (о процедуре DIV и ломке самодельныйх прог в OllyDbg)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати