Арсений Батыров. Тестирование безопасности (2020)
Тестирование безопасности — одна из наиболее интересных тем во всей профессии тестировщика. Здесь пересекаются знания теории тестирования, поведения приложений, человеческой психологии и распространенных компьютерных ошибок.
Наиболее популярна эта тема для веб-приложений. Почему?
На тренинге мы рассмотрим как простые способы поиска уязвимостей, не требующие особых знаний, так и более сложные и комплексные задачи, при тестировании которых придется углубиться в схемы работы приложений.
Краткое содержание курса:
Введение
Для выполнения заданий вам потребуется:
Тестирование безопасности — одна из наиболее интересных тем во всей профессии тестировщика. Здесь пересекаются знания теории тестирования, поведения приложений, человеческой психологии и распространенных компьютерных ошибок.
Наиболее популярна эта тема для веб-приложений. Почему?
- Веб-приложения ориентированы на массовое использование, поэтому сбои в работе, вызванные действиями злоумышленника, могут оказать негативное воздействие на большое количество ни в чём неповинных пользователей.
Веб-приложения могут хранить конфиденциальную информацию, утечка этих данных может иметь очень серьёзные последствия.
Доступ к веб-приложению имеет множество “недоверенных” пользователей, при этом владельцы или разработчики приложения как правило не могут контролировать или ограничивать их действия.
Обмен информацией между браузером и сервером происходит по открытым каналам с использованием открытых протоколов, поэтому сложно контролировать данные, передаваемые клиентами.
Разработка веб-приложений не всегда ведётся с должным вниманием к обеспечению защищенности и надёжности, потому что время разработки продукта для рынка — важнее качества.
На тренинге мы рассмотрим как простые способы поиска уязвимостей, не требующие особых знаний, так и более сложные и комплексные задачи, при тестировании которых придется углубиться в схемы работы приложений.
Краткое содержание курса:
Введение
- что такое уязвимость чем уязвимость отличается от бага чем опасны уязвимости что такое "вектор атаки" и эксплойт
- смена пароля чужого аккаунта и token неавторизованный доступ к контенту валидация данных и наборов данных
- что такое брутфорс как устроена капча словари паролей
- что такое инъекция кода чем опасны инъекции пример простой HTML-инъекции какие бывают способы борьбы с инъекциям как устроено веб-приложение свойства value, data и т.п. чем опасна HTML-инъекция пример поиска и использования HTML-инъекции
- где стоит искать JavaScript-инъекцию чем опасна JavaScript-инъекция пример JavaScript-инъекции
- что такое XSS и отличается ли она от JavaScript-инъекции? чем опасны XSS что такое self-XSS примеры XSS атак как устроена авторизация и работа с cookie-файлами
- что такое CSRF что такое token запроса чем опасен CSRF пример CSRF
- что такое SQL-инъекция когда стоит искать SQL-инъекцию чем опасна SQL-инъекция пример инъекции для GET-запроса сложный пример SQL-инъекции для POST-запроса - авторизация без пароля что такое "слепая (blind) SQL-инъекция", способы поиска комментирование в SQL и изменения вида запроса пример SQL-инъекции на вставке данных Insert работа с ответом сервера пример слепой SQL-инъекции
- что такое захват shell чем опасен захват shell как происходит захват shell и что такое exec раскрытие полного пути (Full path disclosure) пример захвата shell
- как файлы передаются на сервер как обойти валидацию данных чем опасен исполняемый файл на сервере пример загрузки файла на сервер
- как устроены сканеры безопасности веб-приложений что такое социальная инженерия что такое Bug Bounty программы и причем тут тестирование безопасности
Для выполнения заданий вам потребуется:
- Windows 7+ / Mac OS Mohave+ / Ubuntu 18.08+ Процессор i-серии (i3, i5, i7) или аналогичный от AMD Минимум 4 GB RAM 10 GB на жёстком диске Разрешение экрана минимум 1280 x 800
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.