您现在的位置是:IT资讯 >>正文

ATT&CK Initial Access 打点技术攻防

IT资讯33294人已围观

简介一、背景ATT&CK攻击矩阵(Enterprise)共有11列,将不同环节、不同打击目标的攻击技术分别拆分并归纳,这对于防守方有很大的借鉴意义,SOC可以将安全设备、防御手段、检测规则、情报等 ...

一 、打点背景

ATT&CK攻击矩阵(Enterprise)共有11列,技术将不同环节  、攻防不同打击目标的打点攻击技术分别拆分并归纳,这对于防守方有很大的技术借鉴意义 ,SOC可以将安全设备、攻防防御手段、打点检测规则  、技术情报等的攻防覆盖能力映射在矩阵中,从而感知当前SOC的打点检测和防御能力 ,并规划未来的技术前进方向。

然而ATT&CK矩阵不是模板下载攻防银弹,这里也有很多问题值得思考:

(一)防御和检测能力的打点矩阵覆盖评估 ,应该是技术0和1吗?

(二)针对某个技术环节,当前已经能够完全防御或检测了,攻防未来是否不需要再关注、投入人力了 ?

(三)针对某个攻击技术 ,企业不同区域环境(总部和分支、各种供应商 、BYOD)是否具有相同的防御和检测能力 ?

BITS Jobs--T1197

安全设备覆盖

防御能力

检测能力

北京总部

EDR DLP

上海分公司

DLP

广州分公司

(四)矩阵中的11列 ,对于防守方的源码下载资源投入来说,是否具有相同的重要程度?如果不同,优先顺序是怎么样的 ?

(五)矩阵每一列中的不同技术、子技术 ,对于防守方的资源投入来说,是否具有相同的重要程度 ?如果不同,优先顺序是怎么样的服务器租用?

本系列文章,笔者将详细分析ATT&CK矩阵的技术,并深入讨论每个技术 ,以及针对这些技术 ,企业环境应该做出的防御和检测部署 。

本篇文章 ,让我们进入ATT&CK矩阵的第三列  :Intial Access,详细分析其中的技术有哪些,涉及企业安全工作建设中的哪些内容 。

二 、技术总体介绍

(一)Drive-by Compromise

主要思路是香港云服务器水坑攻击,笔者上一篇文章已经详细介绍过这个技术及SOC做防御需要收集的日志,请参考https://www.freebuf.com/articles/es/336620.html.

(二)Exploit Public-Facing Application

直译为"利用面向公众的应用程序" ,翻译过来就很好理解了 ,其实就是广大渗透测试者、众多CTF竞赛中最常见的攻击方式  ,攻击对外暴漏的服务(任意外网可访问的系统),具体包含的攻击目标不限于:Web系统、邮件服务、免费模板VPN服务 、负载均衡 。其中最喜闻乐见的应该是Web系统,由于各种语言、框架 、组件层出不穷,针对性的漏洞也是一批又一批,可以说是给了安全工作者牢靠的饭碗。

同时 ,企业对Web系统攻防对抗的高防服务器投入 ,应该是资源占比最大的,下一代防火墙 、WAF 、流量分析设备 、HIDS 、RASP等等安全设备 、应用 、机制 ,都很好的保护着面向公众的应用程序 。

(三)External Remote Services

外部远程服务 ,主要指的是企业开放给内部员工、供应商的外部服务 ,如VPN 、API、SSH服务、RDP服务 、Citrix等云桌面、邮件系统等等。这些服务通常有针对性的服务对象 ,所以可以做一定的限制 ,如限定源IP访问 、MFA、端口敲门技术(参考ATT&CK-T1205.001)、MAC绑定等。

(四)Hardware Additions

添加硬件到目标环境中,主要是物理渗透的场景,比如物理接触目标机器 ,通过PE系统进入机器完成攻击;在目标公司大厅扔一个U盘、BadUSB进行钓鱼等等 。

(五)Phishing

钓鱼 ,笔者认为 ,是HW等各种攻防对抗中 ,最简单易行且杀伤力最强的攻击手段 。钓鱼邮件漫山遍野,企业环境中不配置一个商用的邮件网关和Exchange防病毒模块,都不好意思说自己是重视安全的。

SPF、DKIM、DMARC 、邮件防病毒模块一样不落,面对APT级别的攻击者时有用吗?没有用 !对邮件投递做白名单限制 ,限制附件后缀,不允许投递可执行文件 、不允许投递加密的压缩包 ,但攻击者还可以通过钓鱼页面钓鱼(参考gophish框架),无论进行多少安全意识培训 ,我们都要坚信  ,普通用户一定会中招的。

