2026年初,地下网络出现了一款叫Storm的信息窃取木马。它月租不到1000美元,却能把企业花大价钱部署的多因素认证(MFA)变成摆设。这不是技术升级,是攻击逻辑的彻底换道。
浏览器凭证窃取这个老业务,正在经历一场静默的范式转移。
Storm的核心卖点很直接:不在受害者机器上解密任何东西。它只负责打包、上传,把脏活累活搬到攻击者自己的服务器完成。端点安全工具习惯了监控本地SQLite调用和内存注入,突然发现自己成了瞎子。
本地解密之死:Chrome 127逼出的进化
信息窃取木马的历史可以分成两段。早期版本直接在受害者设备上加载SQLite库,读取浏览器凭证数据库,现场解密。端点检测工具很快学会了识别这些行为模式——异常的进程内存访问、可疑的浏览器API调用、非预期的文件句柄操作。
2024年7月,Google在Chrome 127推出App-Bound Encryption(应用绑定加密)。加密密钥与Chrome进程本身绑定,第三方程序即使拿到数据库文件也无法本地解密。第一批绕过方案很快出现:注入Chrome进程、滥用调试协议、劫持渲染器。但这些手法都有明显特征,安全工具依然能抓。
木马开发者干脆放弃本地解密。加密文件直接上传,在攻击者控制的基础设施里慢慢处理。端点工具失去了最关键的观测窗口——它们看不到服务器上发生的事。
Storm把这种"服务器端解密"模式推到了极致。它同时支持Chromium内核浏览器(Chrome、Edge、Brave等)和Gecko内核浏览器(Firefox、Waterfox、Pale Moon)。竞品StealC V2处理Firefox时仍需本地操作,Storm全部外包给云端。
收集的数据清单长得吓人:保存的密码、会话Cookie、自动填充信息、Google账户令牌、信用卡数据、浏览历史。一个被攻陷的员工浏览器,等于把企业SaaS平台、内部工具、云环境的已认证访问权限拱手让人——全程不需要触发任何基于密码的告警。
会话劫持自动化:从"偷钥匙"到"直接开门"
Storm的控制面板设计暴露了攻击者的产品思维。传统窃取木马把原始日志丢给买家,买家自己想办法复用。Storm把下一步也包了:输入Google刷新令牌,配上地理位置匹配的SOCKS5代理,面板自动恢复受害者的认证会话。
Varonis威胁实验室的研究人员给这类攻击起过名字。Cookie-Bite研究展示了被盗的Azure Entra ID会话Cookie如何让MFA失效——攻击者持久化访问Microsoft 365,全程不需要密码。SessionShark分析则追踪了钓鱼工具包如何实时拦截会话令牌,绕过Microsoft 365的多因素认证。
Storm的Cookie恢复功能本质上是同一套技术,但被产品化、订阅化、傻瓜化。攻击者不需要理解OAuth流程,不需要配置代理链,不需要手动拼接请求头。填两个字段,点一个按钮,受害者的Gmail、Google Workspace、GCP控制台就在新标签页里打开了。
这不是工具民主化,是攻击门槛的断崖式下跌。
企业安全团队面临的困境在于:防御体系的设计假设正在被系统性否定。MFA被当作身份安全的终极防线,但它的有效性建立在"攻击者无法拿到会话凭证"的前提上。Storm证明这个前提在浏览器架构层面就是脆弱的——Cookie一旦泄露,MFA的第二次验证就成了马后炮。
端点检测的盲区:当恶意行为发生在别处
传统端点保护工具(EDR/XDR)的检测逻辑高度依赖本地行为分析。进程注入、内存篡改、异常API调用、可疑网络连接——这些 telemetry 构成了威胁猎杀的基础素材。Storm的操作模式几乎不产生这类信号:它读取的是浏览器正常访问的文件,建立的是HTTPS出站连接,加密的是标准TLS流量。
服务器端解密的代价是攻击者需要维护基础设施,但云计算让这变得廉价。Storm的运营者可以批量 spun up 解密节点,按任务量弹性伸缩。相比之下,企业安全团队要在海量正常流量中识别"加密文件上传"这一单一行为,误报率足以让运营瘫痪。
更隐蔽的是时间差。本地解密是即时完成的,攻击窗口与感染时间重合。服务器端解密允许异步处理——木马凌晨三点上传数据,攻击者下午三点在另一个时区解密利用,端点工具很难把这两个事件关联成同一次攻击链。
Gecko浏览器的处理差异暴露了技术路线的分野。Firefox等浏览器使用与Chromium不同的凭证存储机制,部分竞品选择保留本地处理以兼容旧代码。Storm的统一服务器端方案意味着更复杂的后端架构,但也意味着更一致的操作特征——或者说,更一致的不可检测性。
订阅制木马的经济学:为什么1000美元是个危险信号
Storm的定价策略本身值得拆解。月租模式降低了攻击者的初始投入,把固定成本转化为可变成本。对于以窃取凭证为生的网络犯罪从业者,这相当于把资本支出变成了运营支出,现金流压力大幅缓解。
价格锚定也有讲究。1000美元以下这个区间,避开了需要复杂审批的企业采购流程,又足以筛选掉纯好奇的脚本小子。目标用户是那些有一定技术基础、追求稳定产出、愿意付费换取"即开即用"体验的职业攻击者。
产品功能的分层设计暗示了生态成熟度。基础套餐包凭证窃取,高级功能加会话恢复自动化。这种SaaS化的产品演进路径,与合法软件行业并无二致——先解决核心痛点,再围绕用户工作流叠加增值服务。
地下经济的工业化程度,正在逼近甚至超越部分垂直领域的合法软件市场。
控制面板的用户体验细节说明了问题。地理匹配代理的自动推荐、会话状态的实时可视化、一键导入导出功能——这些不是技术必需品,是降低操作摩擦的产品决策。攻击者也在做用户研究,也在优化转化漏斗,也在追求客户留存。
企业防御侧的对应措施却显得零散。浏览器厂商持续加固加密方案,但每轮升级都在逼迫攻击者向更难观测的模式迁移。安全工具厂商追逐行为特征,但行为特征的定义权正在滑向攻击者的基础设施。身份团队推行的零信任架构理论上可以限制会话劫持的横向移动,但部署复杂度和业务摩擦让大规模落地遥遥无期。
Google账户令牌的特别处理揭示了平台生态的连锁风险。Storm专门提取这类令牌,因为它们通常是OAuth流程中的高价值凭证。一个有效的刷新令牌可以换取多个服务的访问权限,且不会触发用户侧的重新认证提示。对于深度嵌入Google Workspace生态的企业,这意味着单点沦陷可能演变为全域失控。
信用卡数据和浏览历史的并列收集,则指向攻击者的多元化变现策略。凭证可以直接出售,会话可以劫持利用,金融信息可以欺诈消费,行为数据可以精准钓鱼。同一批被盗数据在不同市场分层流通,攻击者的ROI计算远比防御方的安全预算模型精细。
Varonis在相关研究中强调的"MFA绕过"现象,正在从实验室概念变成商品化功能。Cookie-Bite和SessionShark所演示的攻击路径,过去需要攻击者具备相当的协议理解和工具开发能力。Storm把这套能力封装成网页界面里的两个输入框,技术门槛的消解速度超过了防御体系的适应速度。
浏览历史的价值常被低估。它不仅包含用户访问过的站点,还暴露工作节奏、协作模式、关注领域、甚至安全意识的薄弱点。攻击者可以用这些信息 crafting 更具说服力的钓鱼诱饵,或者识别那些频繁访问敏感系统的高价值目标。
自动填充数据的收集则触及了密码管理器的替代方案困境。许多用户依赖浏览器的自动填充功能作为"轻量级密码管理",却意识不到这些数据以何种形式存储、以何种方式保护。Storm的批量提取能力,相当于一次性攻破数百个弱保护的凭证库。
SOCKS5代理的集成设计体现了攻击者的运营安全考量。直接使用攻击者IP恢复会话,会在目标服务的访问日志中留下异常地理特征。地理匹配代理让劫持会话看起来像是用户在正常出差或远程办公,增加了事后溯源的难度。
这种"运营安全即服务"的模式,与合法企业的合规自动化形成讽刺的对称。双方都在把最佳实践封装成可复用的功能模块,只是服务对象截然相反。
企业安全团队如果还在用"是否触发密码告警"来判断账户安全,需要重新审视假设了。Storm的攻击链全程不涉及密码猜测、暴力破解或凭证填充——它直接复用合法的会话凭证,在身份系统的视角里,这就是合法用户在进行合法操作。
检测策略的迁移压力由此产生。从"识别恶意登录"转向"识别异常会话行为",需要更精细的上下文建模:设备指纹的变化、交互模式的偏离、资源访问范围的突变。但这些信号的采集和分析,对大多数企业的安全运营成熟度提出了过高要求。
浏览器厂商的安全升级与攻击者的绕过创新,构成了一场不对称的军备竞赛。Chrome的App-Bound Encryption增加了本地攻击成本,却把战场推向了防御者更难观测的服务器端。每轮升级都在重新定义"足够安全"的边界,但边界的外移速度似乎总是快于防御体系的扩展速度。
Storm对双内核浏览器的统一支持,也反映了攻击者的市场覆盖策略。Chromium系浏览器在企业环境占主导,但Firefox在开发者、隐私敏感用户、特定地区市场仍有显著份额。不挑食的数据收集,最大化潜在受害者的覆盖面。
木马的技术演进与地下经济的基础设施成熟相互加速。加密货币支付、匿名托管、自动化构建流水线、客户支持论坛——这些支撑要素让单个木马项目可以专注于核心功能创新,而不必从零搭建运营体系。
对于依赖浏览器作为核心工作入口的知识型企业,Storm的出现提出了一个 uncomfortable 的问题:当攻击者可以低成本、规模化地劫持已认证会话,现有的身份安全投资是否押错了方向?MFA没有失效,但它保护的那个"登录时刻",正在变得越来越无关紧要。
攻击者已经找到了绕开前门的方法,而且正在把这条路修成高速公路。企业防御体系准备好应对一个"没有密码泄露"的凭证窃取时代了吗?
热门跟贴