Мне нужно обработать предоставленную пользователем разметку для конкретного типа встраивания, который обычно имеет форму тега <script>
, обычно с атрибутом src
. Существует множество различных <script>
компонентов, которые можно использовать здесь, каждый из которых отличается. Однако, чтобы избежать возможных атак XSS
, мы сочли необходимым удалить что-либо внутри тега.
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js">document.write("vinny say something funny"); //This should be sanitized out</script>
DOMDocument действительно не дает нам простого способа изменить innerhtml, и я видел несколько подходов , но, похоже, ни один из них не решает проблему сохранения атрибута в целости, если тег уничтожен. Я что-то упускаю при реализации лучшего подхода или есть более простой способ решить эту проблему?