Обойти черный список XSS "<", ">", "&" input nvarchar - PullRequest
0 голосов
/ 16 февраля 2012

Я использую некоторое программное обеспечение, которое вносит в черный список определенные символы "<", ">", "&" для пользовательских значений.

Это не кодирование значений HTML при отображении отправленных результатов (выводит все отправленные результаты в таблицу).

Хранит значения в поле nvarchar в Sql Server.

Можете ли вы найти уязвимость XSS в этом подходе черного списка?Посмотрим, сможет ли поставщик программного обеспечения кодировать код HTML для вывода.

EDIT

Я обнаружил, что значения в таблице сначала выводятся в виде переменных javascript,а затем добавлен на страницу.Значения в javascript кодируются в javascript.Кодировка javascript выполняет свою работу и экранирует значения в строковых переменных.

Я ищу xss-уязвимости в html, отрисованном из этой строковой переменной javascript.

Failed Ideas

Учитывая то, что использует javascript, у него есть javascript Unicode представление <>

"\ u003cscript \ u003ealert ('hi'); \ u003 / script \ u003e"

Однако, как уже упоминалось выше, кодировщик javascript выполняет свою работу и просто выводит текст.

1 Ответ

1 голос
/ 30 июля 2016

Я знаю, что это старый, но угловые скобки, занесенные в черный список, NOT предотвращают XSS во всех случаях.

Контрпример - это если вы вводите пользовательский ввод в атрибут HTML;например, создание ссылки mailto с их электронной почтой.Если они введут это как адрес своей электронной почты:

"onclick =" alert ('XSS без угловых скобок!') "

У них есть XSS'd ваш сайт.

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