hkxueqi / YonyouNc-UNSERIALIZE-scan

Yonyou-UNSERIALIZE,用友NC 反序列化检查工具,批量检测用友NC 反序列化

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

YonyouNc-UNSERIALIZE-scan

Yonyou-UNSERIALIZE,用友NC 反序列化检查工具,批量检测用友NC 反序列化漏洞。

yonyouNC 漏洞批量检测工具(无依赖) by: xueqi

已知问题

NC6.5有特殊字符转义造成命令执行失败 测试结果:yonyouNC命令执行Bypass测试分享 https://mp.weixin.qq.com/s/WGuz6ZxDim_Vpn6RDrZAnA

前言

工具随手写的,linux平台还没测试,功能简陋一些细节没做优化。

该工具仅实现漏洞检测功能,由于该类利用简单且危害大,利用部分暂不公开(太简单懒得写)。 漏洞利用很简单,实现方式也很简单,后边再考虑。

吐槽部分: hw经常遇到yonyou,但公开的工具要么直接忽略反序列化,要么就是零星几个poc。

然后我就随便google历史漏洞,好家伙,您猜怎么着,收集了二十多条漏洞,有预警过的,还有少量厂商无预警无细节无编号的1day。搭建环境一测你再猜怎么着?全能用啊!

例如nc.message.bs.NCMessageServlet接口,goby在2月就已经有了poc,22年4月就有了补丁更新。我工具都写在里面了 ,23年5月份厂商预警这么个洞,x都吃不上热乎的

点名批评某几个厂商,不行就趁早洗洗睡吧

image

实现的功能:

1.出网检测:通过dnslog回显检测存在漏洞的接口

该方式又分为两种方法:cc链中URLDNS执行ping命令

URLDNS方式不需要判断操作系统,win和linux通用

执行命令的方法 需要判断目标操作系统,而决定增加cmd /c ping dnslog/bin/sh -c “ping -c 1 dnslog“ 防止执行失败

2.不出网检测:通过执行系统命令写入文本来判断存在漏洞接口

该方式需要判断目标操作系统,而决定增加cmd /c/bin/sh -c ““ 防止执行失败

使用说明

详情看使用详解部分

optional arguments:
  -h, --help      show this help message and exit
  -u , --url      example: -u http://xxx.xxx  #yonyou的url
  -f , --file     example: -f url.txt #一行一个带协议,dns最大999行
  -d , --dnslog   example: -d xxx.dnslog.cn #最长27字符
  -e , --exp      example: -e txtwin/dnslin/urldns #回显方式

注意事项

linux环境未测试,使用写入文本模式(执行命令方法)可能会产生BUG导致检测失败。

dnslog域名最大支持27个字符,程序自动增加 6个字符(5字符子域名加 .点号分隔),最终全长33个字符,不够在前缀补位

xxxxx01.03d30ba4.ipv6.1433.eu.org
11101.36c1f3f7.ipv6.bypass.eu.org
xxxxxxxxxxxxxx01.rggehd.dnslog.cn
c6xxxxxxxxxxxxxx01.qpnn6a.ceye.io

dnslog格式说明

检测单个url

-u http://url

dnslog处理格式 image-20230519162917413

批量url:

-f 1.txt #补位变为行数标识

image-20230519162813383

使用详解

1.dnslog-URLDNS

1.使用urldns链 ,通过dnslog出网测试。

python3 YonyouNcScan2.py -u http://172.16.1.200:8000 -d qpnn6a.ceye.io --exp urldns

image-20230519155021950 image-20230519155038819

2.dnslog-ping

使用cc6链,执行ping命令 通过dnslog回显

需要指定系统,-e dnswin或 dnslin

python3 YonyouNcScan2.py -u http://172.16.1.200:8000 -d m4ssvh.dnslog.cn -e dnswin

image-20230519155210357

3.txt文本

使用cc6链,执行echo命令 通过重定向符追加到文本至web根目录回显

需要指定系统,-e txtwin或 txtlin;txtwin2使用了cc1链

python3 YonyouNcScan2.py -u http://172.16.1.200:8000 -d m4ssvh.dnslog.cn -e txtwin

image-20230519155611731 image-20230519155702982

About

Yonyou-UNSERIALIZE,用友NC 反序列化检查工具,批量检测用友NC 反序列化


Languages

Language:Python 100.0%