Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #66, МАЙ 2006 г.

термоядерный инлайн

GETORIX | INT3

Спецвыпуск: Хакер, номер #066, стр. 066-068-1


[GETORIX@INT3.RU]

INLINE-ПАТЧ ПРИЛОЖЕНИЯ ДЛЯ КПК

КАЖДАЯ ЗАЩИТА ТРЕБУЕТ ИНДИВИДУАЛЬНОГО ПОДХОДА — ПРЯМОГО ИЗМЕНЕНИЯ КОДА ПРОГРАММЫ, ГЕНЕРАЦИИ ПРАВИЛЬНОГО КЛЮЧА ИЛИ INLINE-ПАТЧА. ОБЫЧНО РЕВЕРС-ИНЖЕНЕРЫ КПК ИСПОЛЬЗУЮТ ТОЛЬКО ПЕРВЫЕ ДВА, ОДНАКО ПОНЯТЬ И НАУЧИТЬСЯ ПРИМЕНЯТЬ ТРЕТИЙ — СОВСЕМ НЕ ЛИШНЕЕ

Весь материал данной статьи приведен исключительно в образовательных целях. Использование информации в преступных целях в первую очередь попадает под статьи 146 и 273 УК РФ, автор не несет ответственности за ее возможное применение на практике.

[зачем мучиться каким-то инлайном], когда можно получить тот же эффект быстрой и надежной заменой пары байтиков? В общем незачем, только мир не стоит на месте и авторы программ не сидят сложа руки, а постепенно совершенствуют средства защиты. Пока можно радоваться, поглядывая в дизассемблере на нетронутый листинг, но придет время, и на этом же месте мы увидим кучу мусора. Так что призываю готовиться и планомерно практиковаться в пропатчивании программ во время их исполнения, то есть осваивать навыки inline-патчинга.

Начнем с теории. Inline-патч представляет собой подпрограмму для изменения оригинального исполняемого кода программы, которая запускается непосредственно до начала выполнения этого кода. Передача управления первоначальной программе также осуществляется из тела inline-пачта (размещается практически в любом свободном месте файла основной программы).

КАК ОБЫЧНО, ДЛЯ «РАЗБОРА» НАМ ПОНАДОБЯТСЯ:

? ОТЛАДЧИК, В РОЛИ КОТОРОГО С УСПЕХОМ ВЫСТУПИТ КАК EVC4 SP4, ТАК И IDA 4.9 С WINCE DEBUGGER;

? РЕДАКТОР РЕСУРСОВ, ОН ЖЕ RESOURCEHACKER;

? HEX-РЕДАКТОР (ЗАМЕЧАТЕЛЬНО ПОДОЙДЕТ WINHEX 12.5);

? PE-РЕДАКТОР (НАПРИМЕР CFF EXPLORER II);

? ЭМУЛЯТОР MICROSOFT DEVICE EMULATOR (ДЛЯ БЕЗОПАСНОСТИ САМОЙ ЖЕЛЕЗКИ РЕКОМЕНДУЮ ПРОВОДИТЬ ИССЛЕДОВАНИЯ ИМЕННО НА НЕМ).

КСТАТИ, ДЛЯ ПОЛНОГО СЧАСТЬЯ БЫЛО БЫ НЕПЛОХО ИМЕТЬ ПУХЛЕНЬКИЙ БАГАЖ ЗНАНИЙ О МЕТОДАХ АДРЕСАЦИИ, ПРИМЕНЯЕМЫХ В АРХИТЕКТУРЕ ARM, СПОСОБАХ УКЛАДЫВАНИЯ ДАННЫХ В СТЕК, ФОРМИРОВАНИИ ОПКОДОВ ИНСТРУКЦИЙ, ARM-АССЕМБЛЕРЕ И INLINE-ПАТЧАХ.

[в качестве объекта исследования] стала замечательная программа — гитарный тюнер. Для анализа спектра сигнала в ней используется встроенный в КПК микрофон, затем «услышанная» нота отображается на кривой, непонятной с первого взгляда, причем в соответствии с выбранными в меню инструментами она принимает особый вид. Более того, программа может самостоятельно воспроизводить звуки различной частоты. В общем, разобравшись в обращении с ней, ты придешь в восторг. Название этого древнего шедевра (сайт не обновляется с 2004 года) — PhonTuner v2.2.2.

Программа небольшая, смело качаем (www.phonature.com:8092/home/products_pdaApp_ppc_PhonTuner.htm), устанавливаем на КПК или на эмулятор, через ActiveSync переписываем исполняемый файл Phontuner.exe и загружаем его в IDA. На всякий случай напомню, как это делается:

1 В IDA ВЫБИРАЕМ FILE> NEW.

2 В ОКНЕ ЖМЕМ НА ЗАКЛАДКУ PDAS> HANDHELDS> PHONES.

3 ВЫБИРАЕМ POCKETPC ARM EXECUTABLE.

4 ПОСЛЕ ВЫБОРА ФАЙЛА ЗАПУСКАЕТСЯ WIZARD, НА ЕГО ПЕРВОЙ СТРАНИЦЕ СТАВИМ ОБЕ ГАЛОЧКИ (IMPORTED DLL OPTIONS И ANALYSIS OPTIONS).

Содержание  Вперед на стр. 066-068-2