При тестировании XSS часто упираешься в CSP, который «должен» блокировать вредный JS. Но на практике политики пишут с дырками.
1️⃣ Изучите заголовки
В DevTools → Network → Response Headers найди
Content-Security-Policy.2️⃣ Определите разрешённые источники
Смотрите на
script-src и default-src. Особое внимание — на:➖
*.example.com (wildcard может дать доступ к тестовым или уязвимым поддоменам)➖
unsafe-inline (позволяет вставлять inline-скрипты)3️⃣ Ищите подходящую точку внедрения
Используйте разрешённые домены для подгрузки своих payload’ов через:
➖ JSONP endpoints
➖ JS-файлы с уязвимостями
4️⃣ Пример
Если CSP разрешает
scripts.example.com, а у вас есть контроль над тестовым поддоменом test.scripts.example.com, можно разместить там свой payload.js и загрузить его.Такой подход помогает найти обходы, которые пропускают автоматические сканеры.
🐸 Библиотека хакера
#буст
