Тестування безпеки-одна з найбільш цікавих тем у всій професії тестувальника. Тут перетинаються знання теорії тестування, поведінки додатків, людської психології та поширених комп'ютерних помилок.
найбільш популярна ця тема для веб-додатків. Чому?
- Веб-додатки орієнтовані на масове використання, тому збої в роботі, викликані діями зловмисника, можуть мати негативний вплив на велику кількість ні в чому неповинних користувачів.
- Веб-додатки можуть зберігати конфіденційну інформацію, витік цих даних може мати дуже серйозні наслідки.
- Доступ до веб-додатку має безліч "недовірених" користувачів, при цьому власники або розробники програми як правило не можуть контролювати або обмежувати їх дії.
- обмін інформацією між браузером і сервером відбувається по відкритих каналах з використанням відкритих протоколів, тому складно контролювати дані, що передаються клієнтами.
- Розробка веб-додатків не завжди ведеться з належною увагою до забезпечення захищеності і надійності, тому що час розробки продукту для ринку — важливіше якості.
На тренінгу ми розглянемо як прості способи пошуку вразливостей, які не потребують особливих знань, так і більш складні і комплексні завдання, при тестуванні яких доведеться заглибитися в схеми роботи додатків.
програма
Введення
Для виконання завдань вам буде потрібно:
Введення
- Що таке вразливість
- чим вразливість відрізняється від бага
- чим небезпечні уразливості
- Що таке "вектор атаки" і експлойт
- зміна пароля чужого аккаунта і 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
https://privatelink.de/?https://software-testing.ru/edu/3-online/126-security