我的問題:如何防止XML外部實體注入上的TransformerFactory
Fortify的4.2.1被標記下面代碼XML外部實體攻擊的敏感。
TransformerFactory factory = TransformerFactory.newInstance();
StreamSource xslStream = new StreamSource(inputXSL);
Transformer transformer = factory.newTransformer(xslStream);
解決方案我曾嘗試:
爲
XMLConstants.FEATURE_SECURE_PROCESSING
設置了TransformerFactory功能爲true。研究爲TransformerFactory提供更多此類功能的可能性,就像我們爲DOM和SAX解析器所做的一樣。例如不允許doctype聲明等,但TransformerFactoryImpl似乎並沒有接受任何其他的東西
XMLConstants.FEATURE_SECURE_PROCESSING
。 Impl Code
請指點我認爲我可能沒有經歷過的任何資源或對此問題可能的解決方案。
我對Fortify並不熟悉,但是對於SAX解析器,您知道如何滿足Fortify的需求,在這種情況下,我想知道是否提供SAXSource而不是StreamSource,在SAX解析器中設置所有必需的功能, 。 –
@MartinHonnen謝謝,讓我試試這個,並會回來。 –
@RaviRanjan我有同樣的問題。你能解決你的問題嗎? –