Если у вас уже есть опыт взлома программ, и не хотите "step-by-step" этому учиться, идите сразу к примерам:
Пошли ссылку на нас другу: |
|
-Исследование компонентов Delphi
Как отучить игры от проверки CD-ROM (на примере Hellfire)
Blowfish Advanced простая защита - простой взлом
Перехват вызовов Win32 API фукнций под Windows 95/98/NT
Исследование переносимого формата исполнимых файлов "сверху вниз"
Итак Вы приняли решение изучать Reverse Engineering, но не знаете с чего начинать. Мы попытаемся Вам помочь и укажем, что Вы должны изучить в первую очередь. Не воспринимайте это как догму, просто попробуйте придерживаться наших советов.
Первый, и наиболее важный шаг: Вы должны скопировать и установить на свой компьютер программу-отладчик, с помощью которой будете исследовать все остальные программы. Отладчик предназначен для обнаружения ошибок в программе и их устранения непосредственно в процессе ее выполнения. Конечно, никаких ошибок искать мы не будем, просто для работы нам необходимы все те функции, которые предоставляет отладчик. Наиболее важным свойством отладчика является то, что исследуемая программа полностью находится под его контролем, и Вы легко можете влиять на ход ее выполнения. Для нас это действительно наиболее нужное свойство отладчика - без возможности контроля над ходом выполнения программы мы не добъемся никаких положительных результатов.
Следующий абзац описывает достаточно сложные для начинающих детали архитектуры процессора 80х86, поэтому Вы смело можете его пропустить. Но сказать о них все-же стоит. Из всех существующих для Windows-платформы отладчиков, наибольшей популярностью вполне заслуженно пользуется SoftICE фирмы Numega. Вы можете скопировать его в разделе Инструменты.
Чем же SoftICE отличается от остальных подобных ему програм?. Наиболее важным отличием является то, что SoftICE работает в 0-м кольце защиты. Не пугайтесь, если Вы пока ничего не знаете о кольцах защиты, существующих в архитектуре 32-разрядных процессоров фирмы Intel и предназначенных для ограничения взаимодейстия выполняющихся программ между собой и с операционной системой. Обычно ОС имеет права полного доступа ко всем остальным выполняемым программам, т.к. она работает в 0-м кольце защиты (наиболее привилегированном), системные задачи выполняются в 1-м и 2-м кольцах, а приложения - в 3-м (наименее привелигерованном). Частично осуществлять управление запущенными приложениями можно из 1-го и 2-го кольца защиты, именно так работает большинство отладчиков из крупных пакетов для разработки программ. Разработчики из Numega подошли к делу более профессионально и создали SoftICE - отладчик, который работает в 0-м кольце защиты (для этого он загружается до загрузки ядра ОС Windows) и позволяет полностью контролировать не только все выполняемые системой задачи, но и саму ОС Windows.
Скоро появится статья полностью описывающая процесс установки, конфигурирования и работы с SoftICE. Пока дадим лишь несколько основных советов:
Найдите
также
строку
PHYSMB=32
в ней
указывается
количество
оперативной
памяти,
установленной
на
компьютере.
Замените
указанное
по
умолчанию
значение (32)
на то,
количество,
которое
соответствующее
для Вашего
компьютера.
Например,
если у Вас 64
Мб, то
напишите
PHYSMB=64
И, наконец,
самое
важное. В
самом конце
файла
найдем
следующий
фрагмент:
; ***** Examples of export symbols that can be included *****
; Change the path to the appropriate drive and directory
;EXP=c:\windows\system\vga.drv
;EXP=c:\windows\system\vga.3gr
;EXP=c:\windows\system\sound.drv
;EXP=c:\windows\system\mouse.drv
;EXP=c:\windows\system\netware.drv
;EXP=c:\windows\system\system.drv
;EXP=c:\windows\system\keyboard.drv
;EXP=c:\windows\system\toolhelp.dll
;EXP=c:\windows\system\shell.dll
;EXP=c:\windows\system\commdlg.dll
;EXP=c:\windows\system\olesvr.dll
;EXP=c:\windows\system\olecli.dll
;EXP=c:\windows\system\mmsystem.dll
;EXP=c:\windows\system\winoldap.mod
;EXP=c:\windows\progman.exe
;EXP=c:\windows\drwatson.exe
; ***** Examples of export symbols that can be included for Windows 95
*****
; Change the path to the appropriate drive and directory
;EXP=c:\windows\system\kernel32.dll
;EXP=c:\windows\system\user32.dll
;EXP=c:\windows\system\gdi32.dll
;EXP=c:\windows\system\comdlg32.dll
;EXP=c:\windows\system\shell32.dll
;EXP=c:\windows\system\advapi32.dll
;EXP=c:\windows\system\shell232.dll
;EXP=c:\windows\system\comctl32.dll
;EXP=c:\windows\system\crtdll.dll
;EXP=c:\windows\system\version.dll
;EXP=c:\windows\system\netlib32.dll
;EXP=c:\windows\system\msshrui.dll
;EXP=c:\windows\system\msnet32.dll
;EXP=c:\windows\system\mspwl32.dll
;EXP=c:\windows\system\mpr.dll
с помощью
этих строк
Вы можете
подключить
к SoftICE
системные
библиотеки
экспортируемых
функций. Для
этого Вы
должны
убрать в
начале
строк
символ ";",
который
означает,
что строка
является
комментарием,
и изменить
путь к файлу
на тот,
который
существует
у Вас на
компьютере.
Например,
если ОС Windows98 у
Вас
установлена
в каталог win98
диска с, то
вместо c:\windows\system\
Вы должны
написать c:\win98\system.
Внимание!
Обязятельно
проверьте
наличие
всех,
включаемых
Вами файлов
на диске (в
разных ОС их
состав
меняется) и
если какого-то
не найдете -
не
включайте
его (т.е. не
убирайте в
начале
строки
символ ";").