39989

Безопасность приложений WWW

Контрольная

Информатика, кибернетика и программирование

Технические особенности Существенное преимущество построения Web приложений для поддержки стандартных функций браузера заключается в том что функции должны выполняться независимо от операционной системы данного клиента. Классификация угроз безопасности Webприложений Данная классификация представляет собой совместную попытку членов международного консорциума собрать воедино и упорядочить угрозы безопасности Webсайтов. Члены Web ppliction Security Consortiumсоздали данный проект для унификации стандартной терминологии описания угроз...

Русский

2013-10-13

47.13 KB

16 чел.

  1.  Безопасность приложений WWW.

Веб-приложение

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

Веб-приложения стали широко популярными в конце 1990-х — начале 2000-х годов.

Технические особенности

Существенное преимущество построения Web приложений для поддержки стандартных функций браузера заключается в том, что функции должны выполняться независимо от операционной системы данного клиента. Вместо того чтобы писать различные версии для Microsoft Windows, Mac OS X, GNU/Linux и других операционных систем, приложение создается один раз для произвольно выбранной платформы и на ней разворачивается. Однако различная реализация HTML, CSS, DOM и других спецификаций в браузерах может вызвать проблемы при разработке веб-приложений и последующей поддержке. Кроме того, возможность пользователя настраивать многие параметры браузера (например, размер шрифта, цвета, отключение поддержки сценариев) может препятствовать корректной работе приложения.

Другой (менее универсальный) подход заключается в использовании Adobe Flash, Silverlight или Java-апплетов для полной или частичной реализации пользовательского интерфейса. Поскольку большинство браузеров поддерживает эти технологии (как правило, с помощью плагинов), Flash- или Java-приложения могут выполняться с легкостью. Так как они предоставляют программисту больший контроль над интерфейсом, они способны обходить многие несовместимости в конфигурациях браузеров, хотя несовместимость между Java или Flash реализациями на стороне клиента может приводить к различным осложнениям.

В связи с архитектурным сходством с традиционными клиент-серверными приложениями, в некотором роде «толстыми» клиентами, существуют споры относительно корректности отнесения подобных систем к веб-приложениям; альтернативный термин «Богатое Интернет приложение» (англ. Rich Internet Applications).

Устройство веб-приложений

Веб-приложение состоит из клиентской и серверной частей, тем самым реализуя технологию «клиент-сервер».

Клиентская часть реализует пользовательский интерфейс, формирует запросы к серверу и обрабатывает ответы от него.

Серверная часть получает запрос от клиента, выполняет вычисления, после этого формирует веб-страницу и отправляет её клиенту по сети с использованием протокола HTTP.

Само веб-приложение может выступать в качестве клиента других служб, например, базы данных или другого веб-приложения, расположенного на другом сервере. Ярким примером веб-приложения является система управления содержимым статей Википедии: множество её участников могут принимать участие в создании сетевой энциклопедии, используя для этого браузеры своих операционных систем (будь то Microsoft Windows, GNU/Linux или любая другая операционная система) и не загружая дополнительных исполняемых модулей для работы с базой данных статей.

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

Для создания веб-приложений на стороне сервера используются разнообразные технологии и любые языки программирования, способные осуществлять вывод в стандартную консоль.

Классификация угроз безопасности Web-приложений

Данная классификация представляет собой совместную попытку членов международного консорциума собрать воедино и упорядочить угрозы безопасности Web-сайтов. Члены Web Application Security Consortiumсоздали данный проект для унификации стандартной терминологии описания угроз безопасности Web-приложений. Это даёт возможность разработчикам приложений, специалистам в области безопасности, производителям программных продуктов и аудиторам использовать единый язык при своем взаимодействии.

Данный документ содержит компиляцию и квинтэссенцию известных классов атак, которые представляют угрозы для Web-приложений. Каждому классу атак присвоено стандартное название и описаны его ключевые особенности. Классы организованы в иерархическую структуру.

