私はSSO SAML認証/認証をサポートするプロジェクトに取り組んでいます。最後のセキュリティ分析では、XML外部エンティティ攻撃に関連するセキュリティ上の脆弱性があることがわかりました。ここで問題のコード部分は次のとおりです。SAMLメタデータを安全に解析する方法は?
InputStream is = new ByteArrayInputStream(metadata.getBytes());
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
DocumentBuilder docBuilder;
docBuilder = factory.newDocumentBuilder();
Document doc;
doc = docBuilder.parse(is);
私はインターネットで検索し、さまざまな解決法を見つけました。そのうちのいくつかは、一般的なXML文書の解析に取り組んでいます。また、パーサーの特定のオプションを無効にする(外部エンティティを拡張するなど)ソリューションが見つかりました。しかし、その解決策が私の場合に受け入れられるかどうかはわかりません。だから私の質問は:SAMLメタデータを解析する最も安全な方法は何ですか?
おかげで、 ラフィク