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

 eXeL@B —› Вопросы новичков —› IconLover После нажатия ОК ловлю исключение
Посл.ответ Сообщение

Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 28 апреля 2010 19:35
· Личное сообщение · #1

IconLover После нажатия ОК ловлю исключение.
Собственно программа работает под Олей сколь угодно. Но при нажатии на ОК на форме регистрации попадаю сюда
Code:
  1. 00370033   B8 28E5907C      MOV     EAX, ntdll.RtlRaiseException
  2. 00370038   52               PUSH    EDX
  3. 00370039   FFD0             CALL    EAX
  4. 0037003B   C2 0400          RETN    4

Что можете посоветовать?



Ранг: 87.8 (постоянный), 10thx
Активность: 0.070
Статус: Участник

Создано: 28 апреля 2010 21:03 · Поправил: gena-m
· Личное сообщение · #2

Скачал из сети версию 5.13, в отладчике без плагинов запускается нормально.
Второе: даресов таких как у тебя в листинге - в памяти нет, возможно версия программы другая, тогда выложи которую копаешь или ссылку на нее.
После нажатия ОК ловлю исключение.
Какое исключение ловишь, что Олли внизу пишет или в логе посмотри какое исключение.
И последнее можешь поставить бряк на обработчик исключений и отловить откуда оно было вызвано и почему, и кто его будет обрабатывать.
Мне удалось смоделировать твою ситуацию и все найти, но адреса другие, поэтому копай в сторону обработчиков исключений, особенно вначале теорию.
Кстати внизу Олли тебе напишет как выйти из этого исключения.
Просто автор видимо реализовал проверку ключа через обработку исключений - чтож это его право.

-----
Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше




Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 28 апреля 2010 21:11
· Личное сообщение · #3

Попробую. Но инструкция RENT 4 завершает приложения.
Патчил в памяти до просто RENT - возвращаюсь про программу.
Адресов нет. Но через MEMORY - удалось поставить бряку в начало 370000.
Ставил бряку также на импорт raiseExeption но после неё возвращаюсь в другое место программы.
-----------
ПС. Программа и у меня 5,13



Ранг: 87.8 (постоянный), 10thx
Активность: 0.070
Статус: Участник

Создано: 28 апреля 2010 22:39 · Поправил: gena-m
· Личное сообщение · #4

Неее все не то.
При введении неправильного пароля, прога генерит исключение, а в его обработчике выводится сообщение о введении неправильного пароля (это мое предположение, возможно что там сделано что то другое). В Олли что бы передать обработку исключения программе нужно нажать Shift+F7/F8/F9, тогда увидишь это сообщение. Короче говоря учи теорию (читай статьи Риккардо Нарвахи).
Адресов нет. Но через MEMORY - удалось поставить бряку в начало 370000. ????????????
Как можно поставить бряк или получить этот адрес, если памяти по этим адресам нет, здесь что то не то, во вторых при исключении ( Адрес=7C81EB33 Сообщение=Исключение 0EEDFADE - это записано в логе)
ты должен оказаться в системной библиотеке адрес вида 7ХХХХХХХ.

-----
Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше




Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 28 апреля 2010 23:05 · Поправил: ekkl
· Личное сообщение · #5

Адреса есть, но они в собственной секции.
Code:
  1. Memory map, item 20
  2.  Address=00370000
  3.  Size=00001000 (4096.)
  4.  Owner=         00370000 (itself)
  5.  Section=
  6.  Type=Priv 00021040
  7.  Access=RWE
  8.  Initial access=RWE

На всякий случай сверим программу (Для iconlover.exe)
SHA1=F8684FEE387FBBA0CE776D1E5DE0E31D520725C8
После трассировки я все равно попадаю на команду
Code:
  1. 0012F2D0   EC               IN      AL, DX                           ; I/O command
  2. 0012F2D1   F2:              PREFIX REPNE:                            ; Superfluous prefix

после чего окно закрывается.




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 29 апреля 2010 01:10 · Поправил: Isaev
· Личное сообщение · #6

Прикольно! Наконец с IconLover'a убрали говновспр!
сделал ключик под любое имя, видимо для всех их продуктов, с которых убрали прот

b124_28.04.2010_CRACKLAB.rU.tgz - key.txt

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh




Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 29 апреля 2010 12:59
· Личное сообщение · #7

Спасибо!
Самому хочется докопаться. Только вот с этой чепухой что делать?
Code:
  1. 0012F2D0   EC               IN      AL, DX

Что ни у кого такого нет? Может что-то с настройками у меня?
Это вообще нормально читать/писать порти под виндой в ring3 ?
----------
ПС....
Isaev, а что такое говновспр? Случайно не АСПротект?



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

Создано: 29 апреля 2010 13:49
· Личное сообщение · #8

говновспр == ASPotect



Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 29 апреля 2010 14:03
· Личное сообщение · #9

Я так понял его сначала снять не помешало бы.
Это он пытается писать в порты?




Ранг: 164.6 (ветеран), 65thx
Активность: 0.120
Статус: Участник
Волшебник

Создано: 29 апреля 2010 14:42
· Личное сообщение · #10

Какая-то часть интуиции мне подсказывает, что код
Code:
  1. 0012F2D0   EC               IN      AL, DX
находится в куче. А вылетаете вы в неё быстрее всего из-за патча RET 4 на RET

-----
Следуй за белым кроликом




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

Создано: 29 апреля 2010 14:46
· Личное сообщение · #11