Классы атак

1. Аутентификация (Authentication)

Раздел, посвященный аутентификации, описывает атаки направленные на используемые Web-приложением методы проверки идентификатора пользователя, службы или приложения. Аутентификация использует как минимум один из трех механизмов (факторов): "что-то, что мы имеем", "что-то, что мы знаем" или "что-то, что мы есть". В этом разделе описываются атаки, направленные на обход или эксплуатацию уязвимостей в механизмах реализации аутентификации Web-серверов.

Краткое описание [подробное описание в формате .pdf – 337 Kb]

  1.  Подбор (Brute Force)

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

  1.  Недостаточная аутентификация (Insufficient Authentication)

эта уязвимость возникает, когда Web-сервер позволяет атакующему получать доступ к важной информации или функциям сервера без должной аутентификации

  1.  Небезопасное восстановление паролей (Weak Password Recovery Validation)

эта уязвимость возникает, когда Web-сервер позволяет атакующему несанкционированно получать, модифицировать или восстанавливать пароли других пользователей

2. Авторизация (Authorization)

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

Краткое описание [подробное описание в формате .pdf – 353 Kb]

  1.  Предсказуемое значение идентификатора сессии (Credential/Session Prediction)

предсказуемое значение идентификатора сессии позволяет перехватывать сессии других пользователей

  1.  Недостаточная авторизация (Insufficient Authorization)

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

  1.  Отсутствие таймаута сессии (Insufficient Session Expiration)

в случае если для идентификатора сессии или учетных данных не предусмотрен таймаут или его значение слишком велико, злоумышленник может воспользоваться старыми данными для авторизации

  1.  Фиксация сессии (Session Fixation)

используя данный класс атак, злоумышленник присваивает идентификатору сессии пользователя заданное значение

3. Атаки на клиентов (Client-side Attacks)

Этот раздел описывает атаки на пользователей Web-сервера. Во время посещения сайта, между пользователем и севером устанавливаются доверительные отношения, как в технологическом, так и в психологическом аспектах. Пользователь ожидает, что сайт предоставит ему легитимное содержимое. Кроме того, пользователь не ожидает атак со стороны сайта. Эксплуатируя это доверие, злоумышленник может использовать различные методы для проведения атак на клиентов сервера.

Краткое описание [подробное описание в формате .pdf – 369 Kb]

  1.  Подмена содержимого (Content Spoofing)

используя эту технику, злоумышленник заставляет пользователя поверить, что страницы сгенерированны Web-сервером, а не переданы из внешнего источника

  1.  Межсайтовое выполнение сценариев (Cross-site Scripting, XSS)

наличие уязвимости Cross-site Scripting позволяет атакующему передать серверу исполняемый код, который будет перенаправлен браузеру пользователя

  1.  Расщепление HTTP-запроса (HTTP Response Splitting)

при использовании данной уязвимости злоумышленник посылает серверу специальным образом сформированный запрос, ответ на который интерпретируется целью атаки как два разных ответа

4. Выполнение кода (Command Execution)

Эта секция описывает атаки, направленные на выполнение кода на Web-сервере. Все серверы используют данные, преданные пользователем при обработке запросов. Часто эти данные используются при составлении команд, применяемых для генерации динамического содержимого. Если при разработке не учитываются требования безопасности, злоумышленник получает возможность модифицировать исполняемые команды.

Краткое описание [подробное описание в формате .pdf – 398 Kb]

  1.  Переполнение буфера (Buffer Overflow)

эксплуатация переполнения буфера позволяет злоумышленнику изменить путь исполнения программы путем перезаписи данных в памяти системы

  1.  Атака на функции форматирования строк (Format String Attack)

при использовании этих атак путь исполнения программы модифицируется методои перезаписи областей памяти с помощью функций форматирования символьных переменных

  1.  Внедрение операторов LDAP (LDAP Injection)

