0

我正在运行以下代码片段以启用安全处理功能,并且它在使用 tomcat 服务器的 rest API 中工作正常。但是这个相同的代码片段在使用 JBoss 服务器时不起作用。

请建议任何解决方法/修复,因为我必须修复XXE injection

String strXmlRequest ="<?xml version="1.0"?><!DOCTYPE test[ <!ENTITY demo SYSTEM "D:\\test.text">]>"
SAXParserFactory saxFactory = SAXParserFactory.newInstance();
saxFactory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);

SAXParser saxParser = saxFactory.newSAXParser();
saxParser.parse(new InputSource(new StringReader(strXmlRequest)), handler );
4

1 回答 1

1

你试过了吗 :

  saxFactory.setFeature("http://xml.org/sax/features/external-general-entities", false); 
  saxFactory.setFeature("http://apache.org/xml/features/disallow-doctype-decl", true);

正如OWASP XXE 预防表所解释的那样

于 2019-09-26T14:16:34.583 回答