Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
125
Добавлен:
02.05.2014
Размер:
616.96 Кб
Скачать

60 - Средства копирования программы из памяти. Карты копирования. Программные средства (Autohack, Intruder).

AUTOHACK – программа, предназначенная для автоматического взлома различных защит присоединительного типа, может также применяться для распаковки программ упакованных "крутыми" EXE-упаковщиками. Взлом программы осуществляется только при возможности хоть раз запустить легальную копию программы. Снятие защиты обеспечивается в более чем в 90% процентах прикрепляющихся защит.

Режимы работы AutoHack-а:

1) Распаковка трассировкой. По-моему в данном режиме работают почти все распаковщики программ. В данном режиме возможна распаковка программ, не защищенных от трассировки. Режим работает следующим образом: программа загружается в память, перехватывается первое прерывание, возводится флажок пошаговой трассировки (поэтому распаковка в этом режиме относительно медленно работает), управление передается загруженной программе, далее обработчик первого прерывания анализирует сегмент кода трассируемой программы и ждет смены регистра CS (число смен регистра CS запрашивается во время запуска под именем "глубина трассировки"). После этого сбрасываются дампы памяти, и операция повторяется с загрузкой программы с другого начального адреса.

ВНИМАНИЕ! Если задать слишком большую глубину трассировки, то произойдет запуск распаковываемой программы.

2) Стандартный режим взлома. Режим работы программы основанный на режиме перехвата определенных моментов после отработки механизма защиты и сброса дампов памяти.

3) Режим взлома с поддержкой таблиц компиляторов. Идентичен второму режиму, но нацелен на определенные компиляторы, поэтому взламывает более корректно. Но если взламывается программа откомпили­рованная неизвестным AutoHack-у компилятором, то произойдет запуск взламываемой программы с последующими глюками. Я постараюсь исправить это в основной (не beta) версии.

Режимы работы при наличии оверлеев:

1) Вообще не копировать. Иногда оверлеи в файлах не несут какой либо полезной информации, например информация для отладчика, тогда в готовом файле она просто не нужна.

2) Копировать оверлей к полученному файлу. Ну думаю объяснять не требуется, но некоторые программы могут перестать работать, например те которые читают оверлейные данные по фиксированным смещениям относительно начала файла.

3) Не копировать, но подставлять при запуске старое имя. Новый, но очень простой метод. К полученному файлу дописывается небольшой кусочек кода, который меняет в 'Environment' имя только что запущенной программы на старое. Поэтому, если программа захочет открыть себя для чтения оверлеев, она будет читать из старого файла.

ВНИМАНИЕ! При запуске похаченной программы в этом режиме, в этом же каталоге должен находится и старый файл.

INTRUDER предназначен для снятия внешней защиты программ, скомпилированных на Turbo Pascal /Borland Pascal 7.0, Microsoft C, Borland C++, Turbo C. При этом смысл внешней защиты несущественен - это может быть и самопальный упаковщик, и привязка к дискете/компьютеру и т.д. - INTRUDER все равно приводит программу к тому виду, в котором она была после компиляции (или стремится максимально приблизиться к этому).

Основные достоинства.

.PAS и .C startup-код определяется 100%.

INTRUDER во многих случаях определяет размер кода с точностью ДО БАЙТА! В тех случаях, когда не удается точно определить размер кода, INTRUDER стремится максимально приблизить его размер к истинному. В случае точного определения конца кода результирующий размер будет отличаться от исходного на 32 байта для программ, написанных на BP/TP, максимум на 40-50 байт для BCPP/TC программ, и, наконец для MSC длина кода не отличается от истинной. Для CLIPPER 'а длина может отличаться за счет пустых строк заголовка, которые вставляет компилятор.

ТОЧНО определяется точка входа и стек.

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

Введена поддержка оверлеев.

Использование:

Вообще-то INTRUDER можно использовать с любыми программами, ничего фатального в принципе не должно произойти, но результат будет, только если программа написана на языке, поддерживаемом INTRUDER ом. Если startup-код найден - вы тут же получите крэкованный экзешник, если нет - ваша программа просто запустится и все. Для открэковки запустите INTRUDER [имя_файла_для_открековки] [ключи_для_файля_для_отк ковки]. Дальнейшее будет ясно из status screen. Если в крекуемой программе обнаружены оверлеи, вы получите соответствующее предупреждение, а в конце работы - предложение дописать оверлейные данные к открекованному файлу. Если все прошло нормально - получаете CRACKED.EXE. В качестве параметра можно указывать не только .EXE, но и .COM файлы, но они обязательно должны находится в текущей директории. Если вам не нужны дампы памяти - можете пользоваться HACK.BAT <имя_файла>.

Соседние файлы в папке Шпоры по защите информации