ekkl пишет:
Я так понял его сначала снять не помешало бы

если ASPotect навешен, тогда да. Но вроде бы
Isaev пишет:
Наконец с IconLover'a убрали говновспр!




Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 29 апреля 2010 15:02 · Поправил: ekkl
· Личное сообщение · #12

Так с чего начать? Код то "увешан" подобными инструкциями. Они не дают нормально работать, так как на них программа попросту вылетает. gena-m и Isaev как-то справились с этим.
И что за адреса такие странные 0012хххх для кода. Дизассемблер их вообще на видит.
Если данная ситуация описана в статьях Риккардо Нарвахи ткните, пожалуйста, в раздел.
Это какая-нить антиотладка или что-то ещё?



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

Создано: 29 апреля 2010 15:14
· Личное сообщение · #13

ekkl пишет:
Так с чего начать?
Сначала определиться, упакован файл или нет. Раньше на продукты aha-soft вешали ASPotect. Сейчас не знаю. Возможно ты ковыряешь старую версию IconLover. Но в любом случае в OllyDbg, правильно настроенной, должно дебужиться нормально
ЗЫ. Поставь в игнор все исключения в оле.




Ранг: 164.6 (ветеран), 65thx
Активность: 0.120
Статус: Участник
Волшебник

Создано: 29 апреля 2010 15:28
· Личное сообщение · #14

С помощью файлового анализатора выясняем, что никакого пакета нет и модуль писан на Дельфи. Далее его можно прогнать через IDR. Если в Olly, то исключение 0EEDFADE в игнор и бряк на MessageBoxA - прекрано находится противное окошко.

-----
Следуй за белым кроликом




Ранг: 87.8 (постоянный), 10thx
Активность: 0.070
Статус: Участник

Создано: 29 апреля 2010 15:35 · Поправил: gena-m
· Личное сообщение · #15

И что за адреса такие странные 0012хххх для кода
Это стек - дизассемблер его не должен показывать, вернее показывает в специфическом виде без привязки к адресам (ИДА).
Во вторых мне не нужно было справлятся нисчем, поскольку скачання мной прога была не упакованная о чем и написал Isaev и выложил ключ для программ не накрытых протом, так что мне не нужно было справлятся, вслучае если есть прот (видимо случай ekkl) - его нужно вначале снять, а затем смотреть, отсюда у меня с тобой и разница в наличии секции 0037ХХХХ.
Начинаете взлом не с анализа файла(PEiD) а с загрузки в Олли - это неправильно для новичков, отсюда и появляются непонятные вопросы. Если там Аспр, лучше скачай с сайта незапакованную прогу, поскольку Аспр ты не снимешь.
Дизассемблер их вообще на видит.
Прога написана на дельфях, используй специальные программы для анализа дельфей.

-----
Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше




Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 29 апреля 2010 17:21
· Личное сообщение · #16

Секция 37ххххх была следствием включения антиотладки. После выключения плагина секция исчезла.
Программу скачивал с оф. сайта. Только что перекачал и переустановил по новой.
Я не понял, что только я нарываюсь на инструкции чтения портов?
Может какие-то настройки у меня не как у людей?




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 29 апреля 2010 20:25
· Личное сообщение · #17

ekkl пишет:
Я не понял, что только я нарываюсь на инструкции чтения портов?Может какие-то настройки у меня не как у людей?

У меня в процессе всей отладки ни разу не выскакивало странных исключений...
Может тебе Олли скачать другую, т.к. не известно что за сборка у тебя и подо что заточена...
ekkl пишет:
Если данная ситуация описана в статьях Риккардо Нарвахи ткните, пожалуйста, в раздел.

Если это одна из старых версий с аспротектом, то тебе сюда: --> Link <--
А если, как ты говоришь, последняя с офсайта, то ставь бряк на 00670360 и копай.

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh




Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 29 апреля 2010 21:48
· Личное сообщение · #18

Очевидно, после исключения и каким-то образом умудряюсь попадать в область стека. Отсюда и такие инструкции. Совет
Если в Olly, то исключение 0EEDFADE в игнор и бряк на MessageBoxA - прекрасно находится противное окошко. помог. Уже не вываливаюсь на исключениях и в область стека уже не попадаю.
Версия новая. Аспротекта как будто нет.
Олли у меня с ВАСМА.
Пардон, а откуда появились адреса 00670360?




Ранг: 164.6 (ветеран), 65thx
Активность: 0.120
Статус: Участник
Волшебник

Создано: 30 апреля 2010 09:41
· Личное сообщение · #19

Пардон, а откуда появились адреса 00670360? Это собственно и есть функция проверки ключа.

-----
Следуй за белым кроликом




Ранг: 5.9 (гость)
Активность: 0.020
Статус: Участник

Создано: 30 апреля 2010 23:05
· Личное сообщение · #20

Простите, а как вы не неё вышли?




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 30 апреля 2010 23:50
· Личное сообщение · #21

Да в общем куча путей... Каждый ...чет как он хочет! ;)
Ты же находил обработку клика на кнопку ок, можешь оттуда начать, можешь по поиску строк найти что выводится при неправильном ключе и где, а можно брякнуться после вывода сообщения и посмотреть откуда оно вызывается и почему... а можно ещё кучу извратных путей придумать, т.ч. вопрос странный

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh



 eXeL@B —› Вопросы новичков —› IconLover После нажатия ОК ловлю исключение
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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