Главная » Статьи » Распаковка |
Распаковка tElock 0.98
0. Что нужно: - любая прога с tElock 0.98 - кучка съедобных мозгов - руки, управляемые этими мозгами - подстриженные ногти, чтоб удобно барабанить по клаве - OllyDbg 1.10 с плугинами и прочей херью - ImpRec 1.6f + плугин bi0w0rM’а для tElock 1. Поиск OEP
Найти OEP совсем легко. Засовываем прогу в OllyDbg, заходим в Debugging Options->Exceptions и игнорим все типы исключений:
Ну и воспользуемся плугином для прятания IsDebuggerPresent, нажмем Hide.
Теперь думаем... когда будет распаковываться 2-я секция(тут olly сказал, что она содержит data), то по идее 1-я секция(секция кода) должна быть уже распакована, а нам как раз в нее и надо :) Тогда заходим в OllyDbg Memory Map(Alt+M) и ставим memory breakpoint на запись второй секции: пускаем прогу, брякнулись здесь: 006BDDA8 AA STOS BYTE PTR ES:[EDI] 006BDDA9 69D2 A5B0CD4B IMUL EDX,EDX,4BCDB0A5В EDI VirtalAddress второй секции... Теперь надо бы попасть в секцию кода, то есть словить момент, когда EIP окажется в ее адресном пространстве. поэтому можно предположить, что если мы поставим memory breakpoint on access на эту секцию, то он нигде больше не сработает, кроме как на OEP, ставим memory breakpoint on access первой секции :) И бряк должен сработать на "on execution", прямо на OEP: 0061E0AC 55 PUSH EBP 0061E0AD 8BEC MOV EBP,ESPспертых байтов нет, красота! Пропишем в ImpRec RVA адрес OEP - 21E0AC(то есть VA_адрес(0061E0ACh) - ImageBase(00400000h)). Пропишем в ImpRec такой OEP, RVA и размер таблицы импорта он определит вроде правильно. Жмем IAT AutoSearch, Get Imports. видим, что не все функции определились. в версии 1.6 есть хорошая опция - Disassemble/HexView, дизасмим любую кривую функцию:
Хехе :) Производится переход по DWORD значению из адреса C00734+1 - по
этому адресу лежит адрес нужной API-функции, хитр0 :) для таких целей
был написан плугин, поставляется с ImpRec, но его не достаточно для
версии 0.98! Поэтому я взялся за написание. Этот плагин можно взять здесь . После него импорт можно прикрутить к дампу(Fix Dump...). вот и все!
Источник: http://www.dotfix.net/ | |
Просмотров: 2818 | Рейтинг: 0.0/0 |
Всего комментариев: 0 | |