然而,钓鱼只能通过邮件吗?并不是。邮件的投递流程可以被企业完全监控 、控制、回溯分析,但是其他途径就不一定了 。微信 、QQ 、钉钉等等各种IM讯软件 ,一样可以进行钓鱼,且防御成本巨大 。前段时间搜狐发生的钓鱼事件,攻击者采用了二维码这种新的方式,看到二维码,正常人的反应都是拿出微信扫一扫 ,这个"扫一扫"的后续过程 ,安全防御人员完全不可控  ,是真的防不胜防。

(六)Replication Through Removable Media

通过可移动媒体进行复制,主要指通过USB等可移动设备,将恶意程序投递到目标机器上,然后通过各种自动执行的技术 ,完成恶意程序的执行 。

(七)Supply Chain Compromise

供应链攻击,很容易理解的攻击方式 ,攻陷企业中使用的上游硬件设备 ,比如芯片级别的后门;攻陷企业中使用的软件源 ,例如之前发生的PYPI仓库投毒 ,如果你Python包的引用,不小心将requests写成了request ,那么很遗憾 ,你的电脑甚至你同事的电脑,可能已经是别人的了。

(八)Trusted Relationship

通过信任关系攻击 ,通常企业会有或多或少的供应商 ,承包不同的服务内容 ,而供应商通常需要访问部分或全部的内部系统 ,授权给供应商是难以避免的 ,和供应商之间的"信任"关系 ,到底能不能信任呢 ?

今年年初的LAPSUS$组织 ,就高调对外公布:他们就是通过"买"、"骗"的方式,直接获取企业用户或供应商的账号,通过钞能力简单的完成Initial Access。所以权限控制也是很重要的。

(九)Valid Accounts

有效账户 ,如同"无论进行多少安全意识培训,我们都要坚信 ,普通用户一定会中招的"这个结论一样 ,我们还要坚信 ,企业环境中的账号密码 ,一定会暴漏给攻击者,也就是说攻击者一定能够获取到企业环境中某些系统的账号密码。

为什么这么肯定 ?

首先 ,弱口令难以根除 ,即使制定了复杂的密码策略 ,也一定会有聪明的用户巧妙得绕过密码策略设置一些"弱口令",比如设置密码策略为必须有大写字母 、小写字母、数字、特殊符号 ,且长度不小于8位,似乎已经是一个很强的策略了,然而一定会有用户设置密码为:"Aa123!@#",显然这个密码是符合我们设定的高复杂度密码策略的 ,但是这个密码弱吗?很弱 !随便找一个攻击者常用的字典中 ,都一定会有它 。

其次,不同的系统复用相同的密码是大多数用户的使用习惯 ,这也很好理解,因为如果没有onepassword一类的工具 ,我们是无法用人脑记住大量不同密码的(除非把密码记录在一个txt文件中,然后把这个文件放在桌面 ,没错 ,攻击者最喜欢你通过这种方式记录密码,嘿嘿嘿) ,不同系统使用同一个密码  ,就容易导致外部系统密码泄露在社工库(无法保证所有系统都加盐加密存储密码 ,也不能保证加盐加密总是有效的) ,从而等同于泄露了公司系统的密码。

三 、归纳和延伸

(一)Initial Access内容归纳

这个环节的攻击技术目标是什么?通过上述介绍 ,不难看出,其实就是红队常说的"打点"。虽然一次攻击中,不一定会用到ATT&CK矩阵中的每一列技术 ,但是这11列技术依然是按照先后顺序排列的  ,Initial Access技术完成攻击后 ,就会到Execution环节  ,Execution是什么?是恶意程序的执行 ,所以在执行前的一步 ,攻击的目标其实就是接触目标环境 、投递恶意样本,投递了才能执行嘛。

(二)攻击技术延伸

ATT&CK中Initial Access中的9个技术(Techniques) ,整体可以总结为如下表中的6个类型,那么这些不同类型的攻击技术具体有哪些攻击程序(Procedures)、应该如何防御(Mitigations) 、应该如何检测(Detection)呢 ?接下来我们开始详细分析 。

序号

攻击类型

特点

1

钓鱼

简单有效

2

水坑攻击

实现难度高

3

物理接触--可移动媒体设备

需要一定程度的物理接触

4

互联网边界漏洞

企业安全防御工作的重点

5

供应链攻击

实现难度高 ,杀伤力极强

6

社工获取权限

防守方难以避免

1.钓鱼

钓鱼方式多种多样,基于邮件、IM软件、客服等多种投递渠道,通过钓鱼页面获取密码  、通过附件投递恶意程序等多种利用方式,假冒猎头 、HR欺骗员工  ,假冒客户 、供应商欺骗客服等多种社工类型 。

