供应链攻击也叫第三方攻击,是蓝队在实战攻防演练中采取的一 种迂回攻击手段。目标网络建设所需各项关键基础设施和重要资源严 重依赖第三方产品和服务提供商,并且大多数目标用户对第三方提供 商的产品和服务是信任的,这就为攻击者开展供应链攻击提供了条 件。供应链攻击在外网纵向突破和内网横向拓展中均有运用,外网主 要围绕目标互联网
侧的产品漏洞或服务安全入口薄弱点开展,内网则 主要围绕第三方产品或自主开发应用的漏洞开展。供应链攻击具有迂 回隐蔽不易被发现、产品或服务利用环节多样、攻击影响面较大的特 点,成为蓝队越来越依仗的攻击手段。供应链攻击的途径主要有三 种,如图3-12所示。
图3-12 供应链攻击的三种途径
**网络或平台提供商
**
网络或平台提供商是指提供通信基础网络、应用托管平台或服务 器的第三方
提供商,主要包括网络提供商、Web应用或服务器托管平 台、云网络平台提供商等。目标网络往往需要借助这些第三方提供商 来接入互联网,提供网络服务平台支撑。对此类第三方提供商开展供 应链攻击,可以接触到目标基础网络或平台底层服务,容易实现对目标的全面渗透和控制。对于不同的提供商,渗透和控制的实现路径具 体如下。
网络提供商
渗透进入目标网络提供商的网络,在提供商内通过目标网络IP分 配或服务提供的信息定位目标网络接入点(主要是路由网关),利用 该路由网关的信任通联关系或对目标网络的边界路由网关开展渗透, 通过漏洞利用或网络数据劫持,获取目标网络的边界网关或路由控制 权,进一步
向目标内网渗透拓展。常见的例子有在APT攻击中,直接对 目标国家/地区的网络基础运营商开展攻击控制,再以此为跳板向受害 目标网络进行渗透拓展。
应用平台提供商
渗透进入目标网络云托管平台、服务器资源提供商网络,根据托 管服务定位目标托管业务的所在位置,渗透获取托管业务的控制权 限,在托管业务中植入恶意代码对目标人员开展水坑攻击,或通过托 管业务寻找托管业务与目标本地网络的接口(主要是托管业务管理接 口),利用漏洞利用或仿冒接入等手段进一步渗透拓展本地网络,获取目标本地网络的接入控制支点。目前常见的例子有对目标云托管平 台提供商进行渗透,通过获取目标业务托管接入认证信息,并进一步 利用这些认证信息进行接入控制。
此类供应链攻击虽然危害比较大,但是攻击难度大,花费时间 长,所以在实战攻防演练中使用得不多。此类供应链攻击在APT攻击中 使用得较多,因为APT攻击多是针对国家或政府的核心职能部门开展的 网络攻击和渗透。这些核心职能部门的网络往往对外接口非常少,并 且隔离防护非常严,对其开展正面攻击往往难度非常大;但是这些网 络还必须借助基础网络建设或联网,APT攻击就通过这些第三方网络或 平台实现对核心目标网络的迂回渗透。
安全服务提供商
此类供应链攻击主要针对的是将网络安全服务外包的目标网络。 目标网络受限于自身网络安全运维管理的人力或技术水平,常常会将 自身网络建设和安全运维工作交由第三方提供商来完成,第三方提供 商手里就会掌握有关目标网络的重要入口控制信息或大量的网络安全 信息,这在受到供应链攻击时就会带来相当大的安全隐患。攻击者可 以通过攻击第三方安全运维人员,获取运维人员管理目标网络的权 限,并借助其管理权限接入目标网络。这种攻击具有很大的隐蔽性, 因为目标网络无法准确判断通过第三方运维服务进行接入连接的是运 维人员还是攻击者。
下面来看一个实战攻防演练中通过安全服务提供商开展供应链攻 击的典型例子。某目标将关键网络安全运维工作,包括关键 VPN(Virtual Private Network,虚拟专用网络)网关、网络运维入 口管控等,全部外包给第三方网络公司。蓝队在前期侦察中发现了这 一情况,随即对第三方安全服务提供商开展针对性工作,获取了目标 网络内网接入的VPN账号口令,并利用获取的口令成功接入目标内网, 进一步控制了目标内网的大量堡垒机和重要服务器。此次蓝方发起的 供应链攻击通过第三方安全服务提供商直接将目标网络全盘拿下。
产品或应用提供商
通过产品或应用提供商开展供应链攻击主要是围绕第三方系统、 应用或设备开展工作,利用各种手段获取第三方提供商的原厂设备或 应用源码,并对设备进行解剖分析或对源码进行代码审计以寻找其可 能存在的安全漏洞,进而利用发现的漏洞实现对目标网络的突破。实 战攻防演练中常用的第三方应用源码获取方式主要有两种:一种是通 过公开手段,在公网GitHub、Gitee、凌风云之类的互联网资源库中搜 集相关的应用源码,这类源码主要是由开发人员无意中泄露或公开发 布的;另一种手段是通过渗透控制第三方提供商,控制第三方开发资 源库获取相关设备或应用源码,或者直接通过第三方提供商内部获取 设备或应用的安全缺陷或后门。对第三方资源的利用则包括自主挖掘 漏洞或原有后门利用、更新包捆绑恶意代码并推送、对应用开发依赖 文件包进行恶意代码植入等,借助第三方设备或应用打开目标网络的 突破口,如SolarWinds供应链攻击(见图3-13)。
图3-13 著名的SolarWinds供应链攻击示意图
下面来看一个实战攻防演练中通过应用提供商开展供应链攻击的 典型例子。围绕目标展开的前期侦察发现,某网络科技公司是该目标 的无纸化系统提供商,遂针对该公司开展工作。利用该公司BBS论坛的 dz漏洞控制该BBS论坛的后台服务器,进一步拓展该公司的SVN服务 器;从中发现目标在用无纸化系统源码,对目标的无纸化系统源码进 行代码审计,挖掘出0day漏洞;利用挖掘出的0day漏洞控制目标网络 无纸化系统的后台服务器,成功接入目标内网;继续在目标内网横向 拓展,最终控制目标内部业务网络的大量服务器和业务系统。
VPN仿冒接入
VPN是利用Internet等公共网络基础设施,通过隧道加密通信技 术,为用户提供安全的数据通信的专用网络,可以实现不同网络之间 以及用户与网络之间的相互连接。通过VPN组网,网络内部各分支可以 实现像本地访问一样的安全通信交互,远程用户或商业合作伙伴也可 以安全穿透企业网络的边界,访问企业内部资源。随着VPN在政府、机 构、企业的网络部署中越来越普遍,VPN在政府、机构、企业的远程办 公中占据越来越重要的地位。在VPN网络内,分支机构、合作伙伴、客 户和外地出差人员可以随时随地通过VPN接入访问内部资料、办公OA、 内网邮件系统、ERP系统、CRM系统、项目管理系统等,因此VPN仿冒接 入成为蓝队利用的攻击手段之一。只要获取了目标VPN网络的接入权 限,攻击者就能仿冒合法认证接入目标内网,并可以进一步隐蔽渗透 (见图3-14)。
图3-14 VPN仿冒接入攻击
实现VPN仿冒接入的前提是获取VPN接入权限,因此VPN仿冒接入攻 击工作主要围绕如何获取VPN接入权限展开。实战攻防演练中蓝队主要 通过以下两种途径获取VPN接入权限。
获取VPN认证信息
直接针对具有VPN接入权限的VPN网络管理员、内部个人用户、分 支机构、合作伙伴或客户开展网络攻击,通过渗透窃取他们的VPN接入 账户口令或接入凭据,再仿冒其身份接入目标内网进行进一步渗透拓 展。蓝队攻击获取VPN认证信息的常用方式有以下几个:
入信息;
通过供应链攻击针对目标的安全服务提供商,迂回获取VPN入 口和接入认证信息;
通过漏洞利用直接从VPN网关设备上获取VPN网关账户信息;
除了外网常用的途径外,内网还经常可以通过口令复用或弱口 令获取VPN账户口令信息。
前面讲到的通过安全服务提供商开展供应链攻击、获取第三方安 全运维服务的VPN账户口令的案例,也是一个典型的VPN仿冒接入的实 战攻防演练例子。
控制VPN网关
主要针对暴露在互联网侧的VPN网关设备开展攻击,通过设备漏洞 利用控制VPN网关设备,再利用边界网关设备控制权限和内外网通联优 势渗透内网。蓝队控制VPN网关的常见实现方式有:利用漏洞实现远程 代码执行,添加管理员账户,控制网关设备,通过任意文件读取漏洞 未经身份验证地窃取网关设备管理凭据,或者通过注入漏洞获取后台 管理数据库中的账户口令信息。
实战攻防演练中有一个比较典型的例子是通过VPN网关漏洞实现突 破。在对某目标的前期侦察和探测中,在总部网络上未发现任何可利 用的薄弱点;随即根据目标业务地域分散的特点,对其分支机构开展侦察,在某分支机构的网络边界发现Fortinet VPN历史漏洞;通过漏 洞利用接入分支机构网络的内网,并进一步通过分支机构网络完成对 目标总部网络的渗透拓展。
隐蔽隧道外连
隧道是一种利用封装和加密技术实现网络间数据通信的方式,也 是一种蓝队在攻击渗透过程中绕过目标边界防火墙的通信策略限制的 手段。在实际的网络安全部署中,网络边界上通常会部署各种边界设 备、软硬件防火墙或入侵检测系统来检查网络的对外连接情况,如果 发现异常流量、可疑连接或通信,它们就会对此类通信连接进行阻 断。蓝队在攻击的过程中,常常会碰到攻击动作或流量被察觉、目标 内网无法出网的情况,这就需要借助隐蔽隧道外连手段实现攻击动作 的隐蔽执行和攻击数据的隐蔽通信,或突破目标网络的边界隔离限 制,实现外网到内网的跨边界跳转访问控制。隐蔽隧道外连主要通过 加密通信和端口转发技术组合实现:加密通信就是先将通信数据加密 处理后再进行封装传输,主要目的是通过加密数据通信逃避流量内容 检测,从而规避安全网关对危险动作或文件格式的过滤;端口转发就 是对网络端口流量从一个网络节点到另一个网络节点的转发,主要目 的是实现网络通信在网络节点之间的定向跳转,从而实现对一些隔离 网络节点的间接访问。某任务中的隧道代理案例如图3-15所示。
图3-15 某任务中的隧道代理案例 实战攻防演练中,蓝队主要通过以下两种方式实现隐蔽隧道外连。
借助第三方工具
实战攻防演练中,蓝队在攻击过程中主要借助第三方内网工具在 远程控制客户端和被攻击目标终端之间建立一个安全通信通道,实现 外网到内网的通信流量跨边界跳转,从而完成对内网隔离目标的访问 控制,为进一步从外到内渗透拓展提供便利。实现的方式主要有两 种:正向代理,就是通过可与内网通联的边界服务器,实现内网主机 主动出网,连接到攻击者的外网控制端;反向代理,以边界服务器为代理服务器,实现由外到内对内网主机的访问。第三方工具具有支持 加密通信,转发端口自由设置、小巧实用等优点,多具有强大的端口 转发功能,可实现本地转发、远程转发、动态转发等多项功能。常用 的第三方工具有:端口转发类工具,如Windows自带的Netsh命令工 具、Linux系统自带的ssh命令工具、Netcat、HTran、Lcx等;SOCKS代 理类工具,如frp、ngrok、Proxifier等。
借助目标边界设备
除了第三方工具,蓝队在实战攻防演练中也可以利用目标边界设 备的某些后台功能模块实现隐蔽外连渗透的目的,比如:可以利用一 些边界网关的端口映射功能实现内网主机的出网操作;利用一些边界 防火墙自带的PPTP、L2TP或SSL VPN功能模块实现VPN隐蔽接入目标内 网。目标网络一般很少在边界设备上开启此类通信设置,并且此类设 置多涉及底层网络通信,具有稳定、隐蔽的特点,经常会成为蓝队在 第三方工具利用效果不佳时的另一种选择。
社会工程学攻击
社会工程学攻击就是通过社会工程学方法来实施网络攻击的一种 手段。社会工程学攻击是一种利用人的弱点,综合运用信息搜集、语 言技巧、心理陷阱等多种手段,完成欺骗目的的方法。社会工程学攻 击主要是利用人们信息安全意识薄弱这一脆弱点以及人性的弱点,通 过各种手段从被攻击目标内部人员身上获取对网络渗透有价值的情报 或敏感信息(见图3-16)。与传统的网络攻击手段不同,社会工程学 攻击开展工作的对象是人,就是从目标人员身上获取对网络突破有价 值的信息或条件,比如目标网络架构部署、系统应用、安全防护、内 部人员通信方式或账户口令信息等。蓝队可以利用这些信息分析目标 网络弱点,有针对性地开展攻击,甚至直接利用获取到的账户口令实 现突破。
图3-16 社会工程学攻击 社会工程学攻击主要有以下几种方式。
利用熟人关系:这是社会工程学攻击最常用的方式,主要是利 用熟人之间的信赖关系,通过熟识的同学、朋友有针对性地打听有关 目标网络的信息。
通过利益交换:主要针对目标已经离职的网络安全人员,通过 金钱买通或利益交换的方式获取信息。
伪装相似背景:主要利用目标内部人员可能参加的一些专业会 议、安全技术论坛等,通过伪装身份刻意接触目标人员,趁机套取信 息。
伪装新人潜入:利用目标可能存在的招聘机会,通过伪装身份 直接去目标单位应聘,从而打入目标内部,趁机窃取目标的核心信 息。
假装面试交流:同样利用目标可能存在的招聘机会,尤其是一 些网络安全相关的岗位,以应聘者的身份参加面试,在与招聘人员的 交流过程中套取与目标的网络建设、应用部署等相关的信息。
钓鱼攻击也是利用诱骗手段实现对目标网络的突破,所以也是社 会工程学攻击的一种。
近源攻击
近源攻击是一种集常规网络攻防、物理接近、社会工程学攻击及 无线电通信攻防等能力于一体的网络攻击手段。不同于传统的网络攻 击渗透“边界”受限于常见的Web平台、系统应用、防火墙网关等外部 接口,攻击者只能从“边界”外部开展攻击,近源攻击中攻击者位于 目标附近或建筑内部,攻击也是从目标“内部”发起的。目标内部常 常存在更多的安全盲点,比如各类无线通信网络、物理接口或智能终 端设备等,攻击者可以利用这些安全盲点更加隐蔽地突破目标安全防 线进入内网,最终实现对目标网络的深度渗透。实战攻防演练中,蓝 队主要通过乔装、社会工程学攻击等方式实地物理侵入企业的办公区 域,从被攻击目标内部的各种潜在攻击面(如Wi-Fi网络、RFID门禁、 暴露的有线网口、USB接口等)找到突破口,并以隐蔽的方式对攻击结 果进行验证,由此证明目标网络安全防护存在漏洞。常用的攻击方式 有以下两种。
Wi-Fi边界突破
现在Wi-Fi网络在办公区使用比较普遍,可以利用目标办公区附近 的Wi-Fi网络,通过无线设备和工具抓取Wi-Fi通信数据包,重点对有 Wi-Fi安全认证访问的数据进行解码分析,破解其认证信息,从而获取 Wi-Fi网络接入权限;或者通过伪造热点(如用相似名字暗示),利用 伪造的热点更强的信号或通过攻击真实Wi-Fi路由使其瘫痪,从而诱骗 内部人员连接伪造的热点,窃取目标人员的Wi-Fi凭证。
乔装侵入
乔装侵入就是利用目标的安全监管漏洞,假冒目标内部人员进入 目标办公区,在目标内部寻找暴露的有线网口、智能终端设备、无人 监管主机等可能具有内网连接条件的设备,通过这些网口或设备接入 目标内网实施攻击渗透。比如:通过暴露的网口可以直接连接电脑, 很有可能可以接入目标内网;智能终端设备多留有USB接口,可以借助 此类接口进行恶意代码植入;无人监管主机可以通过授权验证绕过漏 洞进行控制,直接进入内网。
下面来看一个实战攻防演练中比较典型的例子。某目标网络攻防 演练任务中,攻击者以参会名义假冒参会人员进入目标办公区会场, 在会场的某张桌子下发现暴露的LAN口,直接连接笔记本电脑后可扫描 内网网段,利用漏洞控制网络管理平台,进一步将其作为跳板渗透拓 展。
红蓝攻防构建实战化网络安全防御体系
青藤云安全 2022攻防演练蓝队防守指南
CSA 软件定义边界在IaaS中的应用