Вы в разделе: Ловушка для взломщика
Химия защиты
Напоследок приведу несколько несложных правил, которые позволят разработчику схимичить при создании защиты ПО.
• Применяйте нелинейные (в том числе событийно-управляемые) алгоритмы защиты. Например, можно разбить проверку прав пользователей на несколько частей и выполнять их в произвольном порядке в различные моменты времени.
• Используйте для хранения данных защиты системные ресурсы Windows: дополнительную память, выделяемую для параметров окон и доступную посредством функций SetWindowLong/GetWindowLong или SetProp/GetProp; атомы; локальные хранилища потоков (TlsAlloc) и т. п.
• В рамках алгоритма защиты сравнивайте два числа каким-нибудь нестандартным способом: например, рассчитывается величина, которая в случае правильной регистрации должна быть отрицательной, и из нее извлекается квадратный корень, а установка флага свой-чужой выносится в обработку ошибки области определения.
• Напишите несколько замысловатых функций, имитирующих действия с якобы регистрационной информацией, + это отвлечет хакера от настоящей защиты.
• Разместите в разных частях программы несколько различных по содержанию функций с одинаковым эффектом.
• Создайте несколько разных переменных с различными значениями для обозначения одного и того же события (например, попытки нарушения защиты).
• Не обращайтесь к переменным, содержащим информацию о защите, напрямую; используйте косвенную адресацию, возможно, с применением стандартных библиотечных функций работы с памятью.
• Выполняйте стандартные операции в ответ на нестандартные сообщения Windows, а защитные действия, наоборот, в ответ на стандартные сообщения, такие как WM_PAINT; подмену можно производить прямо в цикле обработки сообщений.
• Если программа рассчитана на работу с Internet, не упустите возможность встроить в нее проверку базы пользователей через сеть.
Этот список каждый разработчик легко продолжит сам. Много свежих идей можно почерпнуть из Internet и телеконференций. Все это требуется творчески переработать (чтобы алгоритм защиты был уникальным, хотя и основанным на известных методах) и объединить + избыточность в защите никогда не мешает. Довольно часто кажущиеся прямо-таки идеальными схемы защиты на самом деле легко взламываются с помощью простого, но не учтенного программистом приема. Лучше всего, конечно, иметь знакомого честного хакера, который возьмется поломать вашу программу, чтобы выявить слабые места защиты, но такая возможность есть не у всех. Прочим остается лишь на свой страх и риск принять условия игры и вступить в интеллектуальное противоборство со взломщиками.
Страницы: [1] [2]
Советуем посетить:
Организация праздника: организация праздника центр, организация праздника.праведный Сергий Радонежский о кротости |
 |
 |
Полезная информация |
|
 |
»
«··· «··· «··· «··· «···
»
«··· «··· «··· «··· «··· «··· «··· «··· «··· «··· «··· «··· «··· «···
»
«··· «··· «··· «··· «··· «···
»
«··· «··· «··· «··· «··· «··· «··· «···
»
«···
»
«··· «··· «··· «··· «··· «··· «··· «··· «··· «···
»
«··· «··· «··· «···
»
«··· «··· «··· «··· «··· «··· «··· «···
»
«··· «··· «··· «··· «··· «··· «··· «···
»
«···
|
| Компьютерные статьи |
|
|
|
|
|
|
|
|