Предотвращение XXE в SAXParser - PullRequest
0 голосов
/ 14 июля 2020

Я потратил некоторое время, чтобы выяснить, подвержен ли следующий фрагмент кода XXE:

SAXParser saxParser;
SAXParserFactory sf = SAXParserFactory.newInstance();
sf.setNamespaceAware(true);
saxParser = sf.newSAXParser();
saxParser.setProperty(XMLConstants.ACCESS_EXTERNAL_DTD, "");            
saxParser.setProperty(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "");
return saxParser;

Sonarcube помечает это как уязвимое. Глядя на справочное руководство OW ASP , я подозреваю, что проблема может заключаться в том, что свойства, предотвращающие XXE, устанавливаются для объекта типа SAXParserFactory , а не для объекта типа SAXParser . Может ли кто-нибудь подтвердить это предположение, или я здесь ошибаюсь?

Я также попытался проверить эту уязвимость, отправив полезные данные XXE в сторону соответствующей конечной точки, однако это не удалось (и, возможно, по нескольким причинам, поэтому это не кажется многообещающим).

Любая помощь очень ценится :)

...