mirror of
https://github.com/Obfuscator-Collections/VMProtect.git
synced 2024-12-26 16:29:34 +03:00
5ec92ee05e
Version 3.x.x
135 lines
9.1 KiB
HTML
135 lines
9.1 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<link rel="Stylesheet" type="text/css" href="default.css" />
|
||
<meta http-equiv="Content-Type" content=
|
||
"text/html; charset=utf-8" />
|
||
|
||
<title>Секция "Функции для защиты"</title>
|
||
<style type="text/css">
|
||
/*<![CDATA[*/
|
||
div.c2 {text-align: center}
|
||
/*]]>*/
|
||
</style>
|
||
</head>
|
||
|
||
<body>
|
||
<h1>Секция "Функции для защиты"</h1>
|
||
|
||
<p>Секция предназначена для выбора защищаемых функций.</p>
|
||
<p><img src="images/project_functions.png" /></p>
|
||
<h3 id="AddFunction">Добавление функции</h3>
|
||
<p>Для того чтобы добавить новый объект в проект, нажмите кнопку "Добавить функцию" на панели инструментов, либо выберите этот пункт в контекстном меню:</p>
|
||
<p><img src="images/project_functions_menu.png" /></p>
|
||
<p>Появится диалог добавления функции:</p>
|
||
<p><img src="images/project_add_function.png" /></p>
|
||
<p>Задайте адрес функции или выберите нужную функцию из списка на вкладке "Функции", начав набирать ее имя в строке быстрого поиска. Вы можете добавить сразу несколько функций, используя множественное выделение. Все выделенные функции будут добавлены с выбраными опциями защиты.</p>
|
||
<p><strong>Опции</strong></p>
|
||
<ul>
|
||
<li><a name="CompilationTypes" id=
|
||
"CompilationTypes"><strong>Тип компиляции</strong></a> -
|
||
выбрать тип компиляции объекта. Правильный выбор способа защиты
|
||
от изучения и взлома для каждого защищаемого объекта
|
||
(процедуры, функции, фрагмента кода) обеспечит оптимальное
|
||
соотношение между защищенностью кода и его быстродействием.
|
||
VMProtect позволяет пользователю установить следующие типы
|
||
компиляции для каждого защищаемого объекта:</li>
|
||
<ul>
|
||
<li><strong>Мутация.</strong> Исполняемый код
|
||
видоизменяется на уровне команд процессора - существующие
|
||
команды видоизменяются, добавляются различные мусорные
|
||
команды и т.д. Данный тип компиляции относительно слабо
|
||
защищает обрабатываемый код от взлома и анализа и главным
|
||
образом препятствует определению обрабатываемых функций с
|
||
помощью сигнатурных анализаторов (PEiD+KANAL, IDA+FLIRT и
|
||
т.д.). Этот тип компиляции целесообразно применять при
|
||
защите библиотечных функций, так как они, как правило, не
|
||
нуждаются в защите от взлома и анализа и достаточно будет
|
||
только изменить их сигнатуры, чтобы взломщик не смог
|
||
автоматически определить, какие именно библиотеки
|
||
используются в приложении. При использовании мутации
|
||
степень защиты от взлома и анализа низкая, скорость
|
||
исполнения кода высокая.</li>
|
||
|
||
<li><strong>Виртуализация.</strong> Исполняемый код
|
||
переводится в байт-код, исполняемый на виртуальной машине.
|
||
Данный тип компиляции следует применять для всех критичных
|
||
участков кода, где помимо противодействия взлому и анализу
|
||
важна скорость работы. При использовании виртуализации
|
||
степень защиты от взлома и анализа средняя, скорость
|
||
исполнения кода средняя.</li>
|
||
|
||
<li><strong>Ультра (мутация + виртуализация).</strong>
|
||
Исполняемый код видоизменяется на уровне команд процессора
|
||
и уже после этого переводится в байт-код, исполняемый на
|
||
виртуальной машине. Данный тип компиляции следует применять
|
||
для всех участков кода, где не важна скорость работы.
|
||
Степень защиты от взлома и анализа высокая, скорость
|
||
исполнения кода низкая.</li>
|
||
</ul>
|
||
|
||
<li id="LockToKey"><strong>Привязать к серийному номеру</strong> - при включении данной опции защищенная функция будет <a href="manager/features.htm#lock">недоступна без ввода валидного серийного номера</a>. Таким образом можно, например, ограничивать доступ к определенным функциям приложения в незарегистрированной версии.</li>
|
||
</ul>
|
||
|
||
<p id="Search"><strong>Поиск</strong></p>
|
||
|
||
<p>Необходимые объекты можно отыскать по их имени в универсальном быстром поиске:</p>
|
||
<p><img src="images/project_functions_search.png" /></p>
|
||
|
||
<p>В строке поиска можно использовать стандартные символы подстановки:</p>
|
||
<ul>
|
||
<li><strong>*</strong> - заменяет группу символов произвольной длины;</li>
|
||
<li><strong>?</strong> - заменяет любой одиночный символ.</li>
|
||
</ul>
|
||
|
||
<h3 id="AddFolder">Добавление папки</h3>
|
||
<p>Добавление папки осуществляется с помощью контекстного меню:</p>
|
||
<p><img src="images/project_functions_menu.png" /></p>
|
||
<p>Папки используются для группировки защищаемых объектов в
|
||
дереве проекта, а также для группового изменения параметров
|
||
защиты (включение в компиляцию, тип компиляции) для всех
|
||
объектов из этой папки.</p>
|
||
<p>Задайте имя новой папке:</p>
|
||
<p><img src="images/project_add_folder.png" /></p>
|
||
|
||
<h3>Редактирование объектов</h3>
|
||
<p>В правой части окна отображается содержимое выбранного
|
||
объекта. Если в дереве проекта выбран защищаемый объект, то с
|
||
правой стороны отображается дизассемблированное представление
|
||
этого объекта:</p>
|
||
|
||
<p><img src="images/project_functions_content.png" alt=
|
||
"Код" /></p>
|
||
<p>Щелчок правой кнопкой мыши по строчке кода вызывает контекстное меню:</p>
|
||
<p><img src="images/project_functions_menu3.png" /></p>
|
||
<ul>
|
||
<li><a name="ExtAddress" id="ExtAddress"><strong>Внешний
|
||
адрес</strong></a> - включить выбранный адрес в список <a href=
|
||
"project_options_external_addresses.htm">внешних адресов</a>;</li>
|
||
|
||
<li><strong>Конец функции</strong> - ограничить список
|
||
команд, которые будут обработаны в процессе компиляции;</li>
|
||
</ul>
|
||
|
||
<p>Если в дереве проекта выбрана папка, то с правой стороны
|
||
отображается список функций, входящих в эту папку:</p>
|
||
|
||
<p><img src="images/project_functions_content2.png" /></p>
|
||
|
||
<p>Перемещать функции из папки в папку можно простым
|
||
перетаскиванием при помощи мыши.</p>
|
||
|
||
<br />
|
||
<br />
|
||
<br />
|
||
<br />
|
||
<hr noshade="noshade" size="1" />
|
||
|
||
<div align="center">
|
||
© 2006-2015 Copyright VMProtect Software
|
||
</div>
|
||
</body>
|
||
</html>
|