Техника - молодёжи 1992-12, страница 26

Техника - молодёжи 1992-12, страница 26

Сергей РАСТОРГУЕВ,

кандидат технических наук

О программах-отмычках, взломанных файлах и несанкционированном копировании

(Введение в Пособие по борьбе с хакерами)

Как предупредить покушения на информацию? Можно ограничить доступ к ней посторонним. встроиль в компьютер )амок, отключающий клавиатуру, поставить сейф для дискет, вставить в один из разъемов ПК парольную «заглушку»... Из всего арсенала opi анизационных, технических и програм-мно-annapai ных средств выделим чисто программные. Они просты в тиражировании, технологичны в изготовлении и применении, не требуют каких-либо производственных мощностей, в то же время обеспечивают достаточный уровень защищенности. Впрочем, надежность в этом случае определяется знанием последних достижений общей теории программирования и умением разработчика использовать специальные приемы. Естественно, что новинки систем охраны влекут и совершенствование способов «взлома» — извечное противостояние «щита и меча».

Организовать защиту можно либо в виде пристыкованного к программе блока, либо встроить ее внутрь. В первом случае, как правило, сначала отрабатывают небольшой участок программы, обеспечивающий ее сохранность, потом все остальное. Значит, в принципе хакер может «отбросить» этот кусок, даже не анализируя его. Это делают так: объект взлома запускают на выполнение, а все его действия контролируют специально разработанной резидентной про-траммой-«отмычкой», которая информирует о происходящих замаскированных процессах. В момент завершения работы охранного участка «отмычка» приостанавливает выполнение вскрываемой программы. Ее колы уже полностью загружены в оперативную память (ОЗУ), проведены все подготовительные операции, расшифрованные данные заняли свои места в ячейках памяти и регистрах микропроцессора, и теперь незащищенная задача готова выполнять то, ради чего она и создавалась. Хакер копирует на винчестер содержимое ОЗУ вместе с текущими значениями регистров. Остается только создать небольшую программку, которая будет загружать с винчестера эту усеченную копию, восстанавливать содержимое регистров, и «взломанная» задача станет послушной любому пользователю.

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

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

Преобразование ФОРМАТА ДИСКЕТЫ

24