Московский государственный университет имени М.В.Ломоносова
Опубликован: 21.09.2006 | Доступ: свободный | Студентов: 37 / 0 | Оценка: 4.32 / 4.09 | Длительность: 19:19:00
ISBN: 978-5-9556-0076-0
Лекция 10:

Безопасность web-содержимого

< Лекция 9 || Лекция 10: 1234 || Лекция 11 >
Аннотация: Рассматриваются принципы обеспечения безопасности содержимого web-сервера. Перечислены различные технологии создания активного содержимого на стороне клиента и сравнивается создаваемая ими степень риска. Изучаются различные технологии создания динамических страниц на стороне сервера и связанные с ними уязвимости.

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

Опубликование информации на web-сайтах

Политика опубликования в web должна содержать следующие элементы:

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

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

Публичный web-сайт обычно не содержит следующую информацию:

  • классифицированные записи;
  • внутренние правила и процедуры для персонала;
  • чувствительную или частную информацию;
  • персональную информацию о служащих организации:

    • домашние адреса и номера телефонов;
    • номера различных социальных карточек;
    • детальный биографический материал;
    • фамилии руководства.
  • номера телефонов, e-mail адреса и т.п.;
  • расписание сотрудников организации и их внешние координаты;
  • чувствительную информацию, относящуюся к домашней безопасности;
  • исследовательские записи;
  • финансовые записи (кроме тех, которые всегда публично доступны);
  • медицинские записи;
  • процедуры физической и информационной безопасности;
  • информацию о сети организации и информационной инфраструктуре (например, диапазоны адресов, соглашения именования, номера доступа);
  • информацию, которая описывает или подразумевает уязвимости физической безопасности;
  • планы, карты, диаграммы и т.п. строений;
  • информацию о восстановлении после стихийных бедствий или непредвиденных обстоятельств;
  • материалы, защищенные копирайтом, без письменного разрешения собственника;
  • политики безопасности, которые указывают типы мер безопасности в той степени, в которой это может быть полезно атакующему.

Никогда нельзя использовать публичный web-сервер для хранения чувствительной информации, которая должна быть доступна только внутренним пользователям (компрометация публичного web-сервера обязательно приведет к компрометации этих данных).

Для гарантирования согласованного подхода организация должна создать формальную политику и описать процесс определения того, какая информация публикуется на web-сервере. Во многих организациях за это отвечает офицер информационной службы (Chief Information Officer — CIO). Такой процесс должен включать следующие шаги.

  1. Определить информацию, которая должна публиковаться в web.
  2. Определить целевую аудиторию.
  3. Определить возможные негативные последствия опубликования информации.
  4. Определить, кто отвечает за создание, опубликование и сопровождение конкретной информации.
  5. Создать или отформатировать информацию для опубликования в web.
  6. Просмотреть информацию на предмет наличия чувствительных данных.
  7. Определить соответствующий доступ и управление безопасностью.
  8. Опубликовать информацию.
  9. Проверить опубликованную информацию.
  10. Периодически просматривать опубликованную информацию на соответствие текущим требованиям политики безопасности.

Областью web-содержимого, про которую часто забывают, является информация, находящаяся в исходном коде HTML-страницы. Она может быть просмотрена из web-браузера использованием опции меню view source code. Разработчики часто не придают значения содержимому исходного кода их HTML страниц, даже если этот код содержит чувствительную информацию. Он может, например, содержать указатели на контактную информацию и показывать части структуры директории web-сервера. Атакующие могут проанализировать не только очевидное содержимое web-сайта, но также и исходный код; следовательно, web-администраторы должны проверять создаваемые HTML страницы своего web-сервера.

Обеспечение безопасности технологий создания активного содержимого

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

Активное содержание на стороне клиента относится к интерактивным элементам, обрабатываемым web-браузером. Активное содержание может представлять серьезную угрозу для конечного пользователя. Например, оно может выполняться на машине клиента без явного разрешения пользователя. Существуют различные технологии создания активного содержимого. Некоторые наиболее популярные примеры включают ActiveX, Java, VBScript и JavaScript. Организации, рассматривающие разработку активного содержимого на стороне клиента, должны тщательно изучить риски для своих пользователей, так как использование активного содержания часто требует от пользователя понижения установок безопасности в своем web-браузере.

Генераторы содержимого бывают реализованы на стороне сервера и тем самым представляют угрозу для самого web-сервера. Опасность в генераторах содержимого на стороне сервера состоит в том, что они могут принимать вводимые пользователем данные и выполнять действия на web-сервере. Если генератор содержимого запрограммирован некорректно, атакующий сможет ввести определенные типы информации, которые могут негативно воздействовать на web-сервер или скомпрометировать его безопасность. Например, одна из наиболее общих атак на генераторы содержимого состоит в переполнении буфера. В данном типе атаки нарушитель посылает большое количество информации генератору содержимого. Такое количество информации переполняет выделенную память, и, если эта информация соответствующим образом сформатирована, данное переполнение может быть использовано для выполнения команд или получения неавторизованного доступа к web-серверу.

Все web-сайты, которые реализуют активное содержимое и генераторы содержимого, должны выполнять дополнительные шаги для защиты от компрометации.

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

< Лекция 9 || Лекция 10: 1234 || Лекция 11 >
Нияз Сабиров
Нияз Сабиров

Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей.

Елена Сапегова
Елена Сапегова

для получения диплома нужно ли кроме теоретической части еще и практическую делать? написание самого диплома требуется?