2016-11-25 4 views
6

у меня есть приложение, в котором клиент может хранить следующую HTML строку, чтобы загрузить различные стили для фактического браузера:OWASP HTML дезинфицирующее чистят комментарии

<!--[if IE 6]><link rel="stylesheet" type="text/css" media="all" href="default/css/general_ie6.css"><![endif]--> 
<!--[if IE 7]><link rel="stylesheet" type="text/css" media="all" href="default/css/general_ie7.css"><![endif]--> 
<!--[if IE 8]><link rel="stylesheet" type="text/css" media="all" href="default/css/general_ie8.css"><![endif]--> 

Также я настроен OWASP policy запретить вредоносную HTML-тег в следующем виде:

new HtmlPolicyBuilder().allowElements("link").allowAttributes("rel", "type", "media", "href").onElements("link").toFactory(); 

Но после санитарии if browser lines отбрасываются.

Не могли бы вы предложить, как настроить политику, чтобы разрешить хранить такой контент?

ответ

0

Невозможно сконфигурировать OTIASP Sanitizer для приема этих тегов. Вместо этого вы можете использовать парсер HTML, например JSoup, для извлечения этих строк до сантирования, а затем добавить их обратно.

Смежные вопросы