6.3. Редактор кода hiew
HIEW – необыкновенно мощный инструмент, предназначенный для анализа и редактирования программ непосредственно в исполняемом коде. Большим достоинством данного продукта является то, что он совмещает в себе редактор кода и дизассемблер, что позволяет его очень эффективно использовать для анализа больших программ, занимающих по объему несколько мегабайт, его использование позволяет человеку, осуществляющему исследование ПО, зачастую, полностью отказаться от отладчиков и дизассемблеров.
Дизассемблер, встроенный в HIEW является интерактивным. Его мощь может быть сравнима только с IDA.
HIEW незаменим при анализе программ как в пару килобайт (когда расточительно запускать ради них IDA), так и в пару мегабайт (когда IDA дольше будет дизассемблировать, чем злоумышленник сносить защиту с помощью HIEW).
Если IDA можно сравнить с тяжелым стратегическим оружием типа артиллерии, то работа с HIEW больше напоминает работу разведчика.
Наиболее употребительный формат запуска HIEW следующий – HIEW.EXE имя-файла, после чего HIEW перейдет в режим просмотра – редактирования данного файла. Возможно три вида режимов исследования – текстовый, шестнадцатиричный, а также в виде мнемоник ассемблера (рис. 6.7.)
Рис. 6.7. Режимы исследования программы в HIEW
Первоначально исследователь находится в режиме просмотра программы. Для того, чтобы перейти в режим ее редактирования, необходимо воспользоваться функциональной клавишей F3 (EDIT). В данном режиме пользователь может исправить шестнадцатиричный код (в том числе, воспользоваться распространенной операцией xor), ввести инструкцию на языке ассемблера, ввести код для шифровки/дешифровки фрагмента и т.д. Запись исправлений осуществляется по команде UPDATE (F9).
По клавише F8 (HEADER) можно просмотреть заголовок исследуемого файла.
Команда REFER (F6) позволяет найти в коде программы ссылки на некоторый адрес, команда GOTO (F5) позволяет перейти непосредственно к указанному адресу.
Большим достоинством HIEW является наличие в нем так называемой крипт-системы. Она позволяет расшифровывать программу «на лету», не отрываясь от анализа.
- Модульная архитектура технических средств защиты по от несанкционированного использования
- Функционирование подсистем и модулей системы защиты по от несанкционированного использования
- Электронные ключи hasp
- Глава 1. Методы и средства обратного проектирования.
- 1.1. Понятие обратного проектирования
- 1.2. Основные приемы, используемые злоумышленником при отладке и дизассемблировании программного обеспечения
- 1.2.1. Специфика атак на модули проверки корректности ключевой информации
- 1.2.2. Специфика атак на модули проверки истечения временного срока работы программы или ограничения по количеству ее запусков
- 1.2.3. Отлов злоумышленником вызова WinApi функций при взломе по
- 1.3. Мониторинг событий
- Глава 2. Методы противодействия обратному проектированию
- 2.1. Методы противодействия отладчикам
- 2.1.1. Защита от отладчиков реального режима
- 2.1.2. Защита от отладчиков защищенного режима
- 2.1.3. Методы, основанные на невозможности полного эмулирования отладчиком среды загрузки программы
- 2.2. Методы противодействия дизассемблированию программного обеспечения
- 2.3. Защита, основанная на человеческом факторе злоумышленника
- Глава 3. Общие методы защиты программ от отладки и дизассемблирования
- 3.1. Использование недокументированных команд и недокументированных возможностей процессора
- 3.2. Шифрование кода программы
- Глава 4. Эмуляторы процессоров. Использование эмуляторов для взлома и защиты программного обеспечения.
- Глава 5. Защита исходных текстов программного обеспечения
- Глава 6. Идентификация и аутентификация субъектов
- 6.1. Идентификация и аутентификация пользователей с использованием технических устройств
- 6.2. Идентификация и аутентификация с использованием индивидуальных биометрических характеристик пользователя
- 7. Защита от разрушающих программных воздействий
- 7.1. Понятие разрушающего программного воздействия
- 7.2 Модели взаимодействия прикладной программы и рпв
- 7.3 Компьютерные вирусы как класс рпв
- 7.4. Защита от рпв. Изолированная программная среда
- Глава 8. Руководящие документы России
- Приложение
- 6.1. Отладка программ в отладчике SoftIce
- 6.2. Дизассемблирование программ с помощью интерактивного дизассемблера Ida Pro
- 6.3. Редактор кода hiew
- Лабораторные работы