У нас есть веб-приложение, которое сохраняет данные опросов в формате XML, а не в стандартную базу данных. Он использует сторонний компонент опроса (на самом деле, этот компонент , но изменен для добавления некоторых функций)
В настоящее время мы используем очень строгий подход к проверке белого списка, чтобы предотвратить попадание потенциально злонамеренного ввода в XML-файл результатов опроса. Однако правила белого списка превращаются в проблему поддержки для наших клиентов. Они просто слишком ограничительны, и мне интересно, если я просто ограничиваюсь слишком . Я не знаю, как это повлияет на XML-документ, если кто-то будет использовать угловые скобки (html / xml-теги, незакрытые или закрытые) и т. Д.
Если я сохраню их в разделах CDATA, а затем санирую вывод, предотвратит ли это повреждение документа XML в этих случаях? Мы используем библиотеки Microsoft.Anti-Xss и Web Protection для очистки всего ненадежного вывода.
Еще лучше, есть ли руководство по предотвращению внедрения XML или XSS, специфичные для данных XML? или я просто обдумывал это?
Основной вопрос заключается в том, нужно ли фильтровать входные данные, пока я корректирую выходные данные должным образом? Моя параноидальная натура говорит, что да, но я не уверен и подумал, что я бы попросил несколько экспертных заключений.