DaXXoR#9 - воостановление IAT.

Тема в разделе "WASM.BEGINNERS", создана пользователем AndjellaArtavazdovna, 16 дек 2010.

  1. AndjellaArtavazdovna

    AndjellaArtavazdovna New Member

    Публикаций:
    0
    Регистрация:
    3 дек 2010
    Сообщения:
    615
    Всем добрый вечер. Сегодня я с очередным ламерским вопросом. При починке IAT этого крэкми(упакован Aspack 2.12) возникает следующая проблема:
    среди кода переходов в IAT встречаются следующие участки:
    Код (Text):
    1.     JMP DWORD PTR DS:[4930B0]                ; advapi32.RegCloseKey
    2.     JMP DWORD PTR DS:[4930B4]                ; AcGenral.6E3D2211
    3.     JMP DWORD PTR DS:[4930B8]                ; advapi32.RegQueryValueExA
    И
    Код (Text):
    1.     JMP DWORD PTR DS:[4932C8]                ; kernel32.GetOEMCP
    2.     JMP DWORD PTR DS:[4932CC]                ; apphelp.75275E25
    3.     JMP DWORD PTR DS:[4932D0]                ; kernel32.GetProcessHeap
    ImportReconstructor считает элементы AcGenral.6E3D2211 и apphelp.75275E25 не валидными. Соответственно либо IAT не удается починить,либо при запуске дампа получаем нарушение доступа по соответствующему адресу.
    В туторе 35(если я не ошибаюсь) "Введения в крекинг с нуля...." говориться о такой возможности,но разобранный там крэкми прекрасно дампиться ,чиниться и запускается. И наконец вопрос:что делать с этими элементами? Каким образом обычно решаются такие проблемы?
     
  2. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    я в этом не очень силен. но может попробовать вместо ds через cs.
    а если я правильно понимаю то надо попробовать в bios выключить флаг DEP (Data Execution Prevention)
    обычто в настройке процессора.
     
  3. baldr

    baldr New Member

    Публикаций:
    0
    Регистрация:
    29 апр 2010
    Сообщения:
    327
    AndjellaArtavazdovna,

    Сдампи полученный из-под ImportReconstructor'а PE, глянь что там вышло. Можно приаттачить, или ссылку на исходный крэкми.
     
  4. AndjellaArtavazdovna

    AndjellaArtavazdovna New Member

    Публикаций:
    0
    Регистрация:
    3 дек 2010
    Сообщения:
    615
    Ну наконец! Хоть что-то! Смотрел в OllyDbg. Дело там вот в чем. Элементы эти в дампе остаются,загрузчик пытается импортировать указанные функции из длл соответствуюших элементам IT,в результате не найдя их
    записывает по их адресам нули и при запуске получаем (если не ошибаюсь) Access violation when reading 0x00000000. apphelp.dll и AcGenral.dll вообще отсутствуют в IT - насколько я понял загружаются по умолчанию также как ntdll.dll. И что их элементы делают в этой IAT не знаю. (если что не так поправьте). Крекми запакован Aspack 2.12 - так утверждает автор по крайней мере. Я только начал разбираться с распаковкой,сломал 4 крякмиса упакованных разными версиями Aspack ,но ни с чем подобным не сталкивался.
    Единственное что пока пришло в голову - написать тупой патч,который заполнил бы эти 2 адреса нужными значениями.
    baldr
    Заранее спасибо. Дамп и крекми надеюсь смогу прикрепить на днях - выход в инет только на работе -снегопады, связи нет и USB-модем не пашет.
     
  5. AndjellaArtavazdovna

    AndjellaArtavazdovna New Member

    Публикаций:
    0
    Регистрация:
    3 дек 2010
    Сообщения:
    615