虽然攻击方式多种多样,属于"易攻难守"的领域 ,但是我们安全工作者也不能躺平 ,该做的努力还是要做的 :

a.加固邮件基础设施,如SPF、DKIM、DMARC、邮件防病毒模块 、沙箱检测(尽量安全左移)、YARA检测

b.加固网络基础设施 ,如禁用不支持MFA的网络协议,如POP等

c.加固用户浏览器 ,可以参考浏览器隔离方案

d.坚持不懈的进行用户安全意识培训

e.常态化内部钓鱼及宣贯

f.制定好用户被钓鱼后的应急预案,尽量通过SOAR自动化

g.制定针对钓鱼邮件的SIEM检测规则(如果读者对这部分感兴趣 ,之后可以单独写一篇文章进行介绍)

h.给尽量多的应用系统启用MFA,对于无法启用MFA的系统或用户,应该做到专门的监控。虽然MFA也不是万全之策  ,通过TLS劫持的反向代理做中间人,依然可以完成攻击 ,但安全本身就是在做对抗,你有张良计,我有过墙梯

g.威胁情报,将钓鱼信息中的URL 、文件哈希等信息对接威胁情报进行分析  ,并根据分析结果决定后续的转发策略

2.水坑攻击

水坑攻击是基于浏览器的攻击方式 ,将受害者引诱到一个失陷的网站 ,然后通过一系列重定向 ,重定向到一个漏洞利用页面,该页面中部署浏览器&浏览器插件的利用工具  ,直接投递payload到受害者机器 。

水坑攻击其实是一种复杂 、难度高的攻击方式,是比较不常见的攻击方式,而浏览器隔离的方案可以完美应对针对浏览器的攻击  :用户通过浏览器web代理上网 ,浏览器代理进行页面的解析和渲染,把最终画面呈现给用户终端  ,如果浏览器存在漏洞又访问到了攻击者的恶意页面 ,也只是在web代理中执行 ,不会影响到用户的终端 。

另外即使不使用浏览器隔离方案,水坑攻击也会存在大量的攻击特征  ,对于企业防御工作来说 ,这和防御普通的恶意程序 、反连木马、窃密木马 、挖矿软件、勒索病毒等的工作内容是一致的 ,这也是防守者和攻击者视角的不同 ,防御是以攻击面做针对性的策略,而攻击则是以攻击点、攻击向量为切入点 。

3.可移动媒体设备

可移动媒体的攻击主要有两种  ,一种是物理接触用户机器 ,PE系统进入机器或者通过BadUSB攻陷机器  ,这种攻击方式需要攻击者能够潜入企业环境,通常是比较困难的 ,也就不再详细分析 。另一种是欺骗用户将攻击者的可移动设备插入自己的电脑,而后通过自动运行、自动播放等方式完成恶意程序的投递和执行,这种攻击方式不需要攻击者本人接触目标机器 ,所以相对而言比较容易完成 ,以下主要讨论这种攻击方式 。

实现攻击的方式有很多 ,举例如下 :

(1)通过autorun.inf实现其他可执行文件的自动运行。

(2)通过自动播放(autoplay)的方式实现恶意程序的执行 。

(3)在可移动设备中放置可执行文件 ,欺骗用户点击,例如:

a.双重扩展名 ,例如a.pdf.exe ,让受害者误以为是一个pdf文件而完成点击。

b.通过unicode 202E将文件名进行镜像显示,欺骗受害者点击 。

(4)将网络设备伪装成一个U盘(也可以是充电宝 ,甚至充电器) ,实现流量劫持 、键盘记录等功能。

防御策略也有很多 ,比如:

a.直接通过组策略禁止使用可移动设备,基于序列号做白名单放通。

b.域内启用applocker,指定精细化的控制策略,限制恶意程序的执行 。

c.使用针对USB的安全防护软件 。

……

当然物理接触也不局限于使用可移动媒体设备 ,还有接入企业wifi后进行ARP投毒、DNS欺骗 、TLS中间人劫持 、LLMNR投毒获取Net-NTLM Hash进行爆破等等方式……

4.互联网边界漏洞

对于边界服务的防护,需要企业投入大量的人力物力和时间才能做好 ,不再详细展开叙述,以下进行简单举例 :

a.软件应用打补丁

b.操作系统打补丁

c.部署WAF、下一代防火墙 、流量分析等安全设备

d.运营安全设备的策略

e.处理安全设备的告警

f.针对0-day漏洞进行及时有效的响应

5.供应链攻击

6.社工获取权限

Tags:

相关文章


滇ICP备2023000592号-18