技术分析:Cisco ASA网关威胁与WebVPN攻击向量

思科ASA威胁

摘要

日志中提及路径如 /+CSCOL+//+CSCOE+/ ,后接文件如 a1.jartransfer.js ,表明活动针对 思科自适应安全设备(ASA)火力威胁防御(FTD)网关。

这些指示器不是随机误差,而是指向两个不同的向量:

  • 利用已知的WebVPN漏洞(如CVE-2020-3452),这些漏洞试图通过目录遍历读取敏感文件。
  • 代码执行或缓存中毒试图注入恶意负载(JS脚本或Java小程序)以攻破远程用户会话。

以下文章详细介绍了这些攻击的机制、技术意义以及所需的防御策略。

VPN网关攻击的结构

外围安全设备,尤其是像思科ASA 这样的VPN集中器 ,是主要目标。它们出于必要被公开暴露,并处理关键的认证会话。理解日志需要理解这些盒子的虚拟架构。

解码“虚拟”路径

在配置了无客户端SSL VPN(WebVPN)或AnyConnect功能的Cisco ASA设备上,系统会暴露虚拟目录,这些目录在典型硬盘上物理上不存在,但由固件映射:

  • /+CSCOE+/ (思科安全加密):该路径用于服务认证门户的静态资源(标志、 logon.html登录脚本、 win.js检测脚本)。这是完全认证前的“公共”区域。
  • /+CSCOL+/ (Cisco Secure Legacy/Launch):通常与遗留组件或无客户端VPN隧道的Java小程序 启动相关。

当你在日志中看到这些前缀时,攻击者不会猜测URL;它 知道 你正在使用思科设备,并尝试与门户内部机制交互。

向量1:Java 文件(a1.jar)与无客户端继承

/+CSCOL+/a1.jar请求是针对Java Web Start技术或旧版WebVPN使用的过时Java小程序攻击的症状。

机制

历史上,为了建立VPN隧道而不安装厚客户端(AnyConnect),WebVPN门户会在用户浏览器中加载一个Java小程序(通常称为 cs.jar 或类似程序)。

  • 识别与模糊: 攻击者试图下载该.jar文件以逆向工程 并确定ASA固件的具体版本。
  • 恶意载荷(a1.jar): 在攻击性情形下,a1.jar不是合法的思科文件。这通常是 Java 漏洞利用套件生成的 “投放器” 的默认名称。攻击者会试图强制受害者的浏览器或Java插件(如果他们访问VPN中继的被攻破页面)执行该代码。
  • 目标: 通过VPN隧道在客户端执行任意代码(RCE),如果网关端存在 Java反序列化 漏洞,则在服务器端执行。

诊断: 如果该文件是从服务器请求的,通常是一个自动扫描器,测试你的网关是否允许下载或执行未签名或易受攻击的Java代码。

矢量2:transfer.js和浏览器驱动的不同步攻击

/+CSCOE+/transfer.js的存在更为隐晦且潜在危险,因为它影响了现代攻击,如HTTP请求走私缓存中毒

背景:脆弱win.js

安全研究人员(包括PortSwigger)已经证明, Cisco WebVPN 门户可以通过静态JavaScript文件(如 /+CSCOE+/win.js)进行作。

袭击情景是transfer.js

该目录下对名为 transfer.js 的文件调用暗示有人试图利用WebVPN的URL重写逻辑:

  • 牙槽中毒: 攻击者向网关发送了格式化的HTTP请求(请求走私)。
  • 非同步: 网关会将攻击者的请求与下一个受害者的请求“混合”。
  • 恶意重定向: 当合法受害者连接到VPN时,浏览器会要求输入脚本(例如win.js或注入的自定义脚本transfer.js)。由于不同步,网关不会返回合法的思科脚本,而是返回攻击者控制的服务器重定向。
  • XSS 运行时: 受害者的浏览器在VPN域(vpn.votre-entreprise.com)的安全环境中运行该恶意脚本。攻击者随后可以窃取会话Cookie(webvpn cookie)并渗透网络。

相关漏洞(CVE)

这些日志通常是扫描器试图利用特定漏洞的痕迹:

CVE-2020-3452(只读路径遍历)

这就是与这些路径相关的女王断层。它允许未经认证的攻击者通过 +CSCOT++CSCOE+ 等序列读取 WebVPN 文件系统上的文件。

  • 示例查询: 获取 /+CSCOE+/+/../+/../+/../+CSCOE+/portal_inc.lua
  • 风险: 配置泄露,其他登录用户的会话Cookie被盗。

CVE-2018-0296(DoS及信息披露)

允许你通过作 /+CSCOE+/ 路径来使 ASA 崩溃或列出已登录的用户。

战略与运营影响

如果这些攻击成功,后果远不止于简单的网站篡改:

  • 周边妥协: ASA是通往网络的网关。会话窃取允许攻击者绕过多重身份验证(因为会话cookie已经验证),从而访问内部资源。
  • 知识产权盗窃:通过CVE-2020-3452,可以窃取包含内部架构信息的配置文件。
  • 客户端(水坑)攻击: 通过修改VPN提供的JS,攻击者感染了所有连接远程办公员工的工作站。

修复与防御指南

为了防范这些威胁,需要深入的分析方法。

1. ASA构型的硬化

  • 即时更新: 应用最新的思科补丁。 CVE-2020-3452CVE-2018-0296 的漏洞早已被修补。
  • 禁用无客户端VPN: 如果你只用AnyConnect厚客户端,请完全禁用“无客户端SSL VPN”门户,这是这些向量的主要攻击面。命令: 无 webvpn (或在群组配置文件中禁用它)。

2. 过滤与WAF

  • 阻挡可疑文物: 如果你在门户上没有明确的Java业务需求,请配置你的Web应用防火墙( WAF 或IPS)严格阻止包含.jar的请求。
  • 消毒规则: 在针对/+CSCOE+和/+CSCOL+的URL中,阻断 目录遍历序列 (.., %2nd%2e, +/)。

3. 监视(威胁猎杀)

  • 日志分析: 寻找与这些奇怪请求相关的 HTTP 200 OK 代码。
  • 404 未找到: 这是个好兆头,前锋扫视着虚空。
  • 200 a1.jar 或 transfer.js OK: 紧急警报,立即调查所提供的内容。
  • 相关: 检查扫描这些文件的IP是否成功连接了VPN(登录成功)。

结论

/+CSCOL+/a1.jar/+CSCOE+/transfer.js 的请求,是敌对侦察的特征,试图将你的安全网关变成脆弱点。无论是自动化扫描仪(“脚本小子”)还是复杂 请求走私攻击的前兆,都需要持续警惕和严格的周边设备更新政策。