атаки этого типа направлены на Web-серверы, создающие запросы к службе LDAP на основе данных, вводимых пользователем

  1.  Выполнение команд ОС (OS Commanding)

атаки этого класса направлены на выполнение команд операционной системы на Web-сервере путем манипуляции входными данными

  1.  Внедрение операторов SQL (SQL Injection)

эти атаки направлены на Web-серверы, создающие SQL запросы к серверам СУБД на основе данных, вводимых пользователем

  1.  Внедрение серверных сценариев (SSI Injection)

атаки данного класса позволяют злоумышленнику передать исполняемый код, который в дальнейшем будет выполнен на Web-сервере

  1.  Внедрение операторов XPath (XPath Injection)

эти атаки направлены на Web-серверы, создающие запросы на языке XPath на основе данных, вводимых пользователем

5. Разглашение информации (Information Disclosure)

Атаки данного класса направлены на получение дополнительной информации о Web-приложении. Используя эти уязвимости, злоумышленник может определить используемые дистрибутивы ПО, номера версий клиента и сервера и установленные обновления. В других случаях, в утекающей информации может содержаться расположение временных файлов или резервных копий. Во многих случаях эти данные не требуются для работы пользователя. Большинство серверов предоставляют доступ к чрезмерному объему данных, однако необходимо минимизировать объем служебной информации. Чем большими знаниями о приложении будет располагать злоумышленник, тем легче ему будет скомпрометировать систему.

Краткое описание [подробное описание в формате .pdf – 385 Kb]

  1.  Индексирование директорий (Directory Indexing)

атаки данного класса позволяют атакующему получить информацию о наличии файлов в Web каталоге, которые недоступны при обычной навигации по Web сайту

  1.  Идентификация приложений (Web Server/Application Fingerprinting)

определение версий приложений используется злоумышленником для получения информации об используемых сервером и клиентом операционных системах, Web-северах и браузерах

  1.  Утечка информации (Information Leakage)

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

  1.  Обратный путь в директориях (Path Traversal)

данная техника атак направлена на получение доступа к файлам, директориям и командам, находящимся вне основной директории Web-сервера.

  1.  Предсказуемое расположение ресурсов (Predictable Resource Location)

позволяет злоумышленнику получить доступ к скрытым данным или функциональным возможностя

6. Логические атаки (Logical Attacks)

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

Краткое описание [подробное описание в формате .pdf – 355 Kb]

  1.  Злоупотребление функциональными возможностями (Abuse of Functionality)

данные атаки направлены на использование функций Web-приложения с целью обхода механизмов разграничение доступа

  1.  Отказ в обслуживании (Denial of Service)

данный класс атак направлен на нарушение доступности Web-сервера

  1.  Недостаточное противодействие автоматизации (Insufficient Anti-automation)

эти уязвимости возникаеют, в случае, если сервер позволяет автоматически выполнять операции, которые должны проводиться вручную

  1.  Недостаточная проверка процесса (Insufficient Process Validation)

уязвимости этого класса возникают, когда сервер недостаточно проверяет последовательность выполнения операций приложения


 

А также другие работы, которые могут Вас заинтересовать

21109. Архітектура за часів Київської Русі 28.45 KB
  Тому одразу ж після хрещення Русі зявляються й перші церкви: Василівська побудована з дерева за зразком храму в Корсуні і Десятинна або Богородицька перша камяна церква у Києві. Подальші реставрації та ремонті роботи не врятували цього храму який порівняно скоро перетворився на купу будівельного брухту. Красу храму створювала гармонія його форми в цілому яка мала символізувати гармонію світобудови створеної з хаосу Божим Словом. Головним структурним елементом храму був його центральний купол що розташовувався на восьмикутному або...
