引言

在网络安全攻防演练里面,用于分析攻击者动机和行为的,国外的有基于攻击链分析的模型(如Cyber Kill Chain和ATT&CK)和基于威胁行为的模型(如Diamond Model of Intrusion Analysis和Pyramid of Pain)等。也有各类PDR(Protect,防护、Detect,检测、Respond,响应)的变种。

然而实际上,我们的老祖宗早已洞察了一切。我在下面的文章里,会生硬地将攻击队会采取的策略和老祖宗的智慧之三十六计进行匹配,让大家更容易理解,并给出针对性的防守方法。

我对每个计谋都精选了一个案例,如“XXX v. XXX, 部攻防演练,(2023)”,并给出ATT&CK Navigator导出的TTP SVG图片。

当然,攻击队的计谋绝对不止这些,有新的发现告诉我。

三十六计简介

从百度百科可知, 《三十六计》或称三十六策,是指中国古代三十六个兵法策略,语源于南北朝,成书于明清。它是根据中国古代军事思想和丰富的斗争经验总结而成的兵书。三十六计计名来源于以下

  • 历史典故,如“围魏救赵”“假道伐虢”等
  • 古代军事术语,如“以逸待劳”“声东击西”等
  • 古代诗人的诗句,如“李代桃僵”“擒贼擒王”等
  • 借用众所周知的成语定名,如“金蝉脱壳”“指桑骂槐”等
  • 其他

左边可以认为是攻击队会采用的一些方法,右边是防守方会被迫采取的做法。

攻击队计谋

瞒天过海

在攻防演练的时候,我们一定会发现,各类扫描增多,各类设备告警也变多,这是正常的。

因为攻击队为了得分,会对你进行“Reconnaissance”。这其中,有可能有些就是有意的行为。

有些攻击队,为了掩盖他们的攻击行为,会购买或自行对你的系统进行扫描,让你淹没在海量的告警里,而忽略了他们真正的攻击行为。

对付这类行为,我们在攻防演练之前,就应当对告警进行清零。

清零看似很难,其实一点都不简单。我们只能做到一定程度的降噪。

前期,就要对对正在扫描你的所有IP有一个极为清晰的认识,分清哪些IP大概是什么,在攻防演练期间,再结合历史记录,识别到是新增的还是已有的扫描类IP。

在攻防演练期间,就只能寄希望于各类检测设备,争取发现一些蛛丝马迹。

借刀杀人

由于网络攻击的特殊性,攻击队我们最开始能看到的,就是一串IP。

在攻防演练的时候,为了演练比较可控,组织者会分配给攻击队一些IP资源,并且要求只从这些IP发起攻击。

循规蹈矩的人,不会成为攻击者,或者是,很难成为很强的攻击者。

所以攻击队,他很大概率不会直接使用这些IP导致“出师未捷身先死”。在外网,他会先“借用”自己的其他IP,或者团队的资源,先对目标进行“Reconnaissance”,等探测得差不多,觉得有把握拿下了,才会真正使用那些IP攻击——成功——截图——提交报告。

在内网里,他会控制一些中了木马的客户端或者服务器发起攻击,导致你的溯源,都是溯源到错误的IP上。

笑里藏刀

在攻防演练里,钓鱼是最没有技术含量但是性价比最高的。很多攻击队正面打不进去,就会投机取巧开始钓鱼了。

钓鱼,一般会给你一些甜头,说你中奖了,或者装成寻求帮助的弱者,含着笑,其实最终是要获取你的信息,甚至全控你。

我们会说为了防止被钓鱼,会开展网络安全意识培训,开展反钓鱼邮件演练。但是其实这个意义不大。

不管你做多少次反钓鱼邮件演练,在攻防演练中,一定会有人会中招,一旦中招,一般都是被全控,攻击队立刻进入单位内网。

反钓鱼邮件演练就像考试,题目出得简单一点,很多人都可以过,出难点,就很多人会中招了。

而且很多在特定的场景下,再见多识广、谨小慎微的人,都会中招。

所以,对于钓鱼的防守,就是不要防钓鱼,要假定失陷。《BeyondCorp和高校的落地》。任何其他的防守策略,都一定要以“攻击队一定会进入内网”为底线思维。

顺手牵羊

有些攻击队在攻击时,会不经意“顺手牵羊”到其他不是原始目标的权限、数据,这种一般发生在防守方异常弱的情况下。

进入这种防守单位,仿佛进入了漏洞的金库,到处都是得分点。

为了防止这种情况发生,常规的安全套餐需要安排做一遍,特别是“两高一弱”,需要——

1 让自己人扫。在攻防演练之前,请一些攻击队做一些扫描并且进行整改。

2 不让攻击队扫。这可以通过蜜罐或流量来发现攻击队的扫描行为,并第一时间对发起扫描的IP进行隔离。

借尸还魂

有时候你的一台设备被全控,经过你和伙伴的应急响应,找到并删除了木马,清理了环境,高高兴兴又上线了,但是后面发现,攻击队还是从这台设备“借尸还魂”。

当然一个可能是,你技术能力不足,或者你漏洞没有修复,或者你没有举一反三,《网络安全里的苍蝇,蟑螂和白蚁》,或者你只是删除了上传的木马,被人家再次利用。

还有一个可能是,攻击队可能上传了十几个木马,故意留下那个最简单的,让你识别并且止步于此。

一台设备被全控,他上面的所有信息变得不再可信,即使日志也可以被伪造。

就像你在电影里看到的,被俘虏过的人一样。即使全身而退,不管他自己说有没有talk,你一定要以他所知道的所有信息泄露为前提进行应对。

为了防止这种情况,对于被攻击或被全控过的设备,我们一定要重新安装操作系统,重新部署应用,程序代码重新下载,数据库导出导入,上载文件全查病毒,比对备份文件。

擒贼擒王

“王”就是集权系统。比如云平台、集中式数据库平台、统一身份认证平台、堡垒机、源代码版本库管理系统、运维平台等等。

虽然擒王难度很高,不过带来的收益也是巨大的。有些攻击队不屑于帮你找前面“顺手牵羊”的问题,而是会对着集权系统发起挑战。

对于这种的防护,最重要的是要梳理好这些“圣杯”资产,对这些系统加强防护,分级管理。

很多时候,可能是你所不知道的某个二级单位的这类系统被攻陷。

金蝉脱壳

攻击队攻击完成后,会删除日志,清理痕迹。

对于这类防护,需要做好日志保留,日志应当传输到远程。

但是这个传输动作可能被暂停,或者传输的内容被恶意篡改,所以不可篡改的流量留存也是非常重要的。

偷梁换柱

有些攻击队不寻求直接破坏系统,而是通过偷梁换柱等手段,替换一些组件,在系统内隐藏起来。

这个有时候比较难防,恶意行为和病毒很类似,发作的那天,就是它死亡的那天,潜伏期3天,7天,15天,越长,隐蔽性越高,越难以防范。

走为上

如果攻击队发现当前目标防守过于严密,则会采取“走为上”的策略,转头去攻击其他单位其他较弱的目标。

在有限的时间里,肯定是挑软柿子捏,吃饱了没事干,才会啃硬骨头。所以,有时候,只要你不是最弱的那个单位,在攻防演练时,也会取得不错的成绩。

所以应对这个策略,在防守时,就要积极地去防守,去封IP,搞动作,让攻击队意识到,这个目标,是有防守的。

防守方计谋

反客为主

如同我在 《业务系统不止要有安全中心,还要有反制中心》 里谈到的,在攻防演练或者日常检测预警中,不要一直把自己处于被动挨打的状态。

反制应当在规则下,合法地进行。

反制可以利用蜜罐类设备,去控制攻击者的设备。

也可以获得攻击者IP后,尝试对IP进行嗅探。

现在的攻击者,有组织,有依托公司的各类知识库,有自己的平台、工具、武器库形成战斗群。攻击队会在云平台搭建自己的各类平台,购买IP池用于伪装。但只要是平台,也可能会有漏洞。

不过反制听起来热血,意义不大,有这个时间和精力,做点别的更好。

釜底抽薪

防守队对攻击队最“釜底抽薪”的动作只能是封IP了。封IP有时候意义不会很大,除非你封到组织者给的IP地址,否则攻击队很快就会更换IP地址。

欲擒故纵

正如“釜底抽薪”提到的,封IP有时候意义不大,你封了IP,攻击队换了另外一个IP,《网络安全里的苍蝇,蟑螂和白蚁》,你还需要再次去识别到新IP,害人害己。

所以,有时候,如果你识别到攻击队的IP,你可以不封他,只是观察他的攻击行为,如果他只是在探测,尝试,可以不用有什么动作,避免“打草惊蛇”,就当是免费的渗透测试。

一旦识别到风险,立刻“釜底抽薪”,封堵漏洞。

但是这种情况,千万不要玩脱了,只有你检测设备足够的情况下,才能执行这个策略。

关门捉贼

一键断网,把问题设备从互联网隔离开来。当然,很多时候可能抓不到贼,但是可以抓到贼留下的各类恶意木马、攻击手法、来源IP等等。

无中生有

这个主要是涉及到蜜罐的使用,“无中生有”出很多资产出来。

我们前面“顺手牵羊”里做加固,做暴露面收缩,都是在做减法,这里是开始做加法。

蜜罐的部署在于密集,可参考我以前写的:《攻防演练中的蜜罐,不在于他有多蜜,而在于他有多密》。

美人计

我不知道是不是有攻击队里面单身的小伙子在期待什么,这个。。。真编不出来。