Тестировщик безопасности (Junior)

Целевая аудитория :
- Начинающие специалисты в области IT, желающие освоить профессию тестировщика безопасности.
- Студенты технических вузов или выпускники курсов по программированию/администрированию.
- Специалисты смежных областей (например, QA-инженеры), планирующие сменить профиль на cybersecurity.
Формат :
- Смешанный : онлайн-лекции (видеоматериалы, вебинары) + практические задания в виртуальных лабораториях.
- Интерактивные сессии : разбор кейсов, групповые проекты, консультации с экспертами.
- Длительность : 3 месяца (4 академических часа в неделю).
Итоговый проект :
"Проведение полного цикла тестирования безопасности веб-приложения"
- Анализ архитектуры приложения.
- Поиск уязвимостей (SQLi, XSS, CSRF и др.) с использованием инструментов (OWASP ZAP, Burp Suite).
- Эксплуатация обнаруженных уязвимостей в контролируемой среде.
- Подготовка отчета с рекомендациями для разработчиков.
- Презентация результатов команде "заказчика".
Структура курса :
Модуль 1: Введение в кибербезопасность
- Угрозы и риски в цифровой среде.
- Виды тестирования безопасности.
- Этические и юридические аспекты (договор NDA, разрешение на тестирование).
Модуль 2: Инструменты и методы
- Работа с Kali Linux.
- Сканирование уязвимостей (Nessus, OpenVAS).
- Анализ трафика (Wireshark).
Модуль 3: Тестирование веб-приложений
- OWASP Top 10: практическое применение.
- Эксплуатация SQL-инъекций, XSS, CSRF.
- Ручное и автоматизированное тестирование (Burp Suite, OWASP ZAP).
Модуль 4: Тестирование инфраструктуры
- Анализ сетевой безопасности (Nmap, Metasploit).
- Поиск уязвимостей в ОС и серверах.
Модуль 5: Документирование и коммуникация
- Составление отчетов и презентаций.
- Работа с bug tracking системами (Jira).
Модуль 6: Итоговый проект
- Практическая работа с реальным кейсом.
Оценка и сертификация :
- Тесты после каждого модуля (мин. 70% правильных ответов).
- Защита итогового проекта.
- Выдача сертификата при успешном прохождении.
По окончании обучения студент должен знать :
- Основы кибербезопасности: виды атак, классификация уязвимостей, стандарты (ISO 27001, OWASP Top 10).
- Методологии тестирования: penetration testing, vulnerability assessment, red teaming.
- Инструменты: Nmap, Wireshark, Metasploit, Nessus, Kali Linux.
- Юридические аспекты: GDPR, 152-ФЗ, договорные обязательства при тестировании.
- Основы работы с сетевыми протоколами и веб-технологиями (HTTP/HTTPS, TCP/IP).
По окончании обучения студент должен уметь :
- Проводить анализ защищенности веб-приложений и сетей.
- Использовать инструменты для автоматизации поиска уязвимостей.
- Составлять отчеты с четкой структурой: описание проблемы, степень риска, рекомендации.
- Взаимодействовать с командой разработки и заказчиками.
- Применять методы этичного хакинга в рамках законодательства.
Билет 1
- Теория: Что такое OWASP Top 10 и какие категории уязвимостей в него входят?
- Теория: Опишите разницу между penetration testing и vulnerability assessment.
- Практика: Найдите уязвимость в следующем фрагменте кода (на языке Python)
user_input = input("Введите имя: ")
query = "SELECT * FROM users WHERE name = '" + user_input + "';"
execute_query(query)
Ответы:
- OWASP Top 10 — список наиболее критичных рисков безопасности веб-приложений. Включает: Injection, Broken Authentication, Sensitive Data Exposure, XML External Entities (XXE), Broken Access Control, Security Misconfiguration, Cross-Site Scripting (XSS), Insecure Deserialization, Using Components with Known Vulnerabilities, Insufficient Logging & Monitoring.
- Penetration testing — имитация атаки для выявления уязвимостей. Vulnerability assessment — анализ системы на наличие известных уязвимостей без эксплуатации.
- Уязвимость: SQL-инъекция. Исправление: использовать параметризованные запросы или ORM.
Билет 2
- Теория: Что такое XSS-уязвимость? Приведите пример.
- Теория: Какие существуют уровни тестирования безопасности (например, Black Box, White Box)?
- Практика: Проверьте сайт
example.com
на наличие открытых директорий с помощью инструмента DirBuster. Опишите шаги.
Ответы:
- XSS (межсайтовый скриптинг) — внедрение вредоносного скрипта в веб-страницу. Пример:
<script>alert('XSS')</script>
в форме комментария. - Black Box (тестирование без доступа к коду), White Box (полный доступ), Gray Box (частичный доступ).
- Запустить DirBuster, указать URL
example.com
, выбрать словарь, начать сканирование. Проверить результаты на наличие доступных директорий.
Билет 3
- Теория: Как работает SQL-инъекция?
- Теория: Что такое CVE и для чего он используется?
- Практика: Составьте тест-кейс для проверки защиты от CSRF.
Ответы:
- Атакующий внедряет SQL-код в запрос, изменяя логику запроса к БД. Пример:
' OR 1=1;--
. - CVE (Common Vulnerabilities and Exposures) — идентификатор уязвимости для стандартизации их описания.
- Тест-кейс:
- Шаг 1: Создать вредоносную страницу с поддельной формой.
- Шаг 2: Попытаться отправить запрос от имени авторизованного пользователя без его ведома.
- Ожидаемый результат: запрос отклонен из-за отсутствия CSRF-токена.
Билет 4
- Теория: Что такое Man-in-the-Middle (MitM) атака?
- Теория: Назовите основные методы защиты от XSS.
- Практика: Проверьте SSL-сертификат сайта
test.com
с помощью утилитыopenssl
.
Ответы:
- Атакующий перехватывает данные между двумя сторонами. Пример: перехват трафика в незащищенной Wi-Fi сети.
- Экранирование ввода, использование Content Security Policy (CSP), валидация данных, применение фреймворков с автоэкранированием.
- Команда:
openssl s_client -connect test.com:443
. Проверить дату истечения, цепочку сертификатов.
Билет 5
- Теория: Опишите этапы проведения penetration testing.
- Теория: Что такое «фаззинг» и где он применяется?
- Практика: Проведите анализ исходного кода PHP на наличие уязвимостей:
$id = $_GET['id'];
$sql = "SELECT * FROM products WHERE id = $id";
Ответы:
- Сбор информации, сканирование, эксплуатация уязвимостей, анализ результатов, составление отчета.
- Фаззинг — тестирование с подачей случайных/некорректных данных для поиска сбоев. Применяется для обнаружения уязвимостей в ПО.
- Уязвимость: SQL-инъекция. Исправление: использовать подготовленные запросы (PDO).\
Билет 6
- Теория: Что такое CSRF-уязвимость и как она эксплуатируется?
- Теория: В чем заключается метод SAST (Static Application Security Testing)?
- Практика: Проверьте веб-приложение на наличие IDOR. Опишите шаги для тестирования доступа к чужому профилю через URL:
https://example.com/profile?user_id=123
.
Ответы:
- CSRF — выполнение нежелательных действий от имени авторизованного пользователя через поддельные запросы. Пример: подмена формы перевода денег.
- SAST — анализ исходного кода приложения без его выполнения для поиска уязвимостей.
- Изменить
user_id
в URL на другой ID (например, 124), проверить, отображается ли чужой профиль без прав доступа.
Билет 7
- Теория: Объясните, что такое SSRF-уязвимость.
- Теория: Как работает метод DAST (Dynamic Application Security Testing)?
- Практика: Проверьте конфигурацию веб-сервера на наличие заголовка
X-Powered-By
. Используйте утилитуcurl
.
Ответы:
- SSRF — атака, при которой сервер вынужден выполнять запросы к внутренним или внешним ресурсам. Пример: доступ к метаданным облачных сервисов.
- DAST — тестирование работающего приложения через его интерфейсы (например, отправка HTTP-запросов).
- Команда:
curl -I https://example.com
. Проверить наличие строкиX-Powered-By
в ответе.
Билет 8
- Теория: Что такое LFI/RFI-уязвимости?
- Теория: Для чего используется инструмент Nmap?
- Практика: Сканируйте хост
192.168.1.1
на открытые порты с помощью Nmap. Укажите команду.
Ответы:
- LFI (Local File Inclusion) — включение локальных файлов, RFI (Remote File Inclusion) — подключение удаленных файлов. Пример:
include($_GET['page']);
. - Nmap — сканирование сетей и портов для обнаружения активных хостов и сервисов.
- Команда:
nmap -p 1-65535 192.168.1.1
.
Билет 9
- Теория: Какие требования предъявляет стандарт PCI DSS к хранению паролей?
- Теория: Для чего используется Burp Suite в тестировании безопасности?
- Практика: Перехватите и измените POST-запрос авторизации на тестовом сайте с помощью Burp Suite. Опишите шаги.
Ответы:
- Пароли должны храниться в захешированном виде с солью, использовать алгоритмы вроде bcrypt.
- Burp Suite — перехват и анализ HTTP-трафика, тестирование на SQLi, XSS, CSRF.
- Настроить прокси в браузере, перехватить запрос в Proxy → HTTP history, изменить логин/пароль, отправить.
Билет 10
- Теория: Что такое стандарт ISO 27001?
- Теория: Как проверить корректность настройки SSL/TLS на сайте?
- Практика: Проверьте, поддерживает ли сайт
test.com
устаревший протокол TLS 1.0. Используйтеnmap
.
Ответы:
- ISO 27001 — стандарт управления информационной безопасностью (ISMS).
- Использовать онлайн-сервисы (SSL Labs), анализ заголовков, проверку сертификатов.
- Команда:
nmap --script ssl-enum-ciphers -p 443 test.com
. Проверить вывод на наличие TLSv1.0.
Билет 11
- Теория: Опишите уязвимость «Insecure Deserialization».
- Теория: Что такое «Security Misconfiguration»?
- Практика: Найдите уязвимость в коде:
const express = require('express');
app.use(express.static('public'));
Ответы:
- Десериализация непроверенных данных, приводящая к выполнению произвольного кода.
- Ошибки в настройках безопасности (например, отладочный режим, стандартные пароли).
- Отсутствие ограничений на доступ к статическим файлам. Исправление: настроить middleware для защиты директорий.
Билет 12
- Теория: Что такое «Broken Access Control»?
- Теория: Как работает инструмент Nikto?
- Практика: Проверьте сайт
example.com
на наличие устаревших версий CMS с помощью Nikto.
Ответы:
- Нарушение контроля доступа позволяет пользователям получать права выше своих.
- Nikto сканирует веб-серверы на наличие уязвимостей, устаревших версий ПО, небезопасных файлов.
- Команда:
nikto -h example.com
.
Билет 13
- Теория: Какие существуют методы защиты от SQL-инъекций?
- Теория: Что такое «Sensitive Data Exposure»?
- Практика: Проверьте, передается ли пароль в открытом виде в HTTP-запросе. Используйте Wireshark.
Ответы:
- Параметризованные запросы, ORM, валидация ввода, экранирование символов.
- Утечка конфиденциальных данных (пароли, номера карт) из-за отсутствия шифрования.
- Захватить трафик в Wireshark, найти POST-запрос авторизации, проверить тело запроса на наличие plaintext-пароля.
Билет 14
- Теория: Что такое «Clickjacking»?
- Теория: Для чего используется заголовок
Content-Security-Policy
? - Практика: Проверьте, установлен ли заголовок
X-Content-Type-Options
на сайтеtest.com
.
Ответы:
- Атака, при которой пользователь нажимает на невидимые элементы страницы, выполняя скрытые действия.
- CSP предотвращает XSS, ограничивая источники загружаемых ресурсов.
- Использовать команду
curl -I test.com
и проверить наличиеX-Content-Type-Options: nosniff
.
Билет 15
- Теория: Как работает атака «Credential Stuffing»?
- Теория: Что такое «Security through Obscurity»?
- Практика: Проверьте, отображается ли версия сервера в HTTP-ответах
example.com
.
Ответы:
- Массовая проверка украденных учетных записей на разных сайтах.
- Защита за счет скрытия информации, а не реальных механизмов (не рекомендуется).
- Использовать
curl -I example.com
и проверить заголовкиServer
илиX-Powered-By
.
Билет 16
- Теория: Что такое «Broken Authentication»?
- Теория: Как работает инструмент Wireshark?
- Практика: Проверьте, включена ли опция CORS на сайте
test.com
для доменаevil.com
. Используйте браузерные инструменты разработчика.
Ответы:
- Некорректная реализация аутентификации, позволяющая обходить проверку паролей или сессий.
- Wireshark анализирует сетевой трафик для выявления утечек данных, паролей, аномалий.
- Открыть консоль разработчика → вкладка Network → проверить заголовки
Access-Control-Allow-Origin
.
Билет 17
- Теория: Опишите уязвимость «Security Logging & Monitoring Failure».
- Теория: Для чего используется заголовок
X-Frame-Options
? - Практика: Проверьте, блокирует ли сайт
example.com
интеграцию в фреймы. Используйте HTML-страницу с<iframe>
.
Ответы:
- Отсутствие логирования или мониторинга событий, что затрудняет обнаружение атак.
- Заголовок предотвращает Clickjacking, запрещая встраивание страницы в фреймы.
- Создать HTML-файл с
<iframe src="https://example.com"></iframe>
. Если фрейм не загружается — защита работает.
Билет 18
- Теория: Что такое «Insufficient Transport Layer Protection»?
- Теория: Как работает инструмент OpenVAS?
- Практика: Проверьте, использует ли сайт
test.com
устаревший алгоритм шифрования SSLv3. Используйтеnmap
.
Ответы:
- Незащищенный канал передачи данных (например, отсутствие HTTPS).
- OpenVAS сканирует уязвимости в сети, используя базу данных CVE.
- Команда:
nmap --script ssl-enum-ciphers -p 443 test.com
. Проверить вывод на наличие SSLv3.
Билет 19
- Теория: Как работает атака «Phishing»?
- Теория: Что такое «Data Validation» и зачем она нужна?
- Практика: Проверьте, обрабатывается ли ошибка 404 на сайте
example.com
корректно. Используйте случайный URL.
Ответы:
- Выдача себя за доверенный источник для кражи учетных данных.
- Проверка входных данных на соответствие ожидаемому формату для предотвращения инъекций.
- Перейти по URL вида
example.com/nonexistentpage
. Если отображается техническая ошибка сервера — проблема есть.
Билет 20
- Теория: Что такое «Session Hijacking»?
- Теория: Для чего используется заголовок
Strict-Transport-Security
? - Практика: Проверьте, установлен ли заголовок
Referrer-Policy
на сайтеtest.com
.
Ответы:
- Перехват сессионного cookie для доступа к аккаунту пользователя.
- Заголовок HSTS принудительно переводит соединение на HTTPS.
- Использовать
curl -I test.com
и проверить наличиеReferrer-Policy
в ответе.
Билет 21
- Теория: Опишите уязвимость «Server-Side Request Forgery (SSRF)».
- Теория: Как работает инструмент SQLMap?
- Практика: Проверьте, уязвим ли параметр
id
в URLexample.com/page?id=1
к SQL-инъекции.
Ответы:
- Атака, при которой сервер выполняет произвольные запросы к внутренним/внешним ресурсам.
- SQLMap автоматизирует поиск и эксплуатацию SQL-инъекций.
- Ввести
' OR 1=1--
в параметрid
. Если данные выводятся некорректно — уязвимость возможна.
Билет 22
- Теория: Что такое «Insecure Design»?
- Теория: Для чего используется инструмент OWASP ZAP?
- Практика: Проверьте, есть ли на сайте
test.com
директория/admin
с помощьюcurl
.
Ответы:
- Ошибки на этапе проектирования системы, приводящие к уязвимостям.
- OWASP ZAP сканирует веб-приложения на уязвимости, перехватывает трафик.
- Команда:
curl -I test.com/admin
. Код ответа 200 или 30x указывает на доступность.
Билет 23
- Теория: Как работает атака «Brute Force»?
- Теория: Что такое «Input Sanitization»?
- Практика: Проверьте, блокирует ли форма авторизации на сайте
example.com
множественные попытки ввода пароля.
Ответы:
- Перебор паролей или токенов для доступа к аккаунту.
- Очистка входных данных от потенциально опасных символов.
- Несколько раз ввести неверный пароль. Если нет блокировки или CAPTCHA — проблема есть.
Билет 24
- Теория: Что такое «Zero-Day Vulnerability»?
- Теория: Для чего используется инструмент Metasploit?
- Практика: Проверьте, доступен ли файл
robots.txt
на сайтеtest.com
.
Ответы:
- Уязвимость, о которой публике неизвестно, а злоумышленники уже ее эксплуатируют.
- Metasploit — фреймворк для разработки и использования эксплойтов.
- Перейти по URL
test.com/robots.txt
. Если файл существует — проанализировать его содержимое.
Билет 25
- Теория: Опишите уязвимость «XML External Entity (XXE)».
- Теория: Что такое «Threat Modeling»?
- Практика: Проверьте, обрабатывает ли сервер POST-запросы с большим объемом данных. Используйте Burp Suite.
Ответы:
- Атака на XML-парсер, приводящая к чтению файлов или DoS.
- Процесс идентификации угроз на этапе проектирования системы.
- В Burp Suite отправить POST-запрос с полем, содержащим 10 МБ данных. Проверить реакцию сервера.
Билет 26
- Теория: Что такое DoS-атака и чем она отличается от DDoS?
- Теория: Как работает аутентификация по JWT?
- Практика: Проверьте, уязвим ли параметр
search
в URLexample.com/search?query=test
к XSS. Используйте ввод<script>alert(1)</script>
.
Ответы:
- DoS — атака для вывода ресурса из строя через перегрузку. DDoS — распределенная DoS с множества источников.
- JWT — токен, содержащий данные пользователя и цифровую подпись, для stateless-аутентификации.
- Ввести
<script>alert(1)</script>
в параметрquery
. Если скрипт выполнится — уязвимость присутствует.
Билет 27
- Теория: Опишите уязвимость «Weak Cryptographic Algorithms».
- Теория: Для чего используется OAuth 2.0?
- Практика: Проверьте, доступен ли файл
/.git/config
на сайтеtest.com
. Используйтеcurl
.
Ответы:
- Использование устаревших алгоритмов (например, SHA-1, MD5), которые легко взломать.
- OAuth 2.0 — протокол авторизации для доступа к ресурсам без передачи паролей.
- Команда:
curl -I test.com/.git/config
. Код 200 указывает на утечку конфигурации Git.
Билет 28
- Теория: Что такое «API Abuse»?
- Теория: Как работает инструмент Postman при тестировании API?
- Практика: Проверьте, возвращает ли GraphQL-запрос на
example.com/graphql
больше данных, чем нужно. Используйте запрос: - { users { id, password } }
Ответы:
- Эксплуатация слабых мест в API (например, отсутствие ограничений на запросы).
- Postman отправляет HTTP-запросы к API, проверяет ответы на соответствие ожидаемым.
- Если в ответе присутствует поле
password
— уязвимость.
Билет 29
- Теория: Как работает атака «DNS Spoofing»?
- Теория: Что такое «HIPAA» и к каким данным он применяется?
- Практика: Проверьте, доступны ли файлы в S3-бакете
example-bucket
. Используйте URL:http://example-bucket.s3.amazonaws.com
.
Ответы:
- Подмена DNS-записей для перенаправления трафика на злоумышленника.
- HIPAA — стандарт защиты медицинских данных (PHI) в США.
- Перейти по URL. Если файлы доступны без авторизации — миссконфигурация.
Билет 30
- Теория: Что такое «Container Escape» в Docker?
- Теория: Для чего используется инструмент Kali Linux?
- Практика: Проверьте, установлен ли заголовок
X-XSS-Protection
на сайтеtest.com
.
Ответы:
- Выход из контейнера Docker для получения доступа к хост-системе.
- Kali Linux — дистрибутив для тестирования на проникновение, содержит инструменты вроде Nmap, Metasploit.
- Использовать
curl -I test.com
и проверить наличие заголовкаX-XSS-Protection: 1; mode=block
.
Билет 31
- Теория: Опишите уязвимость «Excessive Data Exposure» в API.
- Теория: Как работает инструмент Hashcat?
- Практика: Проверьте, доступна ли консоль разработчика в мобильном приложении. Используйте инструмент
adb
.
Ответы:
- API возвращает избыточные данные (например, пароли в открытом виде).
- Hashcat — инструмент для brute-force и dictionary атак на хеши паролей.
- Подключить устройство через ADB, выполнить
adb logcat
. Поискать логи с чувствительными данными.
Билет 32
- Теория: Что такое «Race Condition» в безопасности?
- Теория: Для чего используется инструмент Nessus?
- Практика: Проверьте, уязвим ли параметр
lang
в URLexample.com?lang=ru
к LFI. Используйте../../../../etc/passwd
.
Ответы:
- Атака, при которой результат зависит от порядка выполнения операций (например, двойная оплата).
- Nessus — сканер уязвимостей для анализа сети и приложений.
- Ввести
lang=../../../../etc/passwd
. Если отображается содержимое файла — уязвимость.
Билет 33
- Теория: Как работает атака «Buffer Overflow»?
- Теория: Что такое «GDPR» и какие данные он защищает?
- Практика: Проверьте, скрыты ли чувствительные данные в логах сервера. Используйте тестовый запрос с паролем.
Ответы:
- Переполнение буфера для выполнения произвольного кода или сбоя приложения.
- GDPR — регламент защиты персональных данных в ЕС (имя, email, IP-адрес).
- Отправить POST-запрос с паролем, проверить логи на наличие сохраненного пароля.
Билет 34
- Теория: Что такое «Privilege Escalation»?
- Теория: Для чего используется инструмент Hydra?
- Практика: Проверьте, доступна ли панель управления Kubernetes по адресу
k8s.example.com:8001
.
Ответы:
- Повышение прав пользователя для доступа к системным ресурсам.
- Hydra — инструмент для brute-force атак на авторизацию (SSH, FTP, HTTP).
- Перейти по URL. Если интерфейс доступен без аутентификации — проблема.
Билет 35
- Теория: Опишите уязвимость «Improper Error Handling».
- Теория: Как работает инструмент John the Ripper?
- Практика: Проверьте, блокирует ли сервер запросы с нелегальными HTTP-методами (PUT, DELETE). Используйте
curl -X PUT example.com
.
Ответы:
- Вывод технических ошибок, раскрывающих информацию об уязвимостях.
- John the Ripper — инструмент для взлома паролей методом brute-force.
- Если сервер возвращает 405 или 403 — методы заблокированы.
Билет 36
- Теория: Что такое «Insecure Direct Object References (IDOR)»?
- Теория: Как работает инструмент
dex2jar
для анализа APK? - Практика: Проверьте, доступны ли внутренние endpoints в мобильном API через Proxyman.
Ответы:
- Уязвимость, при которой доступ к объектам (например, файлам, данным) осуществляется через предсказуемые идентификаторы без проверки прав.
dex2jar
конвертирует файлы Dalvik (DEX) из APK в формат JAR для декомпиляции и анализа.- Настроить Proxyman как прокси, перехватить API-запросы, изменить параметры (например,
user_id=1
), проверить доступ.
Билет 37
- Теория: Как работает атака «Session Fixation»?
- Теория: Что такое «AWS IAM» и зачем он нужен?
- Практика: Проверьте, доступны ли секреты в конфигурации Docker. Используйте
docker inspect
.
Ответы:
- Атакующий подсовывает жертве известный сессионный ID, чтобы перехватить сессию после аутентификации.
- AWS IAM управляет правами доступа к ресурсам AWS (пользователи, роли, политики).
- Выполнить
docker inspect <container_id>
, проверить переменные окружения на наличие паролей или API-ключей.
Билет 38
- Теория: Опишите уязвимость «Missing Encryption» в мобильных приложениях.
- Теория: Для чего используется инструмент
MobSF
? - Практика: Проверьте, скрыты ли чувствительные данные в логах Android-приложения. Используйте
logcat
.
Ответы:
- Передача или хранение данных без шифрования (например, паролей в plaintext).
- Mobile Security Framework (MobSF) анализирует APK/IPA на уязвимости, включая пермишены и код.
- Подключить устройство, выполнить
adb logcat
, найти логи с данными ввода (пароли, токены).
Билет 39
- Теория: Что такое «Cross-Origin Resource Sharing (CORS)»?
- Теория: Как работает инструмент
kube-bench
? - Практика: Проверьте, разрешены ли запросы с любого домена в заголовке
Access-Control-Allow-Origin
.
Ответы:
- Механизм, регулирующий доступ веб-приложений к ресурсам другого домена.
kube-bench
проверяет конфигурации Kubernetes на соответствие рекомендациям безопасности CIS.- Использовать
curl -I example.com
, проверить значениеAccess-Control-Allow-Origin: *
(нежелательно).
Билет 40
- Теория: Как работает атака «Reverse Engineering»?
- Теория: Что такое «HIPAA» и какие данные он защищает?
- Практика: Проверьте, доступны ли метаданные в AWS S3-бакете. Используйте
aws s3 ls s3://example-bucket
.
Ответы:
- Восстановление исходного кода или логики приложения из бинарных файлов.
- HIPAA регулирует защиту медицинских данных (PHI) в США.
- Если команда возвращает список файлов — бакет публичный.
Билет 41
- Теория: Что такое «JWT Token Hijacking»?
- Теория: Для чего используется инструмент
SSLScan
? - Практика: Проверьте, поддерживает ли сервер устаревший шифр
SSLv3
. Используйтеsslscan example.com
.
Ответы:
- Перехват JWT-токена для несанкционированного доступа к аккаунту.
SSLScan
проверяет поддержку SSL/TLS-протоколов и шифров.- В выводе
sslscan
найти строки сSSLv3
.
Билет 42
- Теория: Опишите уязвимость «Improper Certificate Validation» в мобильных приложениях.
- Теория: Что такое «GDPR» и какие данные он защищает?
- Практика: Проверьте, доступна ли конфигурация Kubernetes через API-сервер. Используйте
kubectl get pods
.
Ответы:
- Приложение не проверяет SSL-сертификаты, что позволяет MitM-атаки.
- GDPR защищает персональные данные (имя, email, IP) граждан ЕС.
- Если команда возвращает список подов без аутентификации — проблема.
Билет 43
- Теория: Как работает атака «Side-Channel Attack»?
- Теория: Для чего используется инструмент
Wifite
? - Практика: Проверьте, включена ли двухфакторная аутентификация (2FA) на тестовом сайте.
Ответы:
- Атака, основанная на анализе косвенных данных (время выполнения, энергопотребление).
Wifite
автоматизирует атаки на Wi-Fi сети (взлом WPA/WEP).- Попробовать войти в аккаунт: если после ввода логина/пароля требуется код из SMS — 2FA активна.
Билет 44
- Теория: Что такое «Insecure Storage» в мобильных приложениях?
- Теория: Как работает инструмент
Trivy
? - Практика: Проверьте, доступны ли секреты в Docker-образе. Используйте
docker history
.
Ответы:
- Хранение чувствительных данных (паролей, ключей) в незашифрованном виде.
Trivy
сканирует Docker-образы на уязвимости в зависимостях и ОС.- Выполнить
docker history <image>
, искать слои с записью секретов.
Билет 45
- Теория: Опишите уязвимость «Unvalidated Redirects» в веб-приложениях.
- Теория: Что такое «CVE» и как его использовать?
- Практика: Проверьте, перенаправляет ли параметр
redirect_url
на внешний домен. Используйте URL:example.com/login?redirect_url=evil.com
.
Ответы:
- Перенаправление пользователя на вредоносный сайт через параметры URL.
- CVE — идентификатор уязвимости. Используется для поиска информации и патчей.
- Если после авторизации происходит редирект на
evil.com
— уязвимость.
Билет 46
- Теория: Что такое «Server-Side Template Injection»?
- Теория: Как работает инструмент
Bandit
для анализа Python-кода? - Практика: Проверьте, уязвим ли параметр
template
в URLexample.com/generate?template=report
к SSTI.
Ответы:
- Уязвимость, при которой атакующий внедряет вредоносный код в шаблоны (например, Jinja2), что приводит к выполнению произвольных команд.
Bandit
статически анализирует Python-код на наличие уязвимостей (SQLi, XSS, использование небезопасных функций).- Ввести
{{7*'7'}}
в параметрtemplate
. Если выводится49
— уязвимость подтверждена.
Билет 47
- Теория: Что такое «Helm Chart Misconfiguration»?
- Теория: Для чего используется инструмент
kube-bench
? - Практика: Проверьте, отключена ли опция
runAsRoot
в Kubernetes Deployment. Используйтеkubectl describe pod <pod_name>
.
Ответы:
- Ошибки в конфигурациях Helm-чартов, приводящие к утечкам данных или доступу к кластеру.
kube-bench
проверяет соответствие конфигураций Kubernetes рекомендациям CIS.- В выводе
kubectl describe
найтиSecurityContext: runAsNonRoot: true
.
Билет 48
- Теория: Опишите уязвимость «Insecure Broadcast Receivers» в Android.
- Теория: Как работает инструмент
mitmproxy
? - Практика: Проверьте, передаются ли токены авторизации в незашифрованных Intent-сообщениях. Используйте
adb logcat
.
Ответы:
- Приемник Broadcast-сообщений обрабатывает данные без проверки, что позволяет перехватывать или подменять их.
mitmproxy
анализирует и модифицирует HTTP/HTTPS-трафик между клиентом и сервером.- В логах
logcat
найти строки сIntent
и проверить наличие токенов в plaintext.
Билет 49
- Теория: Что такое «Rate Limiting» в API?
- Теория: Для чего используется инструмент
Postman
при тестировании API? - Практика: Проверьте, ограничено ли количество запросов к эндпоинту
example.com/api/data
. Отправьте 100 запросов за 1 секунду.
Ответы:
- Механизм ограничения количества запросов к API для предотвращения DoS-атак.
- Postman отправляет тестовые запросы, проверяет ответы, тестирует аутентификацию и валидацию данных.
- Если сервер возвращает ошибку
429 Too Many Requests
— rate limiting работает.
Билет 50
- Теория: Как работает атака «iOS Keychain Exposure»?
- Теория: Что такое «Azure Storage Misconfiguration»?
- Практика: Проверьте, доступны ли файлы в Azure Blob Storage по URL
https://example.blob.core.windows.net/container/file.txt
.
Ответы:
- Доступ к данным Keychain (пароли, сертификаты) через уязвимости в приложении или jailbreak.
- Ошибки в настройках доступа к Azure Storage (например, публичный доступ к контейнерам).
- Перейти по URL. Если файл загружается без авторизации — проблема с конфигурацией.
Билет 51
- Теория: Что такое «Secrets in Code»?
- Теория: Как работает инструмент
GitGuardian
? - Практика: Проверьте, есть ли закоммиченные секреты в репозитории. Используйте
git log -S "password"
.
Ответы:
- Секреты (API-ключи, пароли) в исходном коде, доступные через публичные репозитории.
GitGuardian
сканирует коммиты на наличие утечек секретов.- Если команда выводит коммиты с паролями — утечка подтверждена.
Билет 52
- Теория: Что такое «CI/CD Pipeline Security»?
- Теория: Для чего используется инструмент
Trivy
? - Практика: Проверьте, есть ли уязвимости в Docker-образе
nginx:latest
. Используйтеtrivy image nginx:latest
.
Ответы:
- Обеспечение безопасности на этапах сборки, тестирования и деплоя приложений.
Trivy
сканирует образы и файлы на уязвимости в зависимостях и ОС.- Вывод
trivy
покажет CVE и их уровень критичности.
Билет 53
- Теория: Опишите уязвимость «Insecure Firmware Update» в IoT-устройствах.
- Теория: Как работает инструмент
Binwalk
? - Практика: Проверьте, содержит ли прошивка IoT-устройства незашифрованные пароли. Используйте
binwalk firmware.bin
.
Ответы:
- Обновление прошивки без проверки подписи или шифрования.
Binwalk
анализирует прошивки на наличие скрытых данных и уязвимостей.- В выводе
binwalk
найти строки с паролями или ключами.
Билет 54
- Теория: Что такое «Social Engineering»?
- Теория: Для чего используется инструмент
Ghidra
? - Практика: Проверьте, скрыты ли API-ключи в исходном коде мобильного приложения. Используйте декомпилятор Jadx.
Ответы:
- Манипуляция людьми для получения конфиденциальной информации.
Ghidra
— инструмент для reverse engineering бинарников.- В декомпилированном коде найти строки вида
apiKey = "..."
.
Билет 55
- Теория: Как работает атака «DNS Rebinding»?
- Теория: Что такое «Azure Key Vault»?
- Практика: Проверьте, доступны ли секреты в Azure Key Vault без аутентификации. Используйте Azure CLI.
Ответы:
- Подмена DNS-записи для доступа к внутренним ресурсам через браузер.
- Служба Azure для безопасного хранения ключей, паролей и сертификатов.
- Выполнить
az keyvault secret list --vault-name <vault>
. Если секреты отображаются — проблема.
Билет 56
- Теория: Что такое «Supply Chain Attack»?
- Теория: Для чего используется инструмент
Dependabot
? - Практика: Проверьте, устаревшие ли зависимости в проекте. Используйте
npm audit
.
Ответы:
- Атака через компоненты цепочки поставок (например, вредоносные пакеты).
Dependabot
автоматически обновляет зависимости в репозиториях.- Вывод
npm audit
покажет уязвимые пакеты.
Билет 57
- Теория: Опишите уязвимость «Weak Password Policy».
- Теория: Как работает инструмент
Hashcat
? - Практика: Проверьте, можно ли взломать хеш пароля
5f4dcc3b5aa765d61d8327deb882cf99
(MD5). Используйте словарь.
Ответы:
- Отсутствие требований к сложности паролей, что упрощает brute-force.
Hashcat
подбирает пароли по хешам с использованием GPU.- Запустить
hashcat -m 0 hash.txt dictionary.txt
. Если найден парольpassword
— уязвимость.
Билет 58
- Теория: Что такое «Network Segmentation»?
- Теория: Для чего используется инструмент
Tcpdump
? - Практика: Проверьте, передаются ли пароли в открытом виде в локальной сети. Используйте
tcpdump port 80
.
Ответы:
- Разделение сети на сегменты для ограничения распространения атак.
Tcpdump
захватывает сетевой трафик для анализа.- В выводе
tcpdump
найти строки сpassword=
илиAuthorization: Basic
.
Билет 59
- Теория: Как работает атака «Pass the Hash»?
- Теория: Что такое «AWS Security Hub»?
- Практика: Проверьте, активированы ли правила безопасности в AWS Security Hub. Используйте консоль AWS.
Ответы:
- Использование хеша NTLM для аутентификации без знания пароля.
- Сервис AWS для централизованного управления уязвимостями.
- В консоли AWS перейти в Security Hub → проверить статус правил.
Билет 60
- Теория: Опишите уязвимость «Missing Input Validation» в API.
- Теория: Для чего используется инструмент
Swagger
? - Практика: Проверьте, обрабатывает ли API запрос с некорректным JSON. Используйте Postman.
Ответы:
- Отсутствие проверки входных данных, что приводит к инъекциям или сбоям.
Swagger
документирует API и тестирует эндпоинты.- Отправить
{ "id": "string" }
в эндпоинт, ожидающий число. Если сервер не возвращает ошибку — проблема.
Билет 61
- Теория: Что такое «MQTT Security»?
- Теория: Как работает инструмент
Mosquitto
? - Практика: Проверьте, доступна ли подписка на топики MQTT-брокера без аутентификации.
Ответы:
- Безопасность протокола MQTT включает шифрование, аутентификацию и контроль доступа к топикам.
Mosquitto
— открытый MQTT-брокер для передачи сообщений между устройствами.- Подключиться через
mosquitto_sub -t "#" -v
. Если данные поступают без логина/пароля — проблема.
Билет 62
- Теория: Опишите уязвимость «Hardcoded Secrets» в конфигах.
- Теория: Для чего используется инструмент
Gitleaks
? - Практика: Проверьте, есть ли секреты в конфигурационных файлах проекта. Используйте
grep -r "API_KEY" ./config
.
Ответы:
- Секреты (ключи, пароли) жестко заданы в коде или конфигах, что ведет к утечкам.
Gitleaks
сканирует репозитории на наличие закоммиченных секретов.- Если команда находит строки вида
API_KEY=12345
— утечка подтверждена.
Билет 63
- Теория: Как работает атака «Reverse Shell»?
- Теория: Что такое «CoAP Protocol» и какие у него есть уязвимости?
- Практика: Проверьте, открыт ли порт CoAP (5683) на IoT-устройстве. Используйте
nmap -p 5683 192.168.1.100
.
Ответы:
- Атакующий получает доступ к командной оболочке жертвы через уязвимость в приложении.
- CoAP — протокол для IoT. Уязвимости: отсутствие шифрования, подмена пакетов.
- Если порт 5683 открыт — устройство использует CoAP.
Билет 64
- Теория: Что такое «Security Misconfiguration» в Kubernetes?
- Теория: Как работает инструмент
Kube-Hunter
? - Практика: Проверьте, доступен ли Kubernetes Dashboard без аутентификации. Используйте
kubectl proxy
.
Ответы:
- Ошибки в настройках кластера (открытые порты, права доступа).
Kube-Hunter
ищет уязвимости в Kubernetes (например, незащищенные API).- Перейти по URL
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
. Если доступ без логина — проблема.
Билет 65
- Теория: Опишите уязвимость «Weak Password Recovery».
- Теория: Для чего используется инструмент
Hydra
? - Практика: Проверьте, уязвима ли форма восстановления пароля к перебору кодов. Используйте
hydra -l user@example.com -P pass.txt example.com http-post-form "/reset:code=^PASS^:Invalid code"
.
Ответы:
- Сброс пароля без проверки личности (например, перебор кодов из SMS).
Hydra
— инструмент для brute-force атак на авторизацию и формы.- Если Hydra находит валидный код — уязвимость.
Билет 66
- Теория: Что такое «GraphQL Injection»?
- Теория: Как работает инструмент
GraphiQL
? - Практика: Проверьте, возвращает ли GraphQL-запрос все данные при некорректном фильтре. Используйте запрос:
{ users(where: { id: { _lt: 100 } }) { id, password } }
Ответы:
- Внедрение вредоносных запросов в GraphQL для доступа к данным.
GraphiQL
— IDE для тестирования GraphQL-запросов.- Если ответ содержит поле
password
— уязвимость.
Билет 67
- Теория: Как работает атака «Evil Twin» в Wi-Fi сетях?
- Теория: Что такое «HIPAA Compliance»?
- Практика: Проверьте, шифруются ли данные в мобильном приложении для здравоохранения. Используйте Wireshark.
Ответы:
- Создание поддельной Wi-Fi сети с тем же SSID для перехвата трафика.
- Соответствие требованиям HIPAA по защите медицинских данных (PHI).
- Захватить трафик приложения. Если данные передаются в plaintext — нарушение.
Билет 68
- Теория: Опишите уязвимость «Insecure File Upload».
- Теория: Для чего используется инструмент
ExifTool
? - Практика: Проверьте, сохраняются ли метаданные в загруженных файлах. Используйте
exiftool image.jpg
.
Ответы:
- Загрузка вредоносных файлов (например, .php) через непроверенные загрузки.
ExifTool
извлекает метаданные из файлов (GPS, автор, дата).- Если в выводе есть чувствительные данные (координаты) — проблема.
Билет 69
- Теория: Что такое «Security Headers» и зачем они нужны?
- Теория: Как работает инструмент
SecurityHeaders
? - Практика: Проверьте, установлен ли заголовок
X-Content-Type-Options
на сайтеtest.com
.
Ответы:
- HTTP-заголовки (CSP, HSTS) для защиты от XSS, clickjacking.
SecurityHeaders
анализирует HTTP-заголовки на соответствие лучшим практикам.- Использовать
curl -I test.com
. Проверить наличиеX-Content-Type-Options: nosniff
.
Билет 70
- Теория: Опишите уязвимость «Broken Link Hijacking».
- Теория: Для чего используется инструмент
LinkChecker
? - Практика: Проверьте, есть ли битые ссылки на сайте
example.com
. Используйтеlinkchecker http://example.com
.
Ответы:
- Злоумышленник перехватывает трафик через битые ссылки на сторонние ресурсы.
LinkChecker
находит битые или небезопасные ссылки на сайте.- Вывод
linkchecker
покажет битые ссылки (код 404).
Билет 71
- Теория: Что такое «WebSocket Security»?
- Теория: Для чего используется инструмент
WSSi
? - Практика: Проверьте, уязвим ли WebSocket-эндпоинт
wss://example.com/socket
к внедрению скриптов. Отправьте сообщение<script>alert('XSS')</script>
.
Ответы:
- Безопасность протокола WebSocket включает защиту от XSS, манипуляций с сообщениями и перехвата трафика.
WSSi
тестирует WebSocket на уязвимости (XSS, инъекции).- Если скрипт выполняется — уязвимость подтверждена.
Билет 72
- Теория: Опишите уязвимость «AI Model Poisoning».
- Теория: Как работает инструмент
Adversarial Robustness Toolbox
? - Практика: Проверьте, обрабатывает ли ML-модель аномальные входные данные. Используйте
adversarial-robustness-toolbox
.
Ответы:
- Манипуляция обучающими данными для искажения работы AI-модели.
- Инструмент для тестирования устойчивости ML-моделей к атакам.
- Запустить тест: если модель возвращает некорректные результаты — проблема.
Билет 73
- Теория: Что такое «Dependency Confusion»?
- Теория: Как работает инструмент
Dependabot
? - Практика: Проверьте, устаревшие ли зависимости в проекте. Используйте
npm ls <package>
.
Ответы:
- Атака через подмену пакетов в публичных репозиториях.
Dependabot
автоматически обновляет зависимости для устранения уязвимостей.- Если версия пакета ниже актуальной — требуется обновление.
Билет 74
- Теория: Как работает атака «Serverless Function Misconfiguration»?
- Теория: Для чего используется инструмент
SAM CLI
? - Практика: Проверьте, открыты ли публичные функции AWS Lambda. Используйте AWS CLI.
Ответы:
- Эксплуатация неправильных настроек прав доступа или триггеров в serverless-функциях.
SAM CLI
тестирует и деплоит AWS Lambda-функции.- Выполнить
aws lambda list-functions
. Проверить политики IAM на наличиеpublic
доступа.
Билет 75
- Теория: Опишите уязвимость «Cookie Overflow».
- Теория: Для чего используется инструмент
Cookie Cadger
? - Практика: Проверьте, передаются ли куки в незашифрованном виде. Используйте Wireshark.
Ответы:
- Переполнение куки для кражи сессий или сбоя приложения.
Cookie Cadger
перехватывает куки из HTTP-трафика.- В Wireshark найти пакеты с
Cookie:
, проверить их видимость.
Билет 76
- Теория: Что такое «Blockchain Security»?
- Теория: Как работает инструмент
Mythril
? - Практика: Проверьте, уязвим ли смарт-контракт к переполнению целых чисел. Используйте
myth analyze contract.sol
.
Ответы:
- Защита блокчейн-систем от атак (например, reentrancy, 51% атаки).
Mythril
анализирует смарт-контракты на уязвимости.- Если в выводе есть
Integer Overflow
— проблема.
Билет 77
- Теория: Как работает атака «DDoS Amplification»?
- Теория: Для чего используется инструмент
Snort
? - Практика: Проверьте, настроены ли правила Snort для обнаружения аномального трафика. Используйте
snort -c snort.conf -A console
.
Ответы:
- Усиление DDoS-атаки через эксплуатацию открытых серверов (NTP, DNS).
Snort
анализирует сетевой трафик для обнаружения вторжений.- Если в логах есть аномалии — правила работают.
Билет 78
- Теория: Опишите уязвимость «Microservices Misconfiguration».
- Теория: Для чего используется инструмент
Istio
? - Практика: Проверьте, открыты ли внутренние порты микросервисов. Используйте
kubectl get services
.
Ответы:
- Ошибки в настройках сетевых политик или аутентификации между сервисами.
Istio
управляет трафиком и безопасностью в микросервисах.- Если порты типа
8080:31000/TCP
доступны извне — проблема.
Билет 79
- Теория: Что такое «AI-Powered Penetration Testing»?
- Теория: Как работает инструмент
DeepExploit
? - Практика: Проверьте, автоматизирует ли DeepExploit поиск уязвимостей в тестовой сети.
Ответы:
- Использование AI для автоматизации поиска и эксплуатации уязвимостей.
DeepExploit
обучается на данных и генерирует эксплойты.- Запустить сканирование: если обнаружены уязвимости — инструмент работает.
Билет 80
- Теория: Опишите уязвимость «Insecure Deserialization in Java».
- Теория: Для чего используется инструмент
SerializationDumper
? - Практика: Проверьте, можно ли десериализовать вредоносный объект. Используйте тестовый файл
exploit.ser
.
Ответы:
- Выполнение произвольного кода через непроверенные сериализованные объекты.
SerializationDumper
анализирует сериализованные данные Java.- Если десериализация приводит к сбою или выполнению кода — уязвимость.
Билет 81
- Теория: Что такое «API Gateway Security»?
- Теория: Как работает инструмент
Postman
для тестирования API? - Практика: Проверьте, возвращает ли API-эндпоинт
example.com/api/users
данные без аутентификации.
Ответы:
- Защита API-шлюза от DDoS, инъекций и несанкционированного доступа.
- Postman отправляет запросы, проверяет ответы и тестирует аутентификацию.
- Если данные выводятся без токена — проблема.
Билет 82
- Теория: Опишите уязвимость «NoSQL Injection».
- Теория: Для чего используется инструмент
Nosqlmap
? - Практика: Проверьте, уязвим ли параметр
id
в MongoDB-запросе:db.users.find({ _id: ObjectId("{{user_input}}") })
.
Ответы:
- Внедрение вредоносных запросов в NoSQL-базы (например, MongoDB).
Nosqlmap
автоматизирует поиск NoSQL-инъекций.- Ввести
user_input: 1 || 1==1
— если возвращаются все записи — уязвимость.
Билет 83
- Теория: Как работает атака «Email Spoofing»?
- Теория: Что такое «SPF-запись» и зачем она нужна?
- Практика: Проверьте, настроена ли SPF-запись для домена
example.com
. Используйтеdig example.com TXT
.
Ответы:
- Подделка отправителя письма для фишинга.
- SPF-запись указывает разрешенные серверы для отправки почты.
- Если в выводе есть
v=spf1
— защита настроена.
Билет 84
- Теория: Что такое «DevSecOps»?
- Теория: Для чего используется инструмент
Anchore
? - Практика: Проверьте, есть ли уязвимости в Dockerfile. Используйте
anchore-cli image add example.com/image:latest
.
Ответы:
- Интеграция безопасности в DevOps-процессы.
Anchore
анализирует образы на уязвимости и соответствие политикам.- Вывод покажет CVE и рекомендации.
Билет 85
- Теория: Опишите уязвимость «Physical Device Tampering».
- Теория: Как работает инструмент
USB Rubber Ducky
? - Практика: Проверьте, защищен ли компьютер от BadUSB-атак. Используйте тестовый USB-накопитель.
Ответы:
- Вмешательство в аппаратные компоненты (например, установка жучков).
USB Rubber Ducky
эмулирует клавиатуру для выполнения скриптов.- Если компьютер выполняет скрипт с USB без запроса — уязвимость.
Билет 86
- Теория: Что такое «OAuth 2.0 Scope Misconfiguration»?
- Теория: Для чего используется инструмент
OAuth-Mitre
? - Практика: Проверьте, запрашивает ли приложение минимальные права в OAuth. Используйте тестовый токен.
Ответы:
- Приложение получает больше прав, чем необходимо.
OAuth-Mitre
анализирует уязвимости в OAuth-реализациях.- Если scope токена включает
write
вместоread
— проблема.
Билет 87
- Теория: Как работает атака «DNS Tunneling»?
- Теория: Что такое «Hashicorp Vault»?
- Практика: Проверьте, доступны ли секреты в Hashicorp Vault без авторизации. Используйте
vault kv get secret/data
.
Ответы:
- Передача данных через DNS-запросы для обхода фаерволов.
- Система управления секретами и шифрованием.
- Если команда возвращает данные — аутентификация сломана.
Билет 88
- Теория: Опишите уязвимость «Weak Cipher Suites».
- Теория: Для чего используется инструмент
TestSSL
? - Практика: Проверьте, поддерживает ли сервер устаревшие шифры. Используйте
testssl.sh example.com
.
Ответы:
- Использование ненадежных алгоритмов шифрования (например, RC4).
TestSSL
проверяет SSL/TLS-конфигурации на уязвимости.- В выводе найти строки
Weak cipher
.
Билет 89
- Теория: Что такое «Zero Trust Architecture»?
- Теория: Как работает инструмент
OpenPolicyAgent
? - Практика: Проверьте, настроены ли политики доступа в Kubernetes. Используйте
kubectl auth can-i
.
Ответы:
- Модель безопасности, где ни один пользователь/устройство не доверяется по умолчанию.
OpenPolicyAgent
управляет политиками доступа в инфраструктуре.- Если
kubectl auth can-i get pods
возвращаетyes
для всех — проблема.
Билет 90
- Теория: Опишите уязвимость «Insecure Random Number Generation».
- Теория: Для чего используется инструмент
John the Ripper
? - Практика: Проверьте, можно ли подобрать сессионный токен. Используйте список токенов из логов.
Ответы:
- Генерация предсказуемых токенов или паролей.
John the Ripper
взламывает хеши паролей.- Если токены повторяются или имеют простую структуру — уязвимость.
Билет 91
- Теория: Что такое «Phishing Simulation»?
- Теория: Как работает инструмент
Gophish
? - Практика: Проверьте, открываются ли поддельные ссылки в фишинговом письме. Используйте тестовую рассылку.
Ответы:
- Тестирование осведомленности сотрудников через имитацию фишинга.
Gophish
автоматизирует создание и анализ фишинговых кампаний.- Если пользователи кликают на ссылки — требуется обучение.
Билет 92
- Теория: Опишите уязвимость «Unsecured Cloud Storage».
- Теория: Для чего используется инструмент
Pacu
? - Практика: Проверьте, доступны ли файлы в Google Cloud Storage бакете. Используйте
gsutil ls gs://example-bucket
.
Ответы:
- Публичный доступ к облачным хранилищам (AWS S3, GCS).
Pacu
ищет уязвимости в AWS-конфигурациях.- Если команда выводит файлы — бакет публичный.
Билет 93
- Теория: Как работает атака «ARP Spoofing»?
- Теория: Что такое «Network Tap»?
- Практика: Проверьте, перехватывает ли
Ettercap
трафик в локальной сети.
Ответы:
- Подмена ARP-таблиц для перехвата трафика в LAN.
- Устройство для мониторинга сетевого трафика.
- Если в
Ettercap
отображаются данные других устройств — атака успешна.
Билет 94
- Теория: Опишите уязвимость «JWT None Algorithm».
- Теория: Для чего используется инструмент
jwt_tool
? - Практика: Проверьте, принимает ли сервер JWT-токены с
alg: none
. Измените токен черезjwt_tool
.
Ответы:
- Сервер доверяет токенам без подписи (alg: none).
jwt_tool
анализирует и эксплуатирует уязвимости в JWT.- Если измененный токен принимается — уязвимость.
Билет 95
- Теория: Что такое «Data Exfiltration»?
- Теория: Как работает инструмент
PingCastle
? - Практика: Проверьте, возможно ли копирование данных через ICMP-пакеты. Используйте
tcpdump icmp
.
Ответы:
- Вывод данных из системы через скрытые каналы.
PingCastle
анализирует Active Directory на уязвимости.- Если в ICMP-пакетах есть данные — проблема.
Билет 96
- Теория: Опишите уязвимость «Insecure Deserialization in Python».
- Теория: Для чего используется инструмент
Pickle Inspector
? - Практика: Проверьте, выполняется ли произвольный код при десериализации объекта. Используйте тестовый файл.
Ответы:
- Выполнение кода через непроверенные объекты
pickle
. Pickle Inspector
анализирует сериализованные объекты Python.- Если десериализация вызывает выполнение кода — уязвимость.
Билет 97
- Теория: Что такое «Security Chaos Engineering»?
- Теория: Как работает инструмент
Chaos Monkey
? - Практика: Проверьте, устойчива ли система к внезапным отказам. Используйте тестовый сценарий.
Ответы:
- Тестирование устойчивости систем к сбоям через управляемый хаос.
Chaos Monkey
случайно отключает сервисы для проверки отказоустойчивости.- Если система восстанавливается — защита работает.
Билет 98
- Теория: Опишите уязвимость «Weak Physical Access Controls».
- Теория: Для чего используется инструмент
Proxmark3
? - Практика: Проверьте, клонируется ли RFID-карта доступа. Используйте
Proxmark3
.
Ответы:
- Недостаточная защита физического доступа (например, слабые замки).
Proxmark3
считывает и клонирует RFID-метки.- Если карта клонирована — проблема.
Билет 99
- Теория: Что такое «HTTP/2 Security»?
- Теория: Как работает инструмент
h2csmuggler
? - Практика: Проверьте, уязвим ли сервер к HTTP/2-смугглингу. Используйте тестовый запрос.
Ответы:
- Защита HTTP/2 от атак вроде request smuggling.
h2csmuggler
тестирует HTTP/2-серверы на уязвимости.- Если сервер возвращает некорректный ответ — уязвимость.
Билет 100
- Теория: Опишите уязвимость «Insecure Use of WebSockets».
- Теория: Для чего используется инструмент
WSSi
? - Практика: Проверьте, передаются ли чувствительные данные в WebSocket без шифрования. Используйте Wireshark.
Ответы:
- Отсутствие шифрования или аутентификации в WebSocket.
WSSi
анализирует WebSocket на уязвимости.- Если данные видны в plaintext — проблема.
Базовые понятия безопасности
-
Что такое OWASP Top 10?
a) Список лучших практик разработки ПО
b) Рейтинг самых популярных языков программирования
c) Перечень наиболее критичных уязвимостей веб-приложений
d) Стандарт шифрования данных
Правильный ответ: c) -
Как называется атака, при которой злоумышленник внедряет вредоносный SQL-код в запросы к базе данных?
a) XSS
b) CSRF
c) SQL-инъекция
d) DoS
Правильный ответ: c) -
Что такое penetration testing?
a) Поиск уязвимостей в ПО
b) Имитация атаки на систему для выявления слабых мест
c) Устранение ошибок в коде
d) Аудит документации
Правильный ответ: b) -
Какой стандарт регулирует защиту персональных данных в ЕС?
a) GDPR
b) ISO 27001
c) PCI DSS
d) HIPAA
Правильный ответ: a) -
Что такое CVE?
a) Система шифрования данных
b) База данных уязвимостей
c) Инструмент для тестирования сети
d) Протокол передачи файлов
Правильный ответ: b)
Инструменты тестирования
-
Какой инструмент используется для анализа сетевого трафика?
a) Metasploit
b) Wireshark
c) Burp Suite
d) Nmap
Правильный ответ: b) -
Для чего предназначен Nmap?
a) Поиск уязвимостей в веб-приложениях
b) Сканирование портов и сетевых служб
c) Анализ защищенности баз данных
d) Генерация отчетов
Правильный ответ: b) -
Какой инструмент входит в состав Kali Linux?
a) Microsoft Excel
b) Metasploit
c) Photoshop
d) Zoom
Правильный ответ: b) -
Что делает OWASP ZAP?
a) Сканирует уязвимости веб-приложений
b) Тестирует мобильные приложения
c) Анализирует исходный код
d) Управляет проектами
Правильный ответ: a) -
Какой инструмент используется для автоматизации атак на системы?
a) Nessus
b) Metasploit
c) Jira
d) Slack
Правильный ответ: b)
Уязвимости веб-приложений
-
Какая уязвимость позволяет выполнить произвольный код на сервере через загрузку файлов?
a) Insecure Deserialization
b) XSS
c) CSRF
d) SQL-инъекция
Правильный ответ: a) -
Что такое Cross-Site Scripting (XSS)?
a) Атака на базу данных
b) Внедрение скриптов в веб-страницы
c) Перехват сессий
d) Подмена DNS
Правильный ответ: b) -
Как предотвратить CSRF-атаки?
a) Использовать HTTPS
b) Добавить CSRF-токены в формы
c) Увеличить таймаут сессии
d) Удалить cookies
Правильный ответ: b) -
Какая уязвимость связана с небезопасным хранением конфигурационных данных?
a) Security Misconfiguration
b) Sensitive Data Exposure
c) Broken Authentication
d) Insufficient Logging
Правильный ответ: a) -
Что такое SSRF (Server-Side Request Forgery)?
a) Атака на клиентскую часть приложения
b) Форсирование сервера на выполнение запросов к внутренним ресурсам
c) Взлом паролей
d) Переполнение буфера
Правильный ответ: b)
Сетевые уязвимости
-
Какой порт по умолчанию использует HTTPS?
a) 80
b) 443
c) 22
d) 21
Правильный ответ: b) -
Что такое MITM-атака?
a) Перехват трафика между клиентом и сервером
b) Атака на базу данных
c) Взлом пароля методом подбора
d) Удаление данных
Правильный ответ: a) -
Какой протокол считается устаревшим и небезопасным?
a) TLS 1.3
b) SSL 3.0
c) SSH
d) HTTPS
Правильный ответ: b) -
Что такое DNS Spoofing?
a) Подмена IP-адресов в DNS-записях
b) Взлом Wi-Fi сети
c) Удаление файлов
d) SQL-инъекция
Правильный ответ: a) -
Какая уязвимость связана с открытыми S3-бакетами в AWS?
a) Security Misconfiguration
b) Sensitive Data Exposure
c) Insecure Deserialization
d) Broken Access Control
Правильный ответ: a)
Практические сценарии
-
Что делать, если обнаружена критическая уязвимость в системе?
a) Исправить самостоятельно
b) Сообщить разработчикам и документировать
c) Удалить приложение
d) Игнорировать
Правильный ответ: b) -
Как проверить наличие SQL-инъекций вручную?
a) Ввести' OR 1=1--
в поле ввода
b) Использовать Nmap
c) Перезагрузить сервер
d) Удалить cookies
Правильный ответ: a) -
Какой HTTP-метод используется для отправки данных на сервер?
a) GET
b) POST
c) DELETE
d) OPTIONS
Правильный ответ: b) -
Что такое «фаззинг»?
a) Тестирование производительности
b) Подбор паролей
c) Генерация случайных данных для поиска уязвимостей
d) Анализ логов
Правильный ответ: c) -
Как защитить API от перебора паролей?
a) Ввести CAPTCHA
b) Ограничить количество запросов
c) Использовать HTTPS
d) Все вышеперечисленное
Правильный ответ: d)
Юридические аспекты
-
Что такое NDA в контексте тестирования безопасности?
a) Договор о неразглашении информации
b) Лицензия на использование ПО
c) Согласие на обработку данных
d) Договор аренды сервера
Правильный ответ: a) -
Что требуется для легального проведения penetration testing?
a) Устное согласие владельца системы
b) Письменное разрешение
c) Оплата услуг
d) Ничего
Правильный ответ: b)
Инструменты Kali Linux
-
Какая команда в Kali Linux используется для сканирования портов?
a)nmap
b)sqlmap
c)nikto
d)netcat
Правильный ответ: a) -
Для чего используется Hydra?
a) Поиск SQL-инъекций
b) Брутфорс паролей
c) Анализ трафика
d) Сканирование уязвимостей
Правильный ответ: b)
Уязвимости и атаки
-
Что такое Insecure Direct Object References (IDOR)?
a) Атака на базу данных через SQL-инъекции
b) Доступ к данным через прямые ссылки без проверки прав
c) Внедрение скриптов в веб-страницы
d) Перехват трафика
Правильный ответ: b) -
Какая уязвимость позволяет выполнить удаленный код (RCE)?
a) XSS
b) Deserialization
c) CSRF
d) Sensitive Data Exposure
Правильный ответ: b) -
Что такое Clickjacking?
a) Перехват паролей через фишинг
b) Маскировка вредоносного действия под безобидный элемент интерфейса
c) Подмена DNS-записей
d) Атака на SSL-сертификат
Правильный ответ: b) -
Как защититься от XSS-атак?
a) Использовать prepared statements
b) Валидировать и экранировать входные данные
c) Отключить JavaScript
d) Увеличить таймаут сессии
Правильный ответ: b) -
Что такое Session Hijacking?
a) Перехват сессионного cookie для доступа к аккаунту
b) Взлом пароля методом брутфорса
c) Удаление данных с сервера
d) Подмена IP-адреса
Правильный ответ: a)
Инструменты
-
Для чего используется sqlmap?
a) Сканирование сетевых портов
b) Автоматизация эксплуатации SQL-инъекций
c) Анализ логов
d) Генерация отчетов
Правильный ответ: b) -
Какой инструмент проверяет конфигурацию веб-сервера на уязвимости?
a) Nikto
b) Hydra
c) Netcat
d) John the Ripper
Правильный ответ: a) -
Что делает инструмент
dirb
?
a) Поиск скрытых директорий и файлов на веб-сервере
b) Сканирование уязвимостей баз данных
c) Анализ защищенности Wi-Fi
d) Перехват трафика
Правильный ответ: a) -
Какой инструмент используется для брутфорса паролей SSH?
a) Medusa
b) Wireshark
c) OWASP ZAP
d) Nmap
Правильный ответ: a) -
Что такое
gobuster
?
a) Инструмент для перебора поддоменов и путей
b) Сканер уязвимостей в мобильных приложениях
c) Анализатор исходного кода
d) Генератор паролей
Правильный ответ: a)
Сетевые протоколы и защита
-
Какой протокол обеспечивает шифрование трафика?
a) HTTP
b) FTP
c) TLS
d) SMTP
Правильный ответ: c) -
Что такое HSTS?
a) Метод защиты от MITM-атак через принудительное использование HTTPS
b) Система аутентификации
c) Протокол передачи файлов
d) Антивирус
Правильный ответ: a) -
Какой заголовок HTTP защищает от кликджекинга?
a)X-Frame-Options
b)Content-Security-Policy
c)X-XSS-Protection
d)Strict-Transport-Security
Правильный ответ: a) -
Что такое WAF?
a) Брандмауэр для защиты веб-приложений
b) Антивирусное ПО
c) Система резервного копирования
d) Инструмент для тестирования нагрузки
Правильный ответ: a) -
Какой порт использует SSH?
a) 22
b) 80
c) 443
d) 21
Правильный ответ: a)
Методы тестирования
-
Что включает этап «разведки» в penetration testing?
a) Сканирование портов
b) Сбор информации о цели (домены, поддомены, сотрудники)
c) Эксплуатация уязвимостей
d) Подготовка отчета
Правильный ответ: b) -
Что такое «пасивный recon»?
a) Сбор информации без прямого взаимодействия с целью
b) Атака на систему
c) Использование инструментов вроде Nmap
d) Перебор паролей
Правильный ответ: a) -
Какой метод используется для поиска уязвимостей без эксплуатации?
a) Vulnerability Assessment
b) Penetration Testing
c) Red Teaming
d) Social Engineering
Правильный ответ: a) -
Что такое «эксплуатация» в контексте pentesting?
a) Использование уязвимости для получения доступа
b) Сканирование сети
c) Анализ логов
d) Уведомление разработчиков
Правильный ответ: a)
Документирование
-
Что должно быть в отчете о тестировании безопасности?
a) Описание уязвимостей, риски, рекомендации
b) Личные данные сотрудников
c) Исходный код приложения
d) IP-адреса конкурентов
Правильный ответ: a) -
Какая система используется для отслеживания уязвимостей?
a) Jira
b) Slack
c) Excel
d) Photoshop
Правильный ответ: a)
Продолжение вопросов (51–100)
-
Что такое «Zero-Day» уязвимость?
a) Уязвимость, которую невозможно исправить
b) Уязвимость, о которой неизвестно разработчикам
c) Уязвимость с низким уровнем риска
d) Уязвимость в устаревших системах
Правильный ответ: b) -
Какая уязвимость связана с небезопасной сериализацией данных?
a) Insecure Deserialization
b) SQL-инъекция
c) XSS
d) CSRF
Правильный ответ: a) -
Что такое «фаззинг»?
a) Генерация случайных данных для тестирования на устойчивость
b) Перехват трафика
c) Поиск уязвимостей в исходном коде
d) Атака на пароли
Правильный ответ: a) -
Какой инструмент используется для анализа безопасности мобильных приложений?
a) Drozer
b) Wireshark
c) Nmap
d) Metasploit
Правильный ответ: a) -
Что такое «Credential Stuffing»?
a) Перебор паролей с использованием утекших данных
b) Внедрение SQL-кода
c) Подмена сертификатов
d) Атака на DNS
Правильный ответ: a) -
Какой заголовок HTTP защищает от MIME-тип атак?
a)X-Content-Type-Options
b)X-Frame-Options
c)Content-Security-Policy
d)Referrer-Policy
Правильный ответ: a) -
Что такое «Broken Authentication»?
a) Некорректная настройка аутентификации, ведущая к утечкам
b) Отсутствие шифрования данных
c) Ошибки в логике приложения
d) Незащищенные API
Правильный ответ: a) -
Как проверить уязвимость к SSRF?
a) Попытка получить доступ к внутренним ресурсам через URL-параметры
b) Ввод SQL-кода в форму
c) Отправка большого числа запросов
d) Перехват трафика
Правильный ответ: a) -
Что такое «Security Misconfiguration»?
a) Ошибки в настройках серверов, БД или приложений
b) Отсутствие антивируса
c) Использование устаревших паролей
d) Переполнение буфера
Правильный ответ: a) -
Какой инструмент используется для анализа исходного кода?
a) SonarQube
b) Nmap
c) Hydra
d) Burp Suite
Правильный ответ: a) -
Что такое «Sensitive Data Exposure»?
a) Утечка конфиденциальных данных из-за незащищенного хранения
b) Внедрение скриптов
c) Перехват сессий
d) Атака на DNS
Правильный ответ: a) -
Как защитить API от SSRF?
a) Валидация и блокировка внутренних IP-адресов
b) Использование HTTPS
c) Добавление CAPTCHA
d) Ограничение числа запросов
Правильный ответ: a) -
Что такое «Insufficient Logging & Monitoring»?
a) Отсутствие логирования критических событий
b) Незащищенные пароли
c) Ошибки в коде
d) Неправильная настройка брандмауэра
Правильный ответ: a) -
Какой порт использует FTP?
a) 21
b) 22
c) 80
d) 443
Правильный ответ: a) -
Что такое «Privilege Escalation»?
a) Повышение прав пользователя до администратора
b) Взлом пароля
c) Перехват трафика
d) Удаление данных
Правильный ответ: a) -
Какой инструмент используется для тестирования API?
a) Postman
b) Wireshark
c) Nmap
d) Metasploit
Правильный ответ: a) -
Что такое «Man-in-the-Browser» атака?
a) Перехват данных через вредоносное ПО в браузере
b) Атака на сервер
c) Брутфорс паролей
d) Подмена DNS
Правильный ответ: a) -
Как проверить уязвимость к SQL-инъекциям с помощью sqlmap?
a) Указать URL и параметр для тестирования
b) Сканировать порты
c) Перехватить запрос в Burp Suite
d) Ввести' OR 1=1--
вручную
Правильный ответ: a) -
Что такое «Cross-Origin Resource Sharing» (CORS)?
a) Механизм, регулирующий доступ к ресурсам между доменами
b) Защита от XSS
c) Шифрование данных
d) Анализ трафика
Правильный ответ: a) -
Какая уязвимость связана с небезопасным использованием CORS?
a) Несанкционированный доступ к API
b) SQL-инъекция
c) CSRF
d) XSS
Правильный ответ: a) -
Что такое «Security Headers»?
a) HTTP-заголовки, улучшающие защиту веб-приложений
b) Заголовки для аутентификации
c) Заголовки для кэширования
d) Заголовки для сжатия данных
Правильный ответ: a) -
Какой заголовок предотвращает межсайтовый скриптинг (XSS)?
a)X-XSS-Protection
b)X-Content-Type-Options
c)Content-Security-Policy
d)Referrer-Policy
Правильный ответ: a) -
Что такое «Broken Access Control»?
a) Отсутствие ограничений на доступ к функциям или данным
b) Ошибки в аутентификации
c) Утечка паролей
d) Незащищенный API
Правильный ответ: a) -
Как защититься от IDOR?
a) Валидация прав пользователя на сервере
b) Использование HTTPS
c) Добавление CSRF-токенов
d) Экранирование входных данных
Правильный ответ: a) -
Что такое «Security Through Obscurity»?
a) Ложная защита, основанная на сокрытии информации
b) Шифрование данных
c) Многофакторная аутентификация
d) Резервное копирование
Правильный ответ: a) -
Какой инструмент используется для анализа уязвимостей в контейнерах Docker?
a) Clair
b) Nmap
c) Metasploit
d) Wireshark
Правильный ответ: a) -
Что такое «Server-Side Template Injection»?
a) Внедрение вредоносного кода в шаблоны на стороне сервера
b) XSS-атака
c) SQL-инъекция
d) CSRF
Правильный ответ: a) -
Как проверить уязвимость к XML External Entity (XXE)?
a) Загрузить XML-файл с внешними сущностями
b) Ввести' OR 1=1--
c) Перехватить трафик
d) Проверить CORS-политику
Правильный ответ: a) -
Что такое «Phishing»?
a) Социальная инженерия для кражи данных
b) Атака на сервер
c) Перехват трафика
d) Взлом паролей
Правильный ответ: a) -
Какой инструмент используется для анализа безопасности IoT-устройств?
a) Firmwalker
b) Nmap
c) Burp Suite
d) OWASP ZAP
Правильный ответ: a) -
Что такое «Buffer Overflow»?
a) Переполнение буфера для выполнения вредоносного кода
b) Утечка данных
c) Атака на пароли
d) Перехват трафика
Правильный ответ: a) -
Как защититься от CSRF?
a) Использовать токены синхронизации
b) Включить HTTPS
c) Добавить CAPTCHA
d) Все вышеперечисленное
Правильный ответ: d) -
Что такое «Red Team»?
a) Группа, имитирующая атаки для проверки защиты
b) Команда разработчиков
c) Служба поддержки
d) Аудиторы
Правильный ответ: a) -
Какой инструмент используется для тестирования на проникновение в беспроводные сети?
a) Aircrack-ng
b) Nmap
c) Metasploit
d) Wireshark
Правильный ответ: a) -
Что такое «Blue Team»?
a) Группа, защищающая систему от атак
b) Команда тестировщиков
c) Разработчики ПО
d) Менеджеры проектов
Правильный ответ: a) -
Как проверить уязвимость к командной инъекции?
a) Ввести; ls
в поле ввода
b) Использовать SQL-код
c) Перехватить трафик
d) Проверить CORS
Правильный ответ: a) -
Что такое «Security Chaos Engineering»?
a) Тестирование устойчивости системы к атакам через хаотичные сбои
b) Анализ исходного кода
c) Шифрование данных
d) Резервное копирование
Правильный ответ: a) -
Какой инструмент используется для поиска утечек данных в GitHub?
a) Gitrob
b) Nmap
c) Metasploit
d) Wireshark
Правильный ответ: a) -
Что такое «Data Exfiltration»?
a) Кража данных из системы
b) Шифрование данных
c) Перехват трафика
d) Атака на пароли
Правильный ответ: a) -
Как защитить API от SSRF?
a) Блокировка внутренних IP-адресов
b) Использование HTTPS
c) Добавление CAPTCHA
d) Ограничение числа запросов
Правильный ответ: a) -
Что такое «Security Assertion Markup Language» (SAML)?
a) Протокол аутентификации
b) Язык программирования
c) Инструмент для тестирования
d) Система шифрования
Правильный ответ: a) -
Как проверить уязвимость к открытому S3-бакету?
a) Проверить доступность через AWS CLI
b) Использовать SQL-инъекции
c) Перехватить трафик
d) Проверить CORS
Правильный ответ: a) -
Что такое «JWT»?
a) Токен для аутентификации
b) Язык запросов
c) Инструмент для тестирования
d) Протокол передачи данных
Правильный ответ: a) -
Как проверить уязвимость JWT?
a) Проверить алгоритм подписи (например, none)
b) Ввести SQL-код
c) Перехватить трафик
d) Проверить CORS
Правильный ответ: a) -
Что такое «OAuth»?
a) Протокол авторизации
b) Шифрование данных
c) Инструмент для тестирования
d) Система логирования
Правильный ответ: a) -
Как защитить токены сессии?
a) Использовать HTTPS и httponly-флаги
b) Хранить в localStorage
c) Передавать в URL
d) Использовать простые пароли
Правильный ответ: a) -
Что такое «Two-Factor Authentication» (2FA)?
a) Двухфакторная аутентификация
b) Шифрование данных
c) Резервное копирование
d) Анализ трафика
Правильный ответ: a) -
Как проверить уязвимость к подделке сертификатов?
a) Проверить валидность SSL/TLS-сертификата
b) Ввести SQL-код
c) Перехватить трафик
d) Проверить CORS
Правильный ответ: a) -
Что такое «Certificate Pinning»?
a) Привязка сертификата к домену для защиты от MITM
b) Шифрование данных
c) Резервное копирование
d) Анализ трафика
Правильный ответ: a) -
Как проверить уязвимость к устаревшим зависимостям?
a) Использовать инструменты вроде Snyk или Dependabot
b) Ввести SQL-код
c) Перехватить трафик
d) Проверить CORS
Правильный ответ: a)
Кейс для тестировщика безопасности: "Анализ уязвимостей веб-приложения интернет-магазина"
Описание компании
Вы работаете тестировщиком безопасности в компании "ShopSecure", которая разработала интернет-магазин для продажи электроники. Приложение написано на PHP, использует MySQL в качестве БД и имеет функции:
- Регистрация/авторизация пользователей
- Поиск товаров
- Оформление заказов
- Личный кабинет с историей покупок
Команда разработки сообщила, что после недавнего обновления пользователи жалуются на странное поведение сайта (например, перенаправление на подозрительные страницы). Ваша задача — найти и устранить уязвимости.
Задачи
- Обнаружить уязвимости в веб-приложении.
- Эксплуатировать найденные уязвимости для демонстрации рисков.
- Предложить меры защиты и исправить код/конфигурации.
Шаги для выполнения
1. Сбор информации
- Инструменты:
Nmap
,Burp Suite
,OWASP ZAP
. - Действия:
- Сканируйте сайт на открытые порты и сервисы:
- nmap -p 1-65535 shopsecure.com
- Перехватите HTTP-трафик через Burp Suite, изучите запросы авторизации, поиска и оформления заказа.
2. Поиск уязвимостей
а) SQL-инъекция в поиске
- Симптомы: При вводе
' OR 1=1--
в поле поиска отображаются все товары. - Эксплуатация:
- Введите payload:
- ' UNION SELECT username, password FROM users--
- Проверьте, выводятся ли учетные данные пользователей.
б) XSS в комментариях
- Симптомы: При добавлении комментария
<script>alert('XSS')</script>
скрипт выполняется. - Эксплуатация:
- Введите payload в поле комментария:
- <img src=x onerror=alert(document.cookie)>
-
- Убедитесь, что куки пользователя отображаются в алерте.
в) Некорректная аутентификация
- Симптомы: После logout сессия остается активной.
- Эксплуатация:
- Выполните logout и проверьте, доступен ли личный кабинет через прямую ссылку.
3. Анализ конфигураций
- Инструменты:
Nikto
,SSLScan
. - Действия:
- Проверьте сервер на устаревшие версии ПО:
- nikto -h shopsecure.com
- Убедитесь, что SSL/TLS настроен корректно:
- sslscan shopsecure.com:443
4. Меры защиты
-
SQL-инъекция:
- Используйте подготовленные запросы (PDO) вместо конкатенации строк.
- Пример:
- $stmt = $pdo->prepare("SELECT * FROM products WHERE name = ?");
$stmt->execute([$search_term]); -
XSS:
- Экранируйте вывод данных через
htmlspecialchars()
. - Включите Content Security Policy (CSP) в заголовках:
- Content-Security-Policy: default-src 'self'
- Экранируйте вывод данных через
-
Аутентификация:
- Уничтожайте сессию после logout:
- session_destroy();
Ожидаемые результаты
- Отчет с описанием уязвимостей (SQLi, XSS, Broken Auth).
- Демонстрация эксплуатации (скриншоты, логи).
- Исправленный код и конфигурации сервера.
Дополнительные задания (для продвинутых)
- Проверьте, уязвим ли сайт к CSRF (подделайте POST-запрос на изменение пароля).
- Проанализируйте Dockerfile на ошибки (например, запуск от root).
Этот кейс позволяет отработать навыки:
- Работа с инструментами (Nmap, Burp Suite).
- Эксплуатация OWASP Top 10 уязвимостей.
- Исправление кода и настройка защиты.
Junior Level
1. Роль: Поиск SQL-инъекций в учебном веб-приложении
Сценарий: Вы получили доступ к тестовой версии веб-приложения с уязвимой формой авторизации.
Задача:
- Используйте OWASP ZAP для сканирования уязвимостей.
- Вручную проверьте поле ввода логина на наличие SQLi (например, введите
' OR 1=1--
). - Зафиксируйте уязвимость в отчете.
Компетенции: Базовое понимание OWASP Top 10, работа с инструментами.
2. Роль: Анализ сетевого трафика
Сценарий: Вам предоставлен pcap-файл с подозрительным трафиком.
Задача:
- Откройте файл в Wireshark.
- Найдите пакеты с данными авторизации (логин/пароль).
- Определите, какой протокол использовался (HTTP/HTTPS).
Компетенции: Работа с Wireshark, анализ сетевых угроз.
3. Роль: Поиск открытых S3-бакетов
Сценарий: Компания подозревает, что некоторые облачные хранилища доступны публично.
Задача:
- Используйте AWS CLI для проверки доступности бакетов.
- Проверьте наличие файлов с конфиденциальными данными.
Компетенции: Основы облачной безопасности.
Middle Level
4. Роль: Эксплуатация XSS в веб-приложении
Сценарий: В тестовом приложении обнаружена уязвимость XSS.
Задача:
- Напишите скрипт для кражи cookies пользователей.
- Предложите методы защиты (CSP, экранирование).
Компетенции: Эксплуатация уязвимостей, предотвращение атак.
5. Роль: Тестирование API на SSRF
Сценарий: API принимает URL для генерации превью.
Задача:
- Проверьте, можно ли получить доступ к внутренним ресурсам (например,
http://localhost:8080
). - Предложите меры защиты (валидация URL).
Компетенции: Понимание SSRF, работа с API.
6. Роль: Аудит конфигурации сервера
Сценарий: Сервер на Ubuntu 20.04 с открытыми портами 22 (SSH) и 80 (HTTP).
Задача:
- Проверьте, включена ли аутентификация по ключам в SSH.
- Убедитесь, что HTTP-сервер не разрешает просмотр директорий.
Компетенции: Аудит инфраструктуры.
Senior Level
7. Роль: Red Team — Атака на корпоративную сеть
Сценарий: Компания разрешила тестирование на проникновение.
Задача:
- Проведите фаззинг веб-приложения для поиска RCE.
- Получите доступ к внутренней сети через уязвимый сервер.
- Составьте отчет с рекомендациями для Blue Team.
Компетенции: Стратегическое мышление, комплексное тестирование.
8. Роль: Защита CI/CD-пайплайна
Сценарий: Команда использует Jenkins без должной защиты.
Задача:
- Проверьте, можно ли внедрить вредоносный код через job-конфигурации.
- Настройте ролевой доступ и аудит изменений.
Компетенции: DevSecOps, защита инфраструктуры.
9. Роль: Расследование инцидента с утечкой данных
Сценарий: Обнаружена утечка персональных данных клиентов.
Задача:
- Проанализируйте логи для выявления источника утечки.
- Определите, как злоумышленник получил доступ (эксплуатация уязвимости 0-day).
- Разработайте план по устранению последствий.
Компетенции: Инцидент-менеджмент, анализ угроз.
Junior Level
10. Роль: Поиск уязвимостей в мобильном приложении
Сценарий: Тестовое Android-приложение передаёт данные без шифрования.
Задача:
- Используйте Burp Suite для перехвата HTTP-трафика.
- Проверьте, передаются ли пароли в открытом виде.
- Зафиксируйте проблему в отчете.
Компетенции: Базовый анализ мобильных приложений, работа с прокси.
11. Роль: Тестирование на перебор паролей (Brute Force)
Сценарий: Веб-приложение не ограничивает количество попыток входа.
Задача:
- Настройте Hydra для брутфорса формы авторизации.
- Предложите меры защиты (CAPTCHA, задержки).
Компетенции: Использование инструментов для атак, понимание защиты аутентификации.
12. Роль: Анализ SSL/TLS-сертификата
Сценарий: Сайт использует устаревший протокол TLS 1.0.
Задача:
- Проверьте конфигурацию через SSL Labs Scanner.
- Объясните риски использования TLS 1.0.
Компетенции: Понимание криптографических стандартов.
Middle Level
13. Роль: Эксплуатация IDOR для доступа к данным
Сценарий: В API можно изменить ID в URL для доступа к чужим данным.
Задача:
- Используйте Postman для отправки запросов с подменой параметров.
- Предложите внедрение проверки прав на сервере.
Компетенции: Тестирование API, понимание контроля доступа.
14. Роль: Тестирование на CSRF
Сценарий: Форма изменения пароля не использует токены.
Задача:
- Создайте HTML-страницу с вредоносным запросом.
- Проверьте, выполнится ли запрос при открытии страницы жертвой.
Компетенции: Эксплуатация логических уязвимостей.
15. Роль: Анализ логов на подозрительную активность
Сценарий: В логах сервера обнаружены множественные запросы к /admin
.
Задача:
- Используйте ELK Stack для фильтрации аномалий.
- Определите IP-адреса атакующих и заблокируйте их.
Компетенции: Работа с SIEM-системами, анализ инцидентов.
Senior Level
16. Роль: Разработка программы Bug Bounty
Сценарий: Компания запускает платформу для поиска уязвимостей.
Задача:
- Определите зоны тестирования (in-scope) и запрещённые методы.
- Разработайте систему вознаграждений и коммуникации с исследователями.
Компетенции: Управление проектами, знание правовых аспектов.
17. Роль: Тестирование IoT-устройств
Сценарий: Умная камера использует незащищённый Telnet-порт.
Задача:
- Получите доступ к устройству через telnet (логин/пароль по умолчанию).
- Предложите обновление прошивки и отключение ненужных сервисов.
Компетенции: Анализ embedded-систем, реверс-инжиниринг.
18. Роль: Защита от APT-атак
Сценарий: Компания подверглась целевой атаке с использованием 0-day уязвимости.
Задача:
- Проведите анализ памяти на компрометированных хостах (Volatility).
- Разработайте правила для IDS/IPS для обнаружения подобных атак.
Компетенции: Расследование сложных инцидентов, работа с памятью.
19. Роль: Поиск уязвимостей в конфигурациях S3-бакетов
Сценарий: В AWS S3 обнаружен бакет с публичным доступом на запись.
Задача:
- Используйте AWS CLI для проверки политик доступа.
- Загрузите тестовый файл и убедитесь, что он доступен без авторизации.
Компетенции: Основы облачной безопасности, работа с AWS.
20. Роль: Тестирование на открытые FTP-серверы
Сценарий: FTP-сервер позволяет анонимный доступ.
Задача:
- Подключитесь через FileZilla и проверьте наличие конфиденциальных файлов.
- Предложите отключение анонимного доступа.
Компетенции: Работа с сетевыми протоколами.
21. Роль: Анализ уязвимостей в Docker-контейнерах
Сценарий: Контейнер использует устаревший образ Alpine Linux с CVE-2023-1234.
Задача:
- Просканируйте образ с помощью Clair.
- Обновите базовый образ и пересоберите контейнер.
Компетенции: Базовые знания контейнеризации.
Middle Level
22. Роль: Эксплуатация SSTI (Server-Side Template Injection)
Сценарий: Веб-приложение использует шаблонизатор Jinja2 без фильтрации.
Задача:
- Введите
{{7*7}}
в поле ввода, чтобы проверить выполнение кода. - Предложите санацию входных данных.
Компетенции: Эксплуатация сложных уязвимостей.
23. Роль: Тестирование безопасности Wi-Fi WPA3
Сценарий: Тестовая сеть использует WPA3, но клиенты поддерживают downgrade-атаки.
Задача:
- Проверьте уязвимость к KRACK с помощью Bettercap.
- Рекомендуйте обновление прошивок устройств.
Компетенции: Аудит беспроводных сетей.
24. Роль: Поиск уязвимостей в Serverless-архитектуре
Сценарий: AWS Lambda-функция обрабатывает входные данные без валидации.
Задача:
- Проверьте функцию на command injection через параметры.
- Настройте мониторинг в CloudWatch.
Компетенции: Облачная безопасность, Serverless.
Senior Level
25. Роль: Защита от утечек через сторонние библиотеки
Сценарий: В проекте используется уязвимая версия log4j (CVE-2021-44228).
Задача:
- Проведите SCA-сканирование (Snyk, Dependabot).
- Разработайте процесс автоматического обновления зависимостей.
Компетенции: Управление зависимостями, DevSecOps.
26. Роль: Расследование ransomware-атаки
Сценарий: Файлы компании зашифрованы, злоумышленники требуют выкуп.
Задача:
- Проанализируйте логи на предмет IOC (индикаторов компрометации).
- Восстановите систему из бэкапов и устраните вектор атаки (например, фишинг).
Компетенции: Инцидент-менеджмент, форензика.
27. Роль: Тестирование безопасности автомобильных систем
Сценарий: CAN-шина автомобиля доступна через OBD-II порт.
Задача:
- Используйте CANalyse для перехвата сообщений.
- Предложите аутентификацию для критических команд.
Компетенции: IoT/автомобильная безопасность.
Junior Level
28. Роль: Поиск уязвимостей в Redis-сервере
Сценарий: Redis-сервер доступен из публичной сети без пароля.
Задача:
- Подключитесь к серверу через
redis-cli
. - Проверьте наличие данных (например,
KEYS *
). - Предложите ограничить доступ через фаервол и установить пароль.
Компетенции: Базовая настройка СУБД, защита данных.
29. Роль: Анализ конфигураций Jenkins
Сценарий: В Jenkins открыт доступ к управлению job’ами без аутентификации.
Задача:
- Проверьте, можно ли запустить произвольный shell-скрипт через job.
- Настройте RBAC (Role-Based Access Control) для ограничения прав.
Компетенции: Безопасность CI/CD, управление доступом.
30. Роль: Тестирование безопасности веб-сокетов
Сценарий: Веб-сокет передаёт данные без шифрования.
Задача:
- Используйте Burp Suite для перехвата сообщений.
- Проверьте, можно ли внедрить вредоносные команды.
Компетенции: Анализ сетевых протоколов, работа с прокси.
Нет элементов для просмотра