Допустим, моя конечная точка HTTP производит application/xml
. Я пишу что-то вроде
protected void output(Writer writer, String xmlPayload) throws IOException {
writer.write(xmlPayload);
}
Это всего лишь пример, реальный код более сложный. Однако здесь я получаю ошибку от Veracode:
Этот вызов содержит недостаток межсайтового скриптинга (XSS). Приложение заполняет HTTP-ответ ненадежным вводом, позволяя злоумышленнику встраивать вредоносный контент, такой как код Javascript, который будет выполняться в контексте браузера жертвы.
Но я только что произвел этоxmlPayload
сам, из какого-то ПОГО. И мне действительно нужно написать не экранированную строку XML.
Я не могу избежать xmlPayload
как сам, я получу <version>3</version>
, что глупо.
Как можно исправить этот недостаток veracode без экранирования всей строки?