CRSF с XSS-анализом% в запросе GET как% 25 - PullRequest
0 голосов
/ 08 ноября 2018

ПРИМЕЧАНИЕ: Я нахожусь в классе кибербезопасности, и мы изучаем CSRF и XSS. Сайт для наших проектов в классе преднамеренно уязвим для crsf и xss. У меня есть вредоносная HTML-страница со следующей формой, которая передается по загрузке. Вы можете видеть, что скрипт пытается переписать cookie. Кодирование использует% xx для кодирования символов ASCII.

Request with % encoding

Когда я захожу на вредоносный сайт и затем использую мониторинг сети в Chrome, я вижу, что кодировка для% превратилась в% 25. enter image description here

Я знаю, что% 25 в ASCII - это просто символ процента, но эта кодировка портит XSS. Если я использую вредоносную ссылку XSS вне html-формы CSRF, атака срабатывает, и cookie перезаписывается. Однако кодирование через CSRF не работает, чтобы перезаписать cookie, потому что литерал «% 25» портит сценарий XSS. Любые советы о том, как выполнить XSS в CSRF с этим запросом GET? Я собираюсь попробовать другие инструменты для выполнения запроса GET через HTML и Javascript. Я программист на встраиваемых системах, поэтому HTML и Javascript не являются моей сильной стороной, но я также искал в Интернете способы обойти это и не понял, почему в CSRF происходит изменение с% на% 25. Любые советы будут с благодарностью.

1 Ответ

0 голосов
/ 08 ноября 2018

При настройке атрибута значения скрытого поля формы в HTML-документе не следует кодировать URL. Вместо этого вы должны кодировать символы, которые имеют особое значение в HTML, как объекты HTML:

  • < становится &lt;
  • " становится &quot;
  • & становится &amp;

1017 * Etc. *

...