Безопасность IIS

       

Кодировщик сценариев


Одним из недостатков использования сценариев является то, что любые алгоритмы и код собственной разработки видны любому пользователю, которому разрешено редактировать файл, так как они хранятся в виде обычного текста. Этот недостаток в защите интеллектуальной собственности очень имеет большое значение, если вы предоставляете услуги веб-разработки другим пользователям или используете стороннюю помощь в поддержке сайта, так как у посторонних пользователей появляется возможность копирования кода. Кодировщик сценариев представляет собой простую утилиту командной строки, которую можно бесплатно загрузить с сайта http://msdn.microsoft.com/scripting/. Эта утилита позволяет кодировать сценарии серверной части, чтобы их исходный код был недоступен для просмотра или изменения.

После того как сценарий закодирован, изменение любой части результирующего файла сделает его недействительным, что обеспечит его целостность. Клиенты, для которых разработан код, не смогут его изменять, что значительно упрощает решение проблем, связанных с ошибками, так как в данном случае вы будете уверены в том, что код не был изменен. Данная мера не предотвратит доступ хакера к коду, однако определенно нарушит планы большинства не слишком осведомленных пользователей. Сразу после отладки и тестирования сценария примените данную утилиту для кодирования окончательного сценария. Она кодирует только исходный код сценария, а остальное содержимое файла, представленное открытым текстом, не кодируется. Кодировщик сценариев использует маркеры в коде сценариев для определения того, с какого места необходимо начать кодирование.

Следующий пример кода на языке VBScript демонстрирует использование маркера для кодирования всего кода, кроме сообщения об авторских правах:

<SCRIPT LANGUAGE="VBScript"> 'Copyright© 2002. Ваша компания. Все права защищены. '**Start encode** Код вашей собственной разработки расположен здесь </SCRIPT>

При выполнении кодировщика сценариев весь текст сценария до стартового маркера не кодируется, а данные, находящиеся после маркера, будут закодированы. По завершении процесса кодирования указатель языка в теге <SCRIPT> сменится на

<SCRIPT LANGUAGE="VBScript.Encode" >



Содержание раздела