Почему MS Anti XSS Library (v4) удаляет атрибуты данных HTML 5 - PullRequest
1 голос
/ 18 марта 2011

Библиотека AntiXss, кажется, удаляет атрибуты данных html 5, кто-нибудь знает почему?

Мне нужно сохранить этот ввод:

<label class='ui-templatefield' data-field-name='P_Address3' data-field-type='special' contenteditable='false'>[P_Address3]</label>

Основная причина использования библиотеки anti xss(v4.0), чтобы гарантировать, что нераспознанные атрибуты стиля не анализируются, возможно ли это вообще?

код:

var result = Sanitizer.GetSafeHtml(html);

РЕДАКТИРОВАНИЕ:

При вводе ниже будут удалены все атрибуты стиля

Ввод:

var input = "<p style=\"width:50px;height:10px;alert('evilman')\"/> Not sure why is is null for some wierd reason!<br><p></p>";

Вывод:

var input = "<p style=\"\"/> Not sure why is is null for some wierd reason!<br><p></p>";

Что хорошо, если кто-то возится с моимкод на стороне клиента, но мне также нужны теги атрибутов данных для работы!

1 Ответ

1 голос
/ 18 марта 2011

Полагаю, вы имеете в виду дезинфицирующее средство, а не кодировщик.Он делает то, что должен - он просто не понимает HTML5 и не распознает атрибуты, поэтому он отбрасывает их.Существуют способы использовать XSS с помощью стилей.

Также невозможно настроить список безопасности, боюсь, кодовая база просто не позволяет этого - я знаю, что многие люди хотят этого, нодля его поддержки потребуется полное переписывание.

...