Below you will find pages that utilize the taxonomy term “个人日志”
May 21, 2023
久违的更新:最近的研究、漏洞复现与一些思考
好久没更新了,博客还是得写点东西,不然感觉像是荒废了。不过写博客这事,还是随缘,毕竟日常事情够多的,没必要硬凑内容。
这一阵子主要在搞漏洞复现和一些技术积累,趁着空闲整理下笔记,顺便聊聊最近遇到的一些有意思的东西。
近期的安全研究
1. CVE-2023-2868:邮件安全网关远程命令执行漏洞
前段时间研究了一下 CVE-2023-2868,这是一个 Barracuda Email Security Gateway(ESG)上的 RCE 漏洞。官方 CVSS 评分 9.8,基本上是“不能不修”的级别。
这个漏洞本质上是对 TAR 格式解析的处理不当,导致攻击者可以构造特定的压缩包,在解析时触发远程命令执行。这个漏洞比较麻烦的一点是,它早在 2022 年 10 月就被 APT 组织利用了,而 Barracuda 直到 2023 年 5 月才公开披露,等于白送攻击者大半年时间。
漏洞复现过程就不细讲了,核心点在于:
- 需要找到一个受影响版本的 ESG 设备(虚拟环境搭建不算难,但环境获取相对麻烦)。
- 发送特制的 TAR 附件,利用 ESG 解析过程中的漏洞执行任意命令。
- 观察服务器端返回情况,确认成功 RCE。
Barracuda 官方建议是尽快升级,但考虑到 APT 组织长期利用的可能性,真正的解决方案其实是直接换设备,因为攻击者可能早就植入了后门。补丁能修漏洞,但不能抹掉入侵历史。
2. 某些老旧 Web 框架的安全问题
最近看了一些老项目,发现很多仍然在用老旧的 Web 框架,有的甚至是 2016 年左右的代码,安全性堪忧:
- Spring 早期版本的 Actuator 接口暴露问题
/actuator/env、/actuator/configprops这些接口在很多老项目里默认是开放的,一些开发者甚至没有权限控制机制,直接导致环境变量和应用配置泄露。 - Shiro 反序列化漏洞
还见到有些项目用的 Shiro 版本很老,rememberMe反序列化漏洞依然存在,虽然 Shiro 早就修了,但这些项目压根没升级。
有时候搞这些老项目,比分析 0day 还麻烦,因为很多代码根本没文档,甚至得靠翻源码才能搞清楚逻辑。更别提修复了,动一块就容易牵扯一大片。