暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

漏洞复现 CVE-2020-36179~36182

pen4uin 2021-01-17
1910

前言

       之前复现了好些涉及php应用的漏洞,现在也该轮到java了!



漏洞简介

       此漏洞是由于多个组件库存在不安全的反序列化,导致攻击者可以利用漏洞实现远程代码执行。


漏洞编号


pom.xml替换部分


 poc替换部分


CVE-2020-36179


<dependency>

   <groupId>commons-dbcp</groupId>

   <artifactId>commons-dbcp</artifactId>

   <version>1.4</version>

</dependency>


org.apache.commons.dbcp.cpdsadapter.DriverAdapterCPDS


CVE-2020-36180


<dependency>

   <groupId>org.apache.commons</groupId>

   <artifactId>commons-dbcp2</artifactId>

   <version>2.8.0</version>

</dependency>


org.apache.commons.dbcp2.cpdsadapter.DriverAdapterCPDS


CVE-2020-36181


<dependency>

   <groupId>org.apache.tomcat</groupId>

   <artifactId>tomcat-dbcp</artifactId>

   <version>7.0.53</version>

</dependency>


org.apache.tomcat.dbcp.dbcp.cpdsadapter.DriverAdapterCPDS


CVE-2020-36182


<dependency>

   <groupId>org.apache.tomcat</groupId>

   <artifactId>tomcat-dbcp</artifactId>

   <version>9.0.4</version>

</dependency>


org.apache.tomcat.dbcp.dbcp2.cpdsadapter.DriverAdapterCPDS



环境搭建

打开idea,选择maven,如图:

填好项目文件名称及保存位置,之后idea会自动创建一个项目,如图:

替换pom.xml,然后保存,idea会自动下载依赖环境。

以CVE-2020-36180为例:

src -> main -> java -> poc.java

poc.java:

踩坑:

    # 问题
    程序包com.fasterxml.jackson.databind不存在
    # 解决方法 在项目根目录下执行以下命令:
    mvn clean install -Dmaven.test.skip=true
    mvn -U idea:idea


    最后出现如图:

    即意味着环境已搭建🆗。



    CVE-2020-36179

    复现开始:

    将payload exec.sql  放置web服务目录下(这里使用python3 起一个httpserver)

    exec.sql:

      # 弹计算器
      calc.exe


        python -m http.server 80

        执行poc.java,成功弹出计算器(如图):



        CVE-2020-36180

        复现开始:

        将payload exec.sql  放置web服务目录下

        exec.sql:

          # 弹计算器
          calc.exe


            python -m http.server 80

            执行poc.java,成功弹出计算器(如图):



            CVE-2020-36181

            复现开始:

            将payload exec.sql  放置web服务目录下

            exec.sql:

              # 弹计算器
              calc.exe
                python -m http.server 80

                执行poc.java,成功弹出计算器(如图):



                CVE-2020-36182

                复现开始:

                将payload exec.sql  放置web服务目录下

                exec.sql:

                  # 弹记事本
                  notepad.exe



                    python -m http.server 80

                    执行poc.java,成功弹出记事本notepad.exe(如图):


                    看官轻喷

                        关于图片中的文件名错误, 不解释:

                        就是因为孤陋寡闻的我以为FastJson=FasterXML Jackson🙈。

                        如果不想折腾,可以在公众号后台回复jackson,获取我已经配置好的环境。

                        如图:



                    参考:

                    https://github.com/Al1ex/CVE-2020-36179

                    文章转载自pen4uin,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                    评论