Арсений Батыров. Тестирование безопасности (2020)
	
	
		
		
	
	
		
			
		
		
	
Тестирование безопасности — одна из наиболее интересных тем во всей профессии тестировщика. Здесь пересекаются знания теории тестирования, поведения приложений, человеческой психологии и распространенных компьютерных ошибок.
Наиболее популярна эта тема для веб-приложений. Почему?
Естественно, ошибки могут возникать не только в самих веб-приложениях. Уязвимость может находиться в веб-сервере, операционной системе, почтовой системе, или ftp-клиенте. Но задача создания защищенного окружения в большей степени находится в зоне ответственности системных администраторов, а вот защищенность веб-приложения — целиком на совести его разработчиков и тестировщиков.
На тренинге мы рассмотрим как простые способы поиска уязвимостей, не требующие особых знаний, так и более сложные и комплексные задачи, при тестировании которых придется углубиться в схемы работы приложений.
Краткое содержание курса:
Введение
Примеры логических уязвимостей
Брутфорс
HTML инъекция
JavaScript-инъекция
XSS атака
CSRF - подделка запроса пользователя
SQL-инъекция (часть I)
Сканирование кода на наличие backdoor
Загрузка вредоносного файла на сервер
Продвинутые техники
Технические требования
Для выполнения заданий вам потребуется:
Продажник:
	
	
		
			
Скачать:
	
	
		
			
								
	Тестирование безопасности — одна из наиболее интересных тем во всей профессии тестировщика. Здесь пересекаются знания теории тестирования, поведения приложений, человеческой психологии и распространенных компьютерных ошибок.
Наиболее популярна эта тема для веб-приложений. Почему?
- Веб-приложения ориентированы на массовое использование, поэтому сбои в работе, вызванные действиями злоумышленника, могут оказать негативное воздействие на большое количество ни в чём неповинных пользователей.
 
- Веб-приложения могут хранить конфиденциальную информацию, утечка этих данных может иметь очень серьёзные последствия.
 
- Доступ к веб-приложению имеет множество “недоверенных” пользователей, при этом владельцы или разработчики приложения как правило не могут контролировать или ограничивать их действия.
 
- Обмен информацией между браузером и сервером происходит по открытым каналам с использованием открытых протоколов, поэтому сложно контролировать данные, передаваемые клиентами.
 
- Разработка веб-приложений не всегда ведётся с должным вниманием к обеспечению защищенности и надёжности, потому что время разработки продукта для рынка — важнее качества.
 
Естественно, ошибки могут возникать не только в самих веб-приложениях. Уязвимость может находиться в веб-сервере, операционной системе, почтовой системе, или ftp-клиенте. Но задача создания защищенного окружения в большей степени находится в зоне ответственности системных администраторов, а вот защищенность веб-приложения — целиком на совести его разработчиков и тестировщиков.
На тренинге мы рассмотрим как простые способы поиска уязвимостей, не требующие особых знаний, так и более сложные и комплексные задачи, при тестировании которых придется углубиться в схемы работы приложений.
Краткое содержание курса:
Введение
- что такое уязвимость
 
- чем уязвимость отличается от бага
 
- чем опасны уязвимости
 
- что такое "вектор атаки" и эксплойт
 
Примеры логических уязвимостей
- смена пароля чужого аккаунта и token
 
- неавторизованный доступ к контенту
 
- валидация данных и наборов данных
 
Брутфорс
- что такое брутфорс
 
- как устроена капча
 
- словари паролей
 
HTML инъекция
- что такое инъекция кода
 
- чем опасны инъекции
 
- пример простой HTML-инъекции
 
- какие бывают способы борьбы с инъекциям
 
- как устроено веб-приложение
 
- свойства value, data и т.п.
 
- чем опасна HTML-инъекция
 
- пример поиска и использования HTML-инъекции
 
JavaScript-инъекция
- где стоит искать JavaScript-инъекцию
 
- чем опасна JavaScript-инъекция
 
- пример JavaScript-инъекции
 
XSS атака
- что такое XSS и отличается ли она от JavaScript-инъекции?
 
- чем опасны XSS
 
- что такое self-XSS
 
- примеры XSS атак
 
- как устроена авторизация и работа с cookie-файлами
 
CSRF - подделка запроса пользователя
- что такое CSRF
 
- что такое token запроса
 
- чем опасен CSRF
 
- пример CSRF
 
SQL-инъекция (часть I)
- что такое SQL-инъекция
 
- когда стоит искать SQL-инъекцию
 
- чем опасна SQL-инъекция
 
- пример инъекции для GET-запроса
 
- сложный пример SQL-инъекции для POST-запроса - авторизация без пароля
 
- что такое "слепая (blind) SQL-инъекция", способы поиска
 
- комментирование в SQL и изменения вида запроса
 
- пример SQL-инъекции на вставке данных Insert
 
- работа с ответом сервера
 
- пример слепой SQL-инъекции
 
Сканирование кода на наличие backdoor
- что такое захват 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
 
Продажник:
				Скрытое содержимое могут видеть только пользователи групп(ы): PREMIUM
			
		
		
	Скачать:
				Скрытое содержимое могут видеть только пользователи групп(ы): PREMIUM