时尚

oday漏洞

时间:2010-12-5 17:23:32  作者:娱乐   来源:百科  查看:  评论:0
内容摘要:2023年11月,安全圈炸了。一个叫"oday"的漏洞在暗网标价50万美元,卖家只丢出一段17秒的录屏——某国产协同办公系统的后台管理页面,被一行精心构造的请求直接绕过了双因素认证。没人知道漏洞具体在

2023年11月,漏洞安全圈炸了。漏洞一个叫"oday"的漏洞漏洞在暗网标价50万美元,卖家只丢出一段17秒的漏洞录屏——某国产协同办公系统的后台管理页面,被一行精心构造的漏洞请求直接绕过了双因素认证。没人知道漏洞具体在哪,漏洞但录屏里那串URL参数里的漏洞分号,让几个熬夜刷推的漏洞安全研究员瞬间清醒。

我拿到那段录屏时,漏洞正在吃一碗泡面。漏洞反复拖了二十遍进度条,漏洞发现攻击载荷里混着两个不起眼的漏洞百分号编码。这玩意儿不像常规的漏洞SQL注入,倒像是漏洞把HTTP请求走私和反序列化串在了一起。后来证实,漏洞漏洞出在系统处理文件上传时的临时目录解析逻辑上——攻击者上传一个文件名带特殊字符的压缩包,解压时就能把恶意文件写到任意路径。听起来简单得离谱,对吧?可这套系统在国内有超过四万家企业在用。

那个分号才是关键

录屏里最诡异的地方在于,攻击者没碰登录接口。他直接构造了一个带分号的路径:/api/v2/upload;.jsessionid=xxx。很多Java容器会把分号后面的内容当路径参数丢掉,但这套系统用的自研网关偏不。它把分号后面的东西拼进了文件写入的绝对路径里。于是../../../../webapps/ROOT/shell.jsp就这么被塞进去了。我试过在本地复现,三次里成功一次,成功率取决于Tomcat的版本。漏洞作者显然摸透了目标环境的中间件指纹。

更离谱的是,这个漏洞的补丁早在2022年就存在于某个开源组件里。厂商把组件版本回退了一个小版本,理由是"兼容性考虑"。安全圈有句老话:你回退的每一行代码,都会在某个凌晨三点变成告警短信。这次应验了。

为什么叫"oday"

卖家在论坛帖子里写了句"oday means one day you will know"。有人猜是"0day"的变体,有人说是"old day"的缩写——暗指这是个老漏洞翻新。我倾向于后者。因为从利用链看,它把三个已知但未公开的缺陷串了起来:网关路径解析缺陷、临时文件清理竞争条件、以及管理后台的CSRF令牌校验绕过。单独看每个都不致命,合在一起就是核弹。

我认识的一个乙方安服工程师,在漏洞曝光前两周刚给客户做完渗透测试。他扫到了那个网关的异常响应,但报告里只写了"建议升级组件版本"。客户没当回事。漏洞公开后,客户半夜打电话骂他"为什么不坚持"。他回了句:"我坚持了,你们说业务不能停。"这事在某个微信群里传开,没人笑得出来。

后续比漏洞本身更值得看

厂商在48小时内发了三次补丁。第一次修了路径解析,第二次加了临时目录随机化,第三次干脆把整个上传模块重写了。但暗网上的利用工具已经更新到v3版本,绕过了前两个补丁。直到第三个补丁发布后,才有人发现攻击流量里多了一个X-Forwarded-Prefix头——攻击者开始利用反向代理的配置差异来触发漏洞。这已经不是在修漏洞,是在和攻击者拼运维规范。

我后来在GitHub上看到一个叫"oday-check"的扫描脚本,作者是个大三学生。脚本逻辑很糙,就是发个带分号的请求看返回码。但下面有行注释写着:"别问为什么,问就是被甲方逼的。"这条注释获得了三百多个赞。安全行业最真实的情绪,往往藏在这种不起眼的地方。

漏洞最终没有造成大规模数据泄露,因为利用条件太苛刻——需要目标系统同时满足网关版本、Tomcat配置和临时目录权限三个条件。但那个50万美元的标价,以及卖家那句"one day you will know",让所有用过这套系统的人后背发凉。你永远不知道,明天和0day哪个先来。

最近更新
热门排行
copyright © 2026 powered by 力不从心网   sitemap