Как JS скрипты правильно закодированы для запуска как GET в URL - PullRequest
1 голос
/ 22 марта 2020

Я делаю XSS-тест и у меня уже есть работающее решение JS, однако я немного ошибаюсь в том, как нужно правильно кодировать и экранировать скрипты для корректной работы в браузерах.

Предположим, я обнаружил уязвимость, в которой XSS должен быть заменен JS кодом:

http://vulnerablewebsite.net/?search=<script>XSS</script>

Очевидно, что простой <script>alert(1);<script> будет работать нормально. Но как насчет более сложного сценария, такого как:

var url = document.body.outerHTML.match(/http:\/\/blabla\.net\/\?token=([a-zA-Z]|[0-9])*/)[0];
var request = new XMLHttpRequest();
request.open("GET", url);
request.setRequestHeader("X-Test","test1");

Я понимаю, что " и ' необходимо экранировать, чтобы не столкнуться с синтаксической ошибкой PHP, а как с символами новой строки , пробелы et c.?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...