2 Контроль интерактивных программ



5.2.2. Контроль интерактивных программ

Программная среда в результате появления Интернета превратилась в среду интерактивных программ, примерами которой являются Java и Active X. В этой среде пользователь взаимодействует с сервером с помощью сети. Сервер загружает приложение (апплет) на пользовательский компьютер, который затем его выполняет. При использовании такой стратегии имеет место несколько рисков. Прежде всего нужно верит, что то, что загружается, делает именно то, что должно делать.

Ранее утверждалось, что при использовании таких языков как Java невозможно занести вирус из-за ограничений, встроенных в язык для управления доступом к файловой системе и для управления выполнением программы. Сейчас эти заявления достаточно эффективно опровергнуты. Из-за значительного риска существует несколько уровней гарантий безопасности, которые должен получить пользователь перед использованием этой технологии:

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

Модели безопасности Java и ActiveX

Java - это язык программирования, разработанный Sun Microsystems для того, чтобы был механизм, позволяющий загружать по Интернету программы и выполнять их на большом числе рабочих станций и персональных компьютеров. Java является интерпретируемым при выполнении, и на самом деле выполняется при помощи программы, называемой виртуальная машина Java(JVM). JVM имеется для Unix, Windows, Macintosh и ряда других ОС, что позволяет выполнять апплеты Java в гетерогенной компьютерной среде.

Модель безопасности Java - строгий контроль среды, в которой выполняются апплеты, с помощью создания безопасной отдельной Среды выполнения для работы апплета. Апплеты могут взаимодействовать только с сервером, с которого они были загружены, и им запрещено обращаться к локальным дискам и устанавливать сетевые соединения. Но в Java было обнаружено много ошибок, которые позволяют профессионалам создавать апплеты, легко обходящие ограничения безопасной Среды. Sun ответил на это, сделав "стенки" безопасной Среды выше, но и после этого регулярно обнаруживаются новые уязвимые места.

Active X - это порождение OLE-технологии Microsoft, позволяющей программистам взаимодействовать с функциями стандартных приложений, таких как текстовые процессоры и электронные таблицы. Active X позволяет приложениям взаимодействовать через Интернет, а апплетам загружаться на пользовательскую машину и получать доступ к локальным ресурсам.

Модель безопасности Active X сильно отличается от модели Java. Active X позволяет пользователю указать взаимоотношения доверия с сервером, с которого загружается апплет. Если серверу доверяют, и он аутентифицирован с помощью электронных сертификатов, апплет Active X может быть загружен и будет работать как обычная программа. Могут использоваться цифровые подписи, называемые Authenticode, для проверки того, что программа была написана доверенным программистом и не была модифицирована.

Ни одна из моделей безопасности не является совершенной. Подход Java ограничивает разрушения, которые может вызвать враждебный апплет - если будут найдены и исправлены все ошибки в Java. Подход Active X отражает организацию покупки и установки коммерческих программ, но он требует слишком много авторизации для обычного пользователя. Некоторые производители брандмауэров поддерживают блокирование и аутентификацию апплетов на своих брандмауэрах.

Следует отметить, что пользователь может и не подозревать, что он загрузил апплет и этот апплет выполнился на его компьютере. Поэтому должны быть предприняты такие меры безопасности, которые бы предотвращали такие случаи.

Низкий риск

Пользователи должны быть проинформированы о рисках интерактивных программ, и о том, как сконфигурировать свои браузеры так, чтобы предотвратить загрузку апплетов.



- Начало - - Назад - - Вперед -