Очистка ненадежного HTML5 ⇐ Php
-
Anonymous
Очистка ненадежного HTML5
Я хочу иметь возможность принимать HTML от ненадежных пользователей и очищать его, чтобы можно было безопасно включать его на страницы моего веб-сайта. Под этим я подразумеваю, что разметку не следует удалять или экранировать, а следует передавать практически без изменений, если она не содержит опасных тегов, таких как или , опасный атрибуты, такие как onload, или опасные свойства CSS, такие как фоновые URL-адреса. (Видимо, некоторые старые IE будут выполнять URL-адреса JavaScript в CSS?)
Отображение контента из другого домена, заключенного в iframe, не является хорошим вариантом, поскольку невозможно заранее определить, какой высоты должен быть iframe, поэтому на некоторых страницах он всегда будет выглядеть некрасиво.
>
Я посмотрел на HTML Purifier, но похоже, что он еще не поддерживает HTML5. Я также изучил Google Caja, но ищу решение, не использующее скрипты.
Кто-нибудь знает библиотеку, которая сможет это сделать? Предпочтителен PHP, но нищим выбирать не приходится.
Я хочу иметь возможность принимать HTML от ненадежных пользователей и очищать его, чтобы можно было безопасно включать его на страницы моего веб-сайта. Под этим я подразумеваю, что разметку не следует удалять или экранировать, а следует передавать практически без изменений, если она не содержит опасных тегов, таких как или , опасный атрибуты, такие как onload, или опасные свойства CSS, такие как фоновые URL-адреса. (Видимо, некоторые старые IE будут выполнять URL-адреса JavaScript в CSS?)
Отображение контента из другого домена, заключенного в iframe, не является хорошим вариантом, поскольку невозможно заранее определить, какой высоты должен быть iframe, поэтому на некоторых страницах он всегда будет выглядеть некрасиво.
>
Я посмотрел на HTML Purifier, но похоже, что он еще не поддерживает HTML5. Я также изучил Google Caja, но ищу решение, не использующее скрипты.
Кто-нибудь знает библиотеку, которая сможет это сделать? Предпочтителен PHP, но нищим выбирать не приходится.
Мобильная версия