Тестирование защищенности веб-приложений

тренинг

Анонс

Почему тестирование защищенности имеет такое большое значение именно для веб-приложений?

  1. Веб-приложения ориентированы на массовое использование, поэтому сбои в работе, вызванные действиями злоумышленника, могут оказать негативное воздействие на большое количество ни в чём неповинных пользователей.
  2. Веб-приложения могут хранить конфиденциальную информацию, утечка этих данных может иметь очень серьёзные последствия.
  3. Доступ к веб-приложению имеет множество “недоверенных” пользователей, при этом владельцы или разработчики приложения как правило не могут контролировать или ограничивать их действия.
  4. Обмен информацией между браузером и сервером происходит по открытым каналам с использованием открытых протоколов, поэтому сложно контролировать данные, передаваемые клиентами.
  5. Разработка веб-приложений не всегда ведётся с должным вниманием к обеспечению защищенности и надёжности, потому что рынок в первую очередь требует “быстро”!
     

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

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

Программа

Основные принципы компроментации защиты веб-приложения:

  1. Атаки на клиент (браузер)
  2. Атаки на сервер
  3. Атаки на сеть
  4. Социальная инженерия
  5. Инструментарий тестировщика

Инструментарий тестировщика

  1. Анализ исходного кода
  2. Анализ данных и структуры запросов
  3. Сканирование (поиск вширь)
  4. Фаззинг (поиск вглубь)
  5. Распространенные атаки на клиент

Распространенные атаки на клиент:

  1. Обход валидаторов
  2. Подделка cookies и перехват сессий
  3. Сross-site scripting (XSS)
  4. Сross-site request forgery (XSRF)
  5. Распространенные атаки на сервер

Распространенные атаки на сервер:

  1. SQL-инъекции
  2. Файловые инъекции (внедрение backdoor shell)
  3. Командные инъекции (удаленное выполнение команд)
  4. Получение доступа к содержимому директорий и файлов
  5. Отказ в обслуживании (DoS)

Веб-сервисы (SOAP, REST, JSON API)

Спикеры

Баранцев Алексей