近些年,我们经常看到很多机构包括水利,电力,能源,医疗等基础设施机构甚至包括政府被勒索软件攻击。还有些团伙丝毫没有下限,利用疫情传播勒索软件,攻击医院。一旦攻击成功,带来的不仅是财务损失,而是患者的生命。
作为安全从业人员,我们需要思考,勒索软件到底意味着啥。我们的检测和防御体系如何应对这种挑战。这里我们看下微软情报团队如何看待勒索软件的趋势变化。
勒索最大的变化:从自动化到手动
很多人对勒索软件最深的印象还停留在 2017 年,WannaCry。
当年 WannaCry 利用永恒之蓝自动传播,导致校园网,医疗等机构大量文件被锁。我印象中公安的部分系统也被锁了,留下了这个经典界面。熊猫烧香在 WannaCry 面前不过是个弟弟。
安全从业人员这么经典的共同回忆,已然不多了。近几年大家的共同回忆只有挖矿了。各大公司安全人员打招呼的方式都是,听说你们那有 30 台主机被用来挖矿了?对方微微一笑,给你一个 too naive 的表情。不,是 300 台。
如果世界上的安全事件都像挖矿这样单纯又简单,这该是怎样的一个和谐社会啊!
然而,一切并没有如此简单。
在我们以为,通过公网封禁端口,给服务器打补丁就能解决问题的时候,勒索攻击者已经默默从自动化的勒索攻击变成了手动攻击。按微软的话说,就是:
勒索攻击采用了一些国家级黑客 APT 攻击的手法。
对检测和响应的影响:只不过是个挖矿?
在该报告里,微软提到了一个很有意思的地方。其实我们在《从金融黑客组织 TA505 和朝鲜国家队 Lazarus 思考钓鱼邮件分析》也有提到过类似观点。
微软追踪了一个勒索组织 PARINACOTA ,这个组织一开始可能使用攻陷的主机进行挖矿,发钓鱼邮件以及做代理。几周后再回来部署 Wadhrama 勒索软件。
这个组织非常暴力,通常控制网络中的一台机器后,在一个小时内完成勒索。
所以,你还敢说这只不过是一个挖矿么?
微软还提到,黑客经常使用商业恶意软件,类似于各种常规 bot。往往被运营人员所忽略。不就一个常规 bot 告警嘛,重装下就好了。更有甚者,这个常规 bot 已经被杀软杀了啊,不用管了。
这里微软拿 Ryuk 举了个例子。一开始使用 Trickbot 打点,然后部署 Ryuk 勒索软件。
所以,微软认为当出现了 Emotet,Dridex,Tickbot 这些类似的告警,我们应该第一时间处置,并做系统被完全攻陷的假设来应对。
勒索方式变化
先前的勒索是通过加密用户文件,导致用户业务受损,要求用户交赎金。
而现在,如果用户不交赎金,勒索者已经开始尝试放出被加密的数据,通过 GDPR 的压力来迫使受害者屈服。
微软追踪的三个团伙的 TTP
为啥说市面上对勒索软件的分析很多都是屎?
因为对于勒索软件,很多分析文章都只是分析勒索软件本身的功能。这对我们应对勒索软件的威胁并没有多大意义。
我们需要更多的 Focus 在攻击者全链路的攻击手法。通过多点布控,延缓和阻止攻击。
这里提供微软跟踪的三个团伙的 TTP。
PARINACOTA
InitialAccess:RDP 爆破,使用 NLbrute.exe 或者 ForcerX,爆破 admin,administrator,guest,test 等账户
DefenseEvasion:关闭杀软,使用 wevutil.exe 清除日志
PrivilegeEscalation:粘滞键提权等
CredentialAccess:Mimikatz ,ProcDump,以及使用 findstr 搜索特定 cookie
Persistence:修改注册表,允许 RDP 远程连接。安装远程管理软件或者后门。本地管理员组添加账户。添加 Run 或者 Startup 目录的自启动项。
Doppelpaymer
Ryuk
如何延缓和阻止攻击
微软给出了一个应对图。
但是,我觉得这个不够。
有一些关键点我想提一下。
方案一端上阻断
我先前在 freebuf 发过一个《基于异常行为的未知勒索软件检测》,代码链接:https://github.com/mogongtech/RansomDetection。
核心思路就是投递诱饵文件,用诱饵文件对文件名进行占位,例如生成 aaaa.txt,aaa.doc, zzz.xls,zzz.sql, zzz.db 这样的诱饵文件,然后进行文件监控,一旦出现写入行为则进行拦截以及告警。
方案二核心文件保护
使用微软提供的 Controlled Folder Access 功能,对存放重要文档的目录设置进程白名单。
详情参见:https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/controlled-folders。
方案三系统治理
1. 使用代理访问网络
2. 阻止非可信域名二进制文件下载
3. 限制工作站之间的通信,做好网络隔离
4. 禁用宏
5. 启用备份
6. 打补丁
方案四 US-CERT 给出的方案
以上方法可以综合使用。
甲方安全人员该做啥?
随着勒索攻击方式的演进和勒索商业模式的变化,勒索带来的危害已经不仅仅是业务停摆,还包括公开的用户数据泄露事件。
甲方安全人员需要建立更多的纵深体系来检测和防御这个灰犀牛。安全运营人员也要时刻注意着头上悬着的达摩克利斯之剑。因为你漏掉的一个挖矿事件,一个 bot 事件,很可能会带来一次勒索的灾难。
在网络犯罪的这个战场上,没有人或组织可以高高挂起。我们要时刻揣着敬畏之心,建立更广泛的联盟,共同打击包括勒索在内的网络犯罪。
提供一个老外总结的历史勒索软件的检测特征和防御方法(提取码:0qjf)。
参考
[1] https://www.microsoft.com/security/blog/2020/03/05/human-operated-ransomware-attacks-a-preventable-disaster/
[2] https://www.us-cert.gov/ncas/alerts/TA17-181A
*本文来源:落水轩,转载请注明来源