jsoup Whitelist смягченный режим слишком строг для редактора wysiwyg

Я пытаюсь использовать jsoup для дезинфекции HTML-кода, отправленного из wysiwyg в моем клиенте (tinymce, как это бывает)

Расслабленный режим кажется недостаточно расслабленным, как по по умолчанию он удаляет элементы диапазона и любые атрибуты стиля.

например,

String text = "

foobar

"; Jsoup.clean(text, Whitelist.relaxed());

выведет

foobar

, а

foobar

будет полностью удален.

Есть ли у кого-нибудь опыт использования Jsoup для устранения возможности XSS-атак и при этом пропускать указанные выше элементы и атрибуты?

Редактировать: Я сделал следующее. Может ли кто-нибудь посоветовать, насколько это уязвимо?

Jsoup.clean(pitch, Whitelist.relaxed().addTags("span").addAttributes(":all","style"));

Редактировать 2: Кто-нибудь использовал библиотеку owasp в производстве. Он выглядит правильно продезинфицированным, сохраняя при этом правильный стиль. OWASP

8
задан jaseFace 9 February 2012 в 22:46
поделиться