Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5 модуль.docx
Скачиваний:
22
Добавлен:
02.11.2018
Размер:
186.24 Кб
Скачать

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

  • Отказ в обслуживании: атаки данного класса могут быть проведены не только на сетевом уровне (рассматривалась ранее), но и используя непосредственно функциональность приложения и направлены на исчерпание системных ресурсов, таких как оперативная память, дисковое пространство, вычислительные мощности. При этом может быть задействована любая подсистема приложения — подсистема аутентификации, СУБД и т. д.

  • Недостаточное противодействие автоматизации: некоторые функции приложения, например, система регистрации учетных записей, должны быть защищены от автоматизированного использования. Автоматизированным способом можно генерировать тысячи запросов в минуту, что может отразиться на производительности приложения в целом. Недостаточное противодействие автоматизации — прекрасная возможность для организации атаки класса «отказ в обслуживании».

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

Наиболее распространенные уязвимости

По статистическим данным, доступным в Интернет, наиболее распространенными уязвимостями Интернет-приложений являются:

  • межсайтовое выполнение сценариев,

  • внедрение SQL-операторов и

  • утечка информации.

При этом до 70% недочетов может быть обнаружено автоматизированными средствами анализа уязвимостей, а при привлечении дополнительного ручного анализа вероятность выявления критичной уязвимости Интернет-приложения возрастает до 90%.

18.6. Резюме

При разработке и администрировании приложения очень важно обдумывать вопросы возможного несанкционированного использования вашего (или используемого вами) кода, аппаратного и программного обеспечения.

Можно дать следующие рекомендации, о которых следует помнить в первую очередь при разработке веб-приложений:

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

  2. При использовании парольной аутентификации используйте средства противодействия автоматизации («captcha»).

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

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

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

  6. Используйте самое свежее стабильное программное обеспечение, в т. ч. антивирусное программное обеспечение.

  7. Пользуйтесь профессиональными сканерами уязвимостей (XSpider, Nikto и др.).

  8. Организуйте тщательный мониторинг работы системы, ведите подробные журналы.

228

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]