WorksheetsWorksheet: Вопросы по безопасности веба и систем
Total questions: 23
Worksheet time: 12mins
Какая техника XSS позволяет модифицировать структуру DOM?
Reflected
DOM-based XSS
Mixed Injection
Stored HTML Injection
Header Injection
Чем отличается Union-based SQLi?
Изменяет структуру DOM
Использует оператор объединения для извлечения данных
Основана на ошибках
Требует reverse shell
Работает через ARP
Как скрыть вредоносный payload от антивирусов?
Применить CSP
Увеличить ping
Использовать packers и обфускацию
Уменьшить TTL
Установить SameSite
Почему MITM может перехватывать логины?
XSS не активен
Передаются в незашифрованных HTTP‑запросах
SQL‑сервер открыт
Cookies закодированы
CSRF‑токены неверные
Что делает backdoor, встроенный в веб‑сервер?
Устанавливает SameSite
Выполняет команды через HTTP‑запросы
Шифрует HTML
Изменяет ARP
Подменяет SQL‑схему
Представьте, что setuid‑программа использует execl() для запуска /bin/ls без указания полного пути. Какой вектор атаки наиболее вероятен?
Переполнение стека с помощью setuid‑программы для запуска /bin/ls без указания полного пути.
Подмена программы ls в путях, указанных в переменной PATH, чтобы execl() выполнил злоумышленный бинарник.
Переполнение стека через execl()
Подмена программы ls в путях, указанных в переменной FIND, чтобы execl() выполнил злоумышленный бинарник.
Подмена программы execl() в путях, указанных в переменной FIND, чтобы execl() выполнил злоумышленный бинарник.
Почему переменные окружения считаются частью поверхности атаки?
Потому что они полностью контролируются пользователем и могут менять поведение программы.
Потому что они полностью контролируются программой и могут менять поведение программы.
Потому что они не видны юзеру и могут менять поведение запущенной программы.
Потому что они уничтожаются при fork() и могут менять поведение запущенной программы.
Потому что они не контролируются пользователем и могут менять поведение запущенной программы.
Почему сервисный подход более безопасен, чем Set‑UID программы?
Потому что сервисы всегда однотипные и не зависят от переменных окружения пользователя.
Потому что сервисы работают с root-привилегиями централизованно и не зависят от переменных окружения пользователя.
Потому что сервисы требуют включённого XSS для работы.
Потому что сервисы автоматически отключают ARP и CSRF.
Потому что сервисы всегда используют переменную PATH из пользователя.
Какое поведение ОС/библиотек делает exploit через LD_PRELOAD/LD_LIBRARY_PATH менее вероятным в setuid-контекстах, но не решает проблему Shellshock?
Динамический линкер/glibc игнорирует некоторые LD_ переменные в «secure execution» (setuid), однако это не предотвращает уязвимости парсинга функций в bash.
SSH при авторизации переписывает /etc/environment.
Kernel автоматически блокирует все env-переменные при execve.
Сетевой стек шифрует переменные окружения и таким образом делает exploit через LD_PRELOAD/LD_LIBRARY_PATH менее вероятным в setuid-контекстах, но не решает проблему Shellshock.
Systemd всегда очищает LD_PRELOAD/LD_LIBRARY_PATH перед запуском сервисов и таким образом делает exploit менее вероятным в setuid-контекстах.
Почему проверка заголовка Referer/Origin может помочь в защите от CSRF?
Потому что браузер удаляет куки при отсутствии Referer.
Потому что эти заголовки содержат токены авторизации.
Потому что они показывают источник запроса, позволяя отличить легитимный сайт от стороннего.
Потому что Origin заменяет тело POST-запроса.
Что из перечисленного — слабость метода проверки Referer как единственной защиты от CSRF?
Некоторые прокси и политика могут скрывать или обрезать Referer.
Referer содержит содержимое cookies.
Referer автоматически шифруется сервером.
Referer всегда присутствует и не может быть изменен.
Какие два условия необходимы для эксплуатации Shellshock?
Процесс должен запускать bash и получать ненадёжные данные через переменные окружения.
Процесс должен работать в режиме отладки и иметь открытую SSH-сессию.
Клиент должен работать по протоколу RDP и иметь root-доступ к удалённому хосту.
Нужен доступ к BIOS и включен режим Shellshock.
На машине должен быть установлен Perl и включен режим Shellshock.
Что такое стек (stack) процесса?
Область памяти, где хранятся локальные переменные, адрес возврата и saved registers.
Буфер в сетевом адаптере для пакетов, где хранятся локальные переменные.
Пул потоков ОС, где хранится адрес возврата и saved registers.
Постоянное хранилище файлов на диске, где хранятся локальные переменные и адрес возврата.
Раздел ядра для драйверов, где хранятся локальные переменные, адрес возврата и saved registers.
Что может произойти при перезаписи адреса возврата на стеке?
Автоматическое восстановление исходного кода.
Передача управления по произвольному адресу.
Сжатие стека и увеличение скорости выполнения программы.
Переход в безопасный режим ОС и сжатие стека.
Увеличение скорости выполнения программы.
Какой эффект даёт компиляция с «-z execstack» (в учебной среде)?
Отключает вывод в консоль из стека.
Включает автоматическое рандомизированное выравнивание в стеке.
Делает стек исполняемым.
Шифрует исполняемый файл в стеке.
Какое поведение предотвращает защита «non-executable stack (NX)»?
Отключает отправку ICMP-пакетов через стек для записи в лог-файлы.
Выполнение кода, расположенного в области стека.
Запись из стека в лог-файлы.
Чтение с сетевого сокета в стек и запись в сетевой сокет.
Установление соединения TCP с помощью стека для чтения и записи.
Какая команда GNU Debugger предоставляется для получения адреса system()?
run/bin/ssh/addres
p system
set env SYSTEM
disassemble system
Как называется обобщённая техника, которая связывает множество коротких фрагментов кода (gadgets)?
Stack-Oriented Scripting (SOS)
Function Hooking Protocol (FHP)
Return-Oriented Programming (ROP)
Heap-Object Chaining (HOC)
Direct Kernel Injection (DKI)
Что является основной целью пенетестинга веб-приложений?
Поиск уязвимостей до их использования злоумышленниками
Тестирование пользовательского интерфейса
Оптимизация сетевых соединений
Изменение скорости загрузки страниц
Какой инструмент чаще всего используется для тестирования безопасности HTTP-запросов?
Burp Suite
SQLmap
OpenSSL
VS Code
Что входит в первый этап веб-пентеста?
Сбор и разведка информации
Эксплуатация найденных ошибок
Подготовка отчета
Анализ уязвимостей
Какой протокол является основной целью при проверке безопасности сайтов?
HTTP
SSH
SMB
FTP
Что такое Remote Code Execution (RCE)?
Возможность выполнить произвольный код на удаленном сервере
Инъекция SQL запроса
Ошибка при загрузке файла
Неправильная обработка HTML
