是否有可能以某种方式阻止对部署在jboss 4.2上的Web服务进行xxe攻击? WS由注释定义。我找不到任何配置来禁用支持外部实体和dtd。
在这篇文章中(Prevent XXE Attack with JAXB)是一个解析servlet中soap的解决方案,但是我需要注释WS的东西。
答案 0 :(得分:1)
经过长时间的jboss代码调试后,我发现了对jboss 4.2.2的XXE攻击的修复。
在DOMUtils.class中(位于jbossws-common.jar中)我在DocumentBuilderFactory实例上添加了额外的功能:
factory.setFeature("http://xml.org/sax/features/external-general-entities", false);
factory.setFeature("http://xml.org/sax/features/external-parameter-entities", false);
factory.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
它解决了这个问题。