21110. Образотворче мистецтво доби Київської Русі 25.17 KB
  Образотворче мистецтво доби Київської Русі. Розвиток живопису в Київській Русі цілком пов'язаний з поширенням християнства. Майстерність ювелірів що набула розквіту в добу Київської Русі зростала від важких і примітивних браслетів масивних перснів гривнів та намист із міді або сплетених зі срібного дроту до тонких ажурних прикрас оздоблених довершеною насічкою що передавала не лише прості візерунки а й складні сюжетні малюнки як наприклад знахідки з Чорної могили Чернігів X ст. Від часів зміцнення держави збільшується на Русі...
21111. Усна народна творчість, доби пізнього Середньовіччя (XIV – перша половина XVII ст.) 19.05 KB
  Значні світоглядні зрушення відбуваються в усній народній творчості. Розвиток народної творчості українців відбувався на основі давньоруських фольклорних традицій проте нові умови життя народжували й нові форми народної творчості. Натомість в обрядовій творчості зявляються насамперед у жнивних та обжинкових піснях соціальні мотиви та настрої які мають антифеодальне забарвлення.
21112. Освіта доби пізнього Середньовіччя (XIV - перша полови-на XVII ст.) 23.76 KB
  В Україні були протестантські школи в Дубні Хмельнику. Здебільшого рівень освіти в Україні якщо не враховувати протестантські заклади був початковим. Безпосередньо в Україні книгодрукування поширилося тільки у другій половині XVI ст. тут побачив світ Апостол перша друкована книга в Україні яка призначалася для церковнобогослужбового вжитку.
21113. Література і літописання XIV – першої половини XVII ст. 25.69 KB
  Література і літописання XIV першої половини XVII ст. зявляються також нові розширені версії перекладних повістей про Олександра Македонського Олександрія оповідання про Трою Бовукоролевича у XVI ст. До найзначніших літописів тієї доби слід віднести Короткий Київський літопис XIV XVI ст. Виробництво власного паперу в Україні почалося в Галичині тільки в першій половині XVI ст.
21114. Релігійна полеміка другої половини XVI – першої половини XVII ст 23.14 KB
  У творчості цього полеміста чи не найповніше виражено віру у швидке відродження національної культури та її майбутній розквіт. Він виступав проти вищої ієрархії що призвела до унії а також проти католицької та західної культури. Якщо в часи ренесансних віянь в Україні та за її межами під враженням від давніх київських руїн часто висловлювалася думка що Київ це ніщо інше як гомерівська Троя то з початком поширення барокової культури в Україні виникає концепція Києва як Другого Єрусалима Й. який має стати надійним оплотом не тільки...
21115. Архітектура доби пізнього Середньовіччя (XIV – перша половина XVII ст.) 22.82 KB
  Найбільшими будівлями цього стилю були католицькі костели у Львові кінець XIV ст. Найстарішою памяткою готичної доби де готичні елементи співіснують з візантійськомало азійським стилем є Вірменська церква у Львові закладена у 1363 р. особливо у Львові панував стиль пізнього Ренесансу. У цьому стилі у Львові збудовані Високий замок будинок Гепнера Чорна камяниця 1570 будинок грецького купця й уславленого мецената Корнякта 1580 каплиця Трьох святителів 1578 вежа Вірменської церкви 1576 а також вежа Корнякта дзвіниця...
21116. Образотворче мистецтво у XIV – першій половині XVII ст 28.59 KB
  Образотворче мистецтво у XIV першій половині XVII ст. У фресковий розпис проникають народні й світські мотиви повязані з раннім Ренесансом хоча в цілому памятки монументального фрескового живопису XIV середини XVI ст. У цілому ж до середини XVI ст. З XVI ст.
21117. Театральне мистецтво і музична культура доби пізнього Середньовіччя (XIV - перша половина XVII ст.) 15.84 KB
  Театральне мистецтво і музична культура доби пізнього Середньовіччя XIV перша половина XVII ст. Театральне мистецтво. Зароджується також театральне мистецтво. Розвиваються народні ігри та мистецтво скоморохів виконавців і творців розважальної усної поезії музичного фольклору.