Какие настройки HTMLPurifier следует включить, чтобы разрешить HTML-шаблоны?

Я создаю сайт, который позволяет пользователям создавать свои собственные веб-сайты с помощью шаблонов HTML. Какую настройку HTMLPurifier следует использовать для блокировки XSS-атак?

В моей системе шаблонов я бы разрешил им редактировать только определенные части шаблона (т. е. не весь файл HTML, а только его части). Это не позволяет им редактировать тег снаружи, что нормально, но я не хочу, чтобы они использовали javascript в указанных конкретных частях.

Кто-нибудь, у кого уже есть такая настройка HTMLPurifier?


person Nikko    schedule 19.03.2011    source источник


Ответы (1)


Похоже, вам нужен белый список. Это хорошо, потому что именно так работает HTML Purifier.

Вы захотите сами просмотреть список тегов и атрибутов и просто решить, что именно разрешить.

Разрешайте только элементы, которые по своей природе безопасны, разрешайте атрибуты, которые не могут содержать CSS или Javascript или ссылаться на внешние ресурсы, например изображения.

Честно говоря, вы можете разрешить практически все, кроме форм/вводов, фреймов, скрипта/носкрипта, объекта/встраивания, всего, что взбредет в голову, и xmp. Все остальное либо смысловое, либо стилистическое и по большей части безобидное.

person Charles    schedule 19.03.2011