善攻者,敌不知其所守;善守者,敌不知其所攻。
—《孙子兵法》
在介绍主动防御和网络欺骗技术之前,我们先看看几个案例。
第一个是solarwinds供应链入侵事件,这个事件不是solarwinds公司内部发现的,而是由FireEye披露。
2020-12-08,FireEye 宣称自己是一个国家级黑客攻击的受害者,安全团队报告他们的红队工具被窃取。
2020-12-13,FireEye 在调查他们红队工具泄露时,发现了一个供应链攻击。研究者偶然发现的证据表明是通过SolarWinds软件后门进入的网络。攻击者通过在SolarWinds Orion商业软件更新包中植入后门的方式分发恶意软件。FireEye命名为”SUNBURST”
上图是solarwinds对攻击时间线的一个还原:
在2020年12月12日,solarwinds收到被入侵的通知,然后开始事件的调查。通过调查发现,在19年9月4日,攻击者就成功入侵了他们的系统。在19年9月12日,攻击者开始在软件更新包中注入测试代码并开始测试,在19年11月4日测试代码测试完成。在20年2月20日,攻击者编译和部署了SUNBURST后门程序。在20年3月26日,攻击者在solarwinds不知情的情况下发布了存在后门的更新包。然后在20年6月4日,攻击者自己移除了恶意软件。直到20年12月12日,被火眼发现。
这次事件的dwell time为464天,受影响的客户可能有几万个,包括火眼,思科,微软,英特尔,美国财政部,司法部及商务部等。
第二个案例是某个客户的挖矿事件应急响应案例。
这个事件其实不是客户主动发现的,而是因为挖矿程序占用系统大量资源,导致应用进程运行异常,业务不可用才发现的。事件原因是有员工将SSH端口映射到互联网,且系统存在多个用户,有个用户存在弱口令,被爆破成功后植入后门和挖矿程序。通过对应急响应过程收集的数据进行分析,发现本次事件使用和后门程序和8220挖矿团伙使用的后门程序高度相似,且后门已经在系统存在至少192天。在这么长的时间内,攻击者有充足的时间完成任何目标,比如数据窃取等等。
第三个案例是我们在某次红蓝对抗期间,通过社工方式在目标主机植入的后门。由于这个后门程序使用了一定的伪装技术,所以在对抗结束后,已经过了100多天,防守方仍未发现系统还存在后门。
通过上面3个案例,我们可以发现防守方在对于一些攻击手段的检测和响应,远远落后于攻击者。
另外,根据火眼统计的全球的dwell time的中位数(这组数据是火眼基于2019年10月1日到2020年9月30日定向攻击活动的统计),当前平均需要24天才能发现入侵行为。而由外部通知的话,需要73天。内部发现入侵事件平均需要12天。
而IBM与波耐蒙研究所统计的数据泄露成本报告(这组数据是基于对17个国家和区域的17个行业,537个组织的调查),在2020年,识别数据泄漏平均需要207天,在2021年平均需要212天,这也说明攻击者的能力在不断的优化和提升,我们防御和检测难度在增加。
从上面3个案例可以发现,不论是多大规模的企业,在对网络攻击的检测和响应方面,都存在落后于攻击者的情况。
既然我们都部署了各种安全设备,采取了各种安全控制措施,比如说代理服务器,应用白名单,邮件网关,EDR,UEBA等,但为什么对一些威胁还是不能防御和及时检测?
我们可以看看安全技术的发展趋势,几年前,我们就强调补丁,强口令,反恶意软件,防火墙,代理等,今天,我们的安全技术本质上还是和几年前类似,只不过在前面多了一个下一代,比如下一代防火墙,下一代反恶意软件等等。
虽然部分领域的技术有所进步,但是从攻防对抗的防守方来角度来看,整个防御的战略和战术并没有本质的变化。
另一个原因就是漏报和误报,在实际的威胁分析过程,我们需要从海量的业务操作造成的误报中发现攻击成功的特征或者恶意特征,安全运营人员需要投入大量的时间去分析和排除大量的误报。真实且攻击成功的告警往往被淹没在误报中,导致无法及时检测和响应失陷事件。当1%的真实告警被99%的误报淹没,那真实告警意义就不太大了。
此外,对于一些特定类型的攻击,比如供应链攻击,0day,内部威胁,现有的安全控制措施可能很难检测,从而导致漏报。
第三个原因也是安全建设中最薄弱的环节-人。对于人的攻击可能涉及钓鱼,打电话伪冒,水坑攻击,或者攻击者也可能采用物理访问的方式入侵目标。
当然员工自身可能也会有意或者无意地犯一些错误,比如为了图方便使用弱口令,或者在多个网站使用相同的口令等等。
此外,由于利益的原因,内部威胁也是一个不可忽略的威胁源,比如很多的数据泄漏,最终调查发现其实是内外勾结导致的。
所以,作为防守方,我们应该改变下游戏规则。从原来的被动式响应,转换为更主动的防御方式。
利用主动防御&网络欺骗相关的战术和技术,我们可以由被动转换为主动,检测更多传统安全措施无法有效检测和防御的威胁。
主动防御原本是美国国防部提出的一个军事术语,原文为“The employment of limited offensive action and counterattacks to deny a contested area or position to the enemy",即采取有限的进攻行动和反击,阻止敌人占领有争议的地区或阵地。
应用在安全领域,则为对攻击者行动提前进行预料,并采取主动的行动。
而网络欺骗则是一种有意的、有计划的欺骗攻击者的过程,目的是为了更好地防御。比如说故意暴露欺骗性的资产或架构,以诱导攻击者,同时隐瞒真实资产,以防止攻击者采取进一步的行动,或者减缓攻击者的攻击速度,迷惑攻击者,误导攻击者,增加攻击者的行动成本,增加检测机会。
当然国内因为攻防演练的原因,炒作了一段时间的欺骗,后面又开始炒作溯源和反制,而且主要是安全厂商为了推自己的蜜罐。但是主动防御和网络欺骗不仅仅是考虑如何部署蜜罐,攻击回去或者“抓人”。
而是需要考虑我们当前有哪些问题,靠传统的检测防御措施无法有效地解决,在确定了我们的防御目标后,再去考虑蜜罐以及其他的欺骗技术如何帮助我们实现目标。而不仅仅是说蜜罐有哪些功能,我们如何去用这些功能。不论是产品还是技术,都是服务于我们网络防御的目标。
主动防御和网络欺骗和传统检测&防御技术的区别可总结如下:
使用主动防御&和网络欺骗技术,在一定程度上,可以改变攻防不对等的形势:
我们通过参考ATT&CK,APT组织分析报告,攻防演练经验,对攻击者高频使用的攻击路径和战术进行了研究和总结,针对不同的攻击阶段,对可以使用的主动防御&网络欺骗技术进行了研究和落地,部分内容如下:
完整PDF大家可通过网盘下载(如果链接失效,请在公众号后台留言):
链接: https[:]//pan[.]baidu[.]com/s/1RfKmogEqjnfYHwnritvBQg
提取码: tf6h
如果文档的内容对大家有所帮助,也希望多多转发和分享。With best wishes。