繁体   English   中英

JAVA Owasp Zap SOAP XML 注入

[英]JAVA Owasp Zap SOAP XML Injection

我在我的服务器应用程序上运行了 Zap,但我一直遇到这个问题

<s12:Body>
    <sch:somethingRequest xmlns:sch="http://www.axa.be/cos/synchro">
        <sch:value>paramValue</sch:value> 
        <sch:value>paramValue_modified</sch:value>
    </sch:somethingRequest >
 </s12:Body>

它一直告诉我它很容易受到 XML 注入的影响,因为代码是由服务器解释的......

基本上,第二个“值”标签替换了前一个标签内的数据......

这是我的 xsd 样品

    <xs:element name="somethingRequest">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="value" type="xs:string" />
            </xs:sequence>
        </xs:complexType>
    </xs:element>

我试过这样的东西,但仍然有同样的问题......

    @Bean
    public SAXParserFactory saxParserFactory() throws SAXNotRecognizedException, SAXNotSupportedException, ParserConfigurationException  {
        final SAXParserFactory spf = SAXParserFactory.newInstance();
        spf.setFeature("http://apache.org/xml/features/disallow-doctype-decl", true);
        spf.setFeature("http://xml.org/sax/features/external-general-entities", false);
        spf.setFeature("http://xml.org/sax/features/external-parameter-entities", false);
        spf.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
        return spf;
    }

    @Bean
    public SAXParser saxParser(final SAXParserFactory factory) throws ParserConfigurationException, SAXException  {
        final SAXParser parser = factory.newSAXParser();
        parser.setProperty(XMLConstants.ACCESS_EXTERNAL_DTD, "");
        parser.setProperty(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "");
        return parser;
    }

有任何想法吗? 谢谢。

在 WSDL 文件中使用 SOAP 属性的详细描述。

正如警报“解决方案”所暗示的,如果您的 SOAP 请求已针对强模型/模式进行检查,那么您应该拒绝包含重复元素的请求。

您也可以参考与警报相关的“参考”:

http://www.ws-attacks.org/index.php/XML_Injection

模式验证示例:

例如,当预计只有一个最大长度为 20 个字符的元素时,SOAP 主体的 XML 架构应仅包含以下内容:

<xs:element name="surname">
  <xs:simpleType>
    <xs:restriction base="xs:string">
      <xs:minLength value="0"/>
      <xs:maxLength value="20"/>
    </xs:restriction>
  </xs:simpleType>
</xs:element>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM