网络攻防实战的战术思考
“网络安全的本质是对抗,对抗的本质是攻防两端能力的较量”,网络安全的实战能力已成为常态化目标。类比来看,网络空间的对抗就如同军事的战争、战役、战斗,本文结合实战对抗的案例探讨网络攻防实战中的一些战术思考。
一、全面资产梳理
“你无法保护你看不见的资产”,资产梳理的重要目的之一是收集暴露面、收敛攻击面,常见的战术如下:
关注“影子IT”以及“幽灵资产”,排查、消除“三无”(无人管理、无人使用、无人防护)系统或平台,整改“七边”(测试系统、试验平台、退网未离网系统、工程已上线加载业务但未正式交维系统、与合作伙伴共同运营的业务或系统、交接不清的系统、处于衰退期的系统)系统、平台,也包括其它上述未涵盖的,比如关机或开机但未入网在线的冷备系统等,严格关停不必要的系统,关闭不必要的服务、端口,及时修复漏洞、加固系统,加强访问控制与审计。
梳理、加固WEB类资产以及移动APP、微信公众号、小程序等新型互联网边界资产。
以攻击者视角,开展敏感信息泄露的情报收集,排查Github、码云、百度网盘、百度文库、招标信息、合作厂商案例等,发现内部IP、人员信息、密码、源代码、系统架构、产品型号等敏感信息的暴露,及时整改。
加强QQ、微信、钉钉及各种即时通讯群的清理和管控和安全意识宣贯,防止社工攻击,可能的话限制、审核文件的收发。
识别并重点防护堡垒机、跳板机、域控、云管平台、网管平台、自动化运维、网络防病毒系统等各种集权或敏感系统,加固系统,强化访问控制,加强对其流量与日志的实时监测与异常分析。
资产梳理另一个重要目的则是厘清资产的运维信息、业务特征、依赖关系,便于判断影响,辅助应急决策,加快响应速度。
二、高地的争夺
军事理论说“永远居高临下地战斗”,一个高地的得失往往主导一场战争的胜败,而在网络空间里,常规WEB、VPN之外,邮箱也是突破的重点、攻防必争的高地之一。围绕邮箱,常见的战术如下:
坚壁清野,包括服务端、客户端的系统加固、访问控制加强,用户梳理、口令修改加固、邮箱里保存的账号、密码、网络拓扑、代码等各类敏感信息删除等。
培训与演练,开展全员安全意识培训,提升防范意识,不点击不明链接,不打开不明文档,结合培训开展多轮钓鱼演练,持续宣贯。收集客服、管理人员、运维、开发、外包等高危目标人群名单,收集互联网暴露的邮箱用户名单,重点宣贯强化。
纵深防御,开启ip与域名的信誉值策略,拦截恶意来源邮件;开启SPF、DKIM、DMARC策略,拦截伪造邮件;开启邮件网关的恶意代码防护功能,同时部署邮件沙盒,在不改变网络拓扑的情况下,可以拦截、延时投递可执行文件、压缩包、具备宏功能的PDF、OFFICE文档、含url外部链接的邮件,发送到归集邮箱,并借助流量旁路到沙盒和NTA设备,多种安全设备能力协同验证,必要的时候技术人员参与综合分析判断,根据分析结果对拦截邮件进行自动与半自动化处置。
智能对抗,提取邮件中显示与实际url不一致的、域名注册时间较短的、域名包含合法域名、主题包含收件人信息等多维度特征,跨邮件关联,同时结合其它设备安全日志,智能分析,发现异常与攻击线索。
三、唯快不破
攻击方的工具已实现高度武器化和自动化,定制的扫描工具探测一个C段仅需要30秒,特定场景下,已完成前期情报收集、目标选择、武器定制的攻击者5分钟就可以结束战斗离开战场了。防守需要快速的应对攻击事件,不同的场景下,我们需要条件反射般的自动响应,需要半自动化的安全上下文丰富、定位、通知等辅助响应,更需要人、工具、流程的有机结合,提高协作效率,快速、有效响应。
攻防的很多情况下,切断攻击路径是优先的选择,攻击IP的实时封禁是最常见的,也是最简单最有效的防守战术之一,即使是利用“秒拨”地址池充当“炮灰”的探测阶段,封禁IP也可以延缓攻击方的进展,同时避免产生大量的扫描类告警干扰。封禁的方法需要因地制宜,可以自动化可以半自动化;可以利用防火墙、WAF、IPS、抗DDoS设备等串联的安全设备,也可以利用旁路的TCP Reset 阻断工具;具体的实现可以是直接调用API、脚本、定时任务,也可以是通过RPA、SOAR等工具。封禁IP要考虑业务时段、网络环境、威胁影响等各种因素,同时需要建立白名单机制避免误杀影响业务,可以收集分支机构、合作伙伴、客户等业务相关白名单IP,可以动态匹配威胁情报的移动基站、网关等标签加白。但再如何努力,误杀与株连依旧是不可避免的,所以需要有误封快速查询和解封的机制,紧急情况下一键解封的逃生手段,误封的可以不断积累转化用于优化白名单和封禁流程。
编排合理的流程将防守对抗过程中的“监控-研判-处置-溯源”各个环节紧密衔接,并利用在线协作工具,将流程落地化,保证攻击事件从监控发现、研判溯源到应急处置能全流程平台化实现,有效串联防守力量,最终实现联防联控、事件高效闭环。
如同武术套路一样,“拳不离手”,不断地练习可以形成肌肉记忆,安全人员需要不断磨合,工具和流程需要持续建设、不断完善,才能快速反应,阻断攻击、把握生存窗口或抓住稍纵即逝的战机。
四、欺骗的艺术
“兵者,诡道也”,网络欺骗是一种主动防御战术,其基本思路是:让攻击者对攻击产生错误感知。
通过业务仿真搭建高中低交互的蜜罐,进而构建蜜网、蜜场,是目前常见的欺骗防御手段。诱惑入侵行为进入,进行攻击捕获,延缓攻击者对真正业务系统的攻击,记录、分析攻击轨迹和行为,利用技术手段获取攻击者设备指纹,同时试图捕获攻击者信息,实现取证溯源。
欺骗防御体系的构建是个系统化的工程,可供发挥的战术点非常多。比如无中生有,利用空闲IP伪造大量主机;比如利用真实但无数据的业务系统作饵;比如模拟真实的业务访问,“养蜜罐”布局;比如利用乌云镜像、漏洞平台等披露的历史漏洞布下陷阱;比如对码云、Github、百度文库、安全论坛、社交网络等定向投毒,分撒诱饵文件、诱饵信息,可以利用之前泄露的敏感信息,利用老旧域名、已下线的系统等,将其转化为诱饵、信息面包屑,误导、诱骗攻击者;比如在蜜罐邮箱里放置诱饵文件;也可以在被社工攻击,接收到钓鱼邮件或钓鱼程序之后将计就计;还可以利用rdp、mysql、扫描工具的漏洞、vpn定制木马、伪造的浏览器控件、OA安装包等尝试反制。
五、人民战争
我们所说的网络安全的人民战争,不光是指每个员工都身入其中、不做旁观者,网络安全全员动员的战略,也指业务与IT、应用与安全的联合,藏兵与民、平战结合的战术。
业务人员参与研判流程,可以判断是否正常业务、判断是否正常操作。业务人员参与处置过程,可以判断业务影响、可以辅助决策、辅助取证。
前文提到的白名单机制,可以结合业务的大数据信息进行优化,根据当前是否有正常业务交互,分析判断,避免株连封禁。
部署欺骗防御的时候,可以利用真实系统开启其它端口吸引攻击,可以将404页面、不存在的管理页面引流到蜜罐中,将真实系统与欺骗防御融为一体。
可以优化WAF检测策略,尽可能消除误报,然后利用WAF自定义拦截页面和重定向,攻击者触发WAF拦截策略后,将被重定向至具备溯源能力的蜜罐页面。
具备获取设备指纹的大数据业务埋点分析系统,可以与WAF、蜜罐有机的结合,通过双向的引流、重定向等将同一时间、同一IP的业务设备指纹与蜜罐的设备指纹关联起来,拓展线索。
六、工具平台利用与反利用
互联网资产测绘引擎对于攻防双方而言都有利有弊。一方面防守方利用zommeye、fofa、Shodan、censys等测绘引擎,搜索域名、ip、关键字、证书、应用、端口等盘点互联网资产,包括利用icon_hash发现隐蔽资产,收敛攻击面,另一方面,攻击者也利用它们探测防守方资产信息和漏洞。Checkpoint 在2016发布的一篇博客建议阻断 Shodan scanners ip(https://blog.checkpoint.com/2016/01/04/check-point-threat-alert-shodan/),当然,这是存在争议的,反对的安全专家认为这并不带来真正的安全。资产的梳理和攻击面的收敛是必须做的,具体阻断还是不阻断,需要防守方结合实际情况,综合各种因素的判断,需要注意的是,有新的测绘引擎产生,测绘引擎也在衍生各种反封禁的技术手段。
某些特定的情况下,防守方网站可以接收到测绘引擎转发的攻击者对页面访问请求,HTTP头里的X-Forwarded-For字段带了攻击者的ip,这一般是个明确的攻击信号,而且由于还处于非直接接触的信息收集阶段,大意的攻击者可能还没意识到伪装自己,除了IP外,user agent也会暴露一些特征,防守方可以据此触发相关应急与溯源。
类似的还有DNS回显平台,攻防双方都可以利用来核查某些漏洞。计划外的、未知的来自互联网边界或内部服务器对外的DNS回显请求也是一个明确的攻击信号(dnslog.cn、ceye.io、dnslog.link、dnslog.io、tu4.org、s0x.cn、burpcollaborator.net、yunsee.cn、awvsscan119.autoverify.cn等等),这通常意味着有漏洞已经被触发了,需要高度警惕,防守方需要实时监测、封禁服务器对外的DNS回显请求,要应急处置已触发的漏洞。
七、真实案例
介绍一个实战的案例,2020年网络实战攻防演练的某日,一个攻击IP触发了防守方WAF的告警,我们分析发现是针对在线客服的钓鱼攻击,试图诱导客服人员下载以“浏览器更新插件.exe”等名字伪装的恶意程序。
在siem平台做进一步的分析,发现攻击者先后使用了4个攻击IP 对防守方进行多次探测和恶意程序投递。
(攻击IP:8.x.x.17、139.x.x.98、129.x.x.12、129.x.x.193;
投放服务器:139.x.x.159、47.x.x.170)
下载恶意程序样本“浏览器更新插件.exe”在IDA中静态分析,并在沙盒中运行进行动态分析,发现其流程如下:
1) 样本运行之后,分别释放browser_extension.exe和conhost.exe两个可执行文件到TEMP目录,然后分别执行;
2) browser_extension.exe执行,仅弹出消息框显示更新浏览器插件、延时、显示更新完毕,无其他实质行为;
3) conhost.exe则为主要的恶意木马模块,使用伪造的12306证书签名;
4) 绑定监听本机8900端口和6000端口,通过内置的lanproxy组件进行内网穿透实现BindShell;
5)收集主机信息包括ComputerName、UserName、OSVersion等作为上线数据包发送至C2服务器;
6)回连C2服务器 6500端口,可响应C2服务器远程指令,包括远程Shell、磁盘文件管理等。
查询C2 IP,为位于深圳的云主机,利用相关威胁情报平台对C2 IP进行拓线分析,发现相近时期内存在多个恶意通信样本,样本中包含同一攻击者的多封钓鱼邮件。钓鱼邮件里携带的附件是伪装成PDF格式的.exe恶意程序,同样采用了文件捆绑、伪证书签名、C2回连等攻击手段。
其中样本一捕获了攻击者发件地址1,经查询邮件网关日志,发件地址1曾对防守方进行过投递,但因收件人错误,被邮件网关丢弃。样本二捕获了攻击者发件地址2,发件IP2(139.x.x.159),查询邮件网关日志,发现发件地址2也曾经投递钓鱼邮件,但因IP2信誉值过低被邮件网关拒绝。发件地址2包含攻击者私有域名,查询域名MX的信息指向最初的四个攻击IP之一(8.x.x.17,139),域名SPF的信息则指向IP2,同时也是前面提到的投放服务器之一(139.x.x.159)。我们推测攻击者先使用邮件进行了简单的尝试,失败后转而攻击在线客服,日志显示攻击者以js、jpg、svg、exe等不同文件格式进行了大量的尝试。值得注意的是,与以往伪装成客户,以咨询开户社工客服人员的常见套路不同,攻击者使用的话术是伪装成系统的升级提示信息(“不支持当前用户发送的消息格式,请点击此处下载最新ET系统浏览器插件!”、“ET系统当前浏览器插件已更新,请安装!”),这是此前的安全意识教育未曾警示过的方式,极具欺骗性。
利用两个邮件地址、私有域名信息,我们溯源到攻击者虚拟身份、真实身份、通讯方式、毕业院校、工作单位等信息以及具备工具开发能力、具有移动安全经验等攻击能力画像。
结合利用业务大数据埋点分析系统,我们把同一段时间内的攻击IP与device-id 双向关联、拓展分析,最终定位到3个攻击者设备指纹,12 个攻击IP ,2个投放服务器,2个C2 IP,并对其中一台 C2服务器(121.x.x.144)成功溯源。
我们从最初的WAF告警出发,关联威胁情报、邮件网关日志,结合安全设备日志与业务埋点数据,拓展线索,辅以NTA、全流量回溯支持,完整还原了攻击者的攻击路径、攻击方式,分析了本次攻击采用的技战法,包括钓鱼先行、可执行文件捆绑、伪证书欺骗、内网穿透、私有域名、C2基础设施等,并通过溯源掌握了攻击者的更多信息与技术能力画像。
本案例给我们很多启发,攻击者尽管犯了一些错误,但整体来说仍然是非常强大的对手,工具、技能、基础设施完备,战术应用得当,而且一击即走,毫不恋战,社工的手段更是新颖独特。被拒绝的邮件也隐含线索,情报共享拓展了方向,无意间发现的业务埋点数据与安全结合,打开了我们平战结合的思路。兵无常势,水无常形,网络攻防的博弈是动态的,攻与防的技术在不断革新进步,我们不能墨守成规、作茧自缚,网络安全的作战要根据形势的变化来采取灵活机动的战略战术。