网络安全攻防实战技术与效果分析

2021-08-11 07:59马晓亮
信息安全研究 2021年8期
关键词:攻击者开源日志

马晓亮

(重庆医科大学附属第一医院 重庆 400016)

随着互联网与传统医疗行业结合,形成了互联网+医疗的新型服务模式,医疗行业网络平台的复杂性、开放性和应用环境多样性等原因导致医疗行业面临的网络安全风险更加复杂,专门针对医疗行业的勒索病毒和APT攻击也较一般行业更加激烈[1].

平国楼等人[2]对常见的网络攻击模型进行了分析和比对,从攻击者视角对传统攻击模型和现代攻击模型进行介绍,利用攻击指标、概率框架、赋值方法和求解方法对网络攻击模型进行分析;王松等人[3]通过问卷调查等统计方法,对2016—2018年的二级以上的39家医疗机构进行网络安全现状调查和分析,调查出医疗机构面临的网络安全风险和原因;罗森林等人[4]对4种常见对抗演练模式进行问题总结和分析,提出双角色多级别模型及演练策略和方法.

本文通过对网络攻击杀伤链模型、MITRE ATT&CK和免费开源安全技术进行研究,以医疗机构网络安全攻防实战为应用场景,利用免费开源软件对网络攻击的各阶段进行分析和防护,利用开源和免费的网络安全技术构建医疗机构网络安全体系,提升网络系统的安全防护能力和防护水平,对于提高医疗机构的网络安全性具有现实意义.

1 网络威胁模型分析

网络威胁模式是根据已经发现的网络攻击案例,在总结攻击所采用的技术基础上,将攻击阶段进行抽象划分,并将各阶段所采用的技术手段进行总结,形成通用的知识库和攻击模型.

1.1 网络攻击杀伤链模型

如图1所示,网络杀伤链(cyber-kill-chain)是由美国洛克希德-马丁公司提出的用于描述网络攻击全流程周期的模型[5],“杀伤链”这个概念源自军事领域,目的是为了描述攻击环节的“发现目标、定位目标、跟踪目标、瞄准目标、打击目标和达成目标”6个阶段模型[6].

网络攻击杀伤链模型将网络渗透分解为7个阶段[7],如表1所示,在网络攻击杀伤链模型的每个阶段有对应的特征用于识别攻击,所以该模型可以被用来识别和防御网络攻击.

图1 网络杀伤链攻击模型

表1 网络杀伤链各阶段分解

1.2 MITRE ATT&CK框架

ATT&CK(adversarial tactics, techniques, and common knowledge)框架是由MITRE提出的网络攻击策略和技术模型,通过攻击者视角观察真实世界的网络攻击技术[8],ATT&CK模型是在洛克希德-马丁公司提出的Kill Chain模型的基础上,发展起来的一套更加详细攻击行为知识库和模型,列举了攻击各阶段的12种策略:初始访问、程序执行、持续化、权限提升、防御规避、访问凭证、信息发现、横向移动、信息收集、命令控制、信息渗出和影响,每项策略对应该阶段和策略所需要的技术,策略对应的技术随着网络攻击形式的发展和变化不断增加,对应知识的内容也会随着显示攻击技术的发展而更新.

1.3 行业典型网络攻击类型

根据中国信息通信研究院《2019年健康医疗行业网络安全观测报告》显示,由于资金投入不足和缺乏安全建设经验,导致健康医疗行业主要面临勒索病毒和数据泄露的风险,根据本次观测,发现1 029家单位存在僵尸网络和蠕虫病毒等恶意软件,136家单位受到勒索病毒的影响,在严峻的网络威胁现实和国家法律法规的强制要求下,整个行业的网络安全保障水平亟需提高[1].

1) 信息泄露

在2019年,新加坡卫生部门的艾滋病登记处的14 000多名HIV病毒感染者的登记信息被泄露;黑客通过非授权访问UConn的员工电子邮件账号,获取了326 000名患者的敏感信息;印度的一家政府医疗机构服务器泄露了1 250万份相关孕妇的记录;美国医疗收集机构(AMCA)由于数据库授权访问漏洞,导致未经授权访问数据库泄露约2 000万人医疗数据;新西兰的一个医疗机构Compass Health发生100万人的个人数据泄露,包括姓名、出生日期、种族和地址[9].根据卡巴斯基实验室的研究人员发现,越来越多的高级可持续威胁组织开始将注意力和攻击方向转到医疗行业,窃取药物配方、商业信息和统方信息.2019年,公安机关破获多起医药代表通过笔记本电脑连接自助机网线或无线网络等近源攻击方式入侵医院服务器、从医院盗取大量“统方”数据的案件.

2) 勒索病毒

根据美国电信巨头Verzion的2019年度数据泄露报告显示,医疗行业是勒索病毒威胁的主要目标,获取经济利益是对医疗行业入侵的主要目的,有高达75%的入侵是为了获取财富而进行的,病案和药物成为数据泄露的核心内容,病案和药物占泄露数据量的79%[10],勒索病毒和挖矿病毒成为2019年的主流威胁[11].

3) 医疗设备攻击

在2014年,安全研究人员Billy Rios发现Hospira出售的LifeCare PCA药物输液泵有多处安全漏洞,在RSA2018大会上,黑客在医生毫不知情地情况下控制医疗泵系统;2018年3月13日,美国国土安全部发布美国通用电气医疗公司的医疗造影产品存在安全漏洞,可能允许攻击者获取设备访问权和篡改数据;2019年,以色列本·古里安大学和索卡大学的研究人员发现黑客可以修改CT等医疗影响设备的扫描结果.研究人员通过安全漏洞控制医院输液泵和麻醉剂等设备,控制输液和药物的分配量,对医疗设备的攻击可能严重危害患者生命安全.

4) APT高级可持续攻击

高级可持续攻击(advanced persistent threat, APT)是一种针对特定目标进行有计划和组织地长期持久攻击方式,如图2所示,高级可持续攻击至少具备以下4个特点:

① 攻击有严密的组织;

② 特定目标和清晰的目的;

③ 采用各种手段反复渗透的行动;

④ 掌握高超的隐藏和逃逸技术.

图2 高级可持续攻击流程

5) 行业网络管理存在安全风险

缺少完善的医疗行业网络安全标准,在金融行业有专门支付卡行业(PCI)数据安全标准(简称PCI-DSS)和支付应用程序(PA)数据安全标准(简称PA-DSS)等行业标准[12];缺乏统一的网络接入规范,网络接入部门多、结构复杂、边界模糊等问题,导致网络边界防护与数据交互存在风险;网络安全管理和网络安全技术人员匮乏;网络安全理念和防护手段落后;网络安全培训和应急响应机制不完善.

2 免费开源软件的技术优势

针对医疗行业面临的大量风险和网络安全政策强制要求背景下,充分利用开源软件可以有效地解决医疗机构在网络安全建设和运行过程遇到的大量困难,在不大幅度增加资金投入的情况下,使用国内外免费开源安全软件和威胁情报系统,可以与现有的网络安全设备形成互补,也可以弥补因资金和政策等原因无法采购的网络安全产品,在使用开源系统过程中,也可以培养和锻炼本单位的网络安全队伍.

国内外的开源安全软件几乎涵盖商业网络安全软件的各个种类,开源安全软件还包括大量的漏洞利用程序,但因为开源软件多为英语界面或命令行工具,在安装、配置和使用上对技术人员的要求较高,一直被网络安全专业人员和黑客所使用,很少被行业用户所掌握和使用.尽管免费开源软件有使用门槛高、功能少和缺少技术支持等诸多缺点,但应用开源软件也有很多优势:

1) 免费开源安全软件常被攻击者使用,由于武器的不均等常常导致攻防失衡,充分利用免费开源安全软件,可以基本实现攻守装备的平衡.

2) 避免使用盗版软件带来的法律风险,符合国家软件正版化政策.

3) 研究开源安全软件不但可以弥补单位现有商业安全设备的不足,优化网络安全产品的规划和布局,将有限的资金用在“刀刃”上,购买性价比最高、单位最需要和效果最好的设备,从而提高单位网络安全防御能力.

4) 通过对软件源代码和特征库的研究,深入理解网络安全的设计思想及攻击思路,有助于提高单位网络安全专业人才队伍的攻防能力,对现有开源软件的二次开发或自定义插件实现商业网络安全产品无法达的目的.

5) 免费开源安全软件常被用于网络攻击、蠕虫病毒或勒索病毒的传播,合理地运用免费开源安全软件可以模拟黑客攻击和病毒攻击,相当于定期进行风险评估和漏洞缓解[13].

3 安全防护体系设计

中国古代兵法有云:“知己知彼,百战不殆”,网络防御体系也是一场网络空间的战争,通过ATT&CK模型描述的攻击技术达到知彼,我们运用开源技术进行渗透测试,模拟网络攻击全面掌握网络信息系统的漏洞和弱点达到知己的目的,然后根据寻找攻击和防守的差距,在攻击的各阶段进行防御工作,有针对性地开展漏洞修复、配置优化和系统加固,设置诱导信息将攻击者引导到错误方向.如图3所示,反杀伤链分为6个阶段:探测防护、网络防御、入侵检测、主机防御、主机检测和威胁情报.

图3 基于攻击模型的分阶段防御体系

4 免费开源安全防护体系实现

网络安全建设符合《中华人民共和国网络安全法》(以下简称《网络安全法》)《中华人民共和国密码法》和《网络安全等级保护条例》等国家法律法规,网络的安全防护系统能够有效地抵御各种攻击系统,各项安全防护策略可以有效地保护系统和数据的安全.

4.1 探测防护

对目标进行侦察是网络攻击前的准备工作,如表2所示,攻击者对特定IP地址主机或某一段范围的主机进行扫描,发现存活主机、开放端口、软件版本信息和存在安全漏洞,根据网络侦察阶段发现的可利用信息,有针对性地对开放的端口和安全漏洞进行攻击.2019年12月2日至2020年1月30日,安恒信息风暴中心对全国医疗卫生行业1 500余个网站进行实时监测分析,发现存在网络安全风险漏洞的网站占比约10%,150家网站中存在高危漏洞,占比约67.94%.作为网络安全防守方的医疗机构网络安全人员,应该在网络信息系统的建设、测试、运行和维护过程中,及时发现系统信息泄露、开放的端口和安全漏洞,通过关闭不需要端口、控制必要开放端口访问范围、修改软件旗标和版本信息等方式,达到欺骗攻击者或将攻击者攻击方向引向歧途实现对主机的侦察防护的目的[14].

表2 免费开源漏洞检测软件

1) 综合漏洞管理

综合漏洞管理系统具有丰富主机发现、漏洞扫描、基线核查和漏洞管理等企业级功能,可以对网络安全漏洞进行全生命周期的安全管理,在控制面板上可以显示网络整体的风险指数和排行榜,管理人员可以通过控制面板和评估报告直观地掌握风险情况.

2) 应用程序扫描

Arachni,W3af,Taipan,OWASP ZAP是4款比较典型的开源Web应用漏洞扫描程序,其中OWASP ZAP和W3af带有GUI界面,Taipan是基于命令行操作的,Arachni是基于B/S结构通过浏览器进行访问.

3) 端口服务扫描

网络探测和安全审计命令行工具,可以发现一个网段中存活的主机、开放的端口和运行的网络服务信息,可以通过网络数据包中的特征值分析对应服务的版本信息和各种防火墙信息.

4) 渗透测试软件

渗透测试软件是集成化的漏洞验证和模拟黑客攻击系统,常被用来进行渗透测试工作,我们可以使用它内置的软件验证漏洞扫描发现的漏洞是否存在及危害程度.

4.2 网络防御

如表3所示,网络防御是通过拦截攻击、通信隔离、流量过滤、端口防护和限制访问等方式在网络层面上进行防御,对非授权访问和恶意网络流量进行拦截,实现按需求开放和访问的安全域的划分,减少端口、服务、资源和数据对访问端的直接暴露机会,确保将网络安全风险降到最低点.

表3 免费开源网络防御软件

1) 网络隔离和流量过滤

利用交换机和路由器等网络设备划分VLAN,根据不同的业务需要和安全等级要求划分安全域、建立DMZ等方式对服务器进行隔离,设置交换机MAC与IP地址绑定,可以大大降低非法终端利用自助机和门诊部等对外部位网络非法接入的风险,网络设备中的访问控制列表可以限制非授权终端访问网络,降低接触式的近源攻击可能性.

2) Web应用防火墙

Web应用防火墙(Web application firewall, WAF)是一种工作在应用层对Web应用系统进行防护的应用防火墙系统.WAF可以有效防护SQL注入、XSS攻击、CSRF攻击、命令注入、信息泄露和文件上传等攻击进行防护,还提供了网站静态网页的缓存等功能,用于优化和加快网站的访问速度,向用户提供详尽的日志信息和丰富的报表功能,日志信息中详细记录了设备的管理日志,以及对Web服务器的访问日志、攻击日志和篡改日志,一旦服务器日志因攻击被破坏,WAF中的日志可以完整分析用户访问和攻击流程.

3) 数据库防火墙

数据库防火墙是用来对数据库管理系统进行防护的安全系统,能够拦截非授权访问,抵御SQL注入等针对数据库的攻击,一般情况下部署在靠近数据库服务器一侧或直接部署在数据库服务器上,根据配置策略实现IP地址、端口和时间等条件进行访问控制.MySQL等数据库管理系统内置权限管理命令可以配置完成IP地址、用户账号和数据表等访问授权,非授权访问的IP将被拦截.

4.3 入侵检测

入侵检测是边界网络防御体系后的第2道防线,相当于内部网络的一个监控记录系统,如表4所示,能够根据网络流量、行为和日志分析出入侵行为,可以根据预警信息及时发现和阻断网络攻击,通过日志和记录还原网络攻击完整过程,可以作为分析网络攻击和事后取证的依据.

1) 入侵检测系统

入侵检测系统(intrusion detection system)是由传感器、事件分析器、响应单元和事件数据库组成,传感器是入侵检测的事件发生器,负责采集网络流量数据并传送事件分析器,事件分析器将网络流量数据进行分析得到分析结果,响应单元根据分析结果进行报警、切断网络连接和定位攻击者等响应行为,将整个过程记录在事件数据库[15].

2) 运维审计系统

运维审计系统(俗称堡垒机)实现了远程管理的单点登录,简化了远程管理账号和权限管理的工作,提供了远程运维管理所需要的单点登录、集中账号管理、集中身份认证、集中资源访问授权、集中访问管理和集中操作审计,建立集中和主动的安全管控模式,降低了账号泄露、数据非法下载和网络攻击风险.

3) 日志分析系统

操作系统、应用软件、数据库管理系统、中间件、网络设备和安全设备等软硬件系统会在运行时产生大量的日志数据,按照《网络安全法》要求日志至少要保留6个月以上,但是目前的部分路由器、交换机和网络安全设备受到存储空间的限制,往往达不到要求,更不具备日志审计分析功能,通过搭建Syslog日志收集服务器,将大量分散设备的异构日志进行高效采集、统一管理和集中存储,可以满足等保合规性要求,为安全事件事后取证、攻击朔源和漏洞修复提供依据.通过开源系统实现日志采集、分析和存储功能,对日志进行全维度、跨设备、细粒度的关联分析,对日志数据进行数据挖掘分析,发现日志和事件间的潜在关联关系,形成可视化的日志报表,可以为医疗机构管理人员提供全局的网络安全视角.

4) 蜜罐

蜜罐是一种专门部署在网络中用来欺骗攻击者的系统,引诱攻击者或计算机病毒向系统发起攻击,可以对攻击行为、攻击代码进行捕获和分析.通过蜜罐可以掌握攻击者采用的攻击手段和漏洞,蜜罐系统内置的控制台和日志系统能够完整详细地记录攻击过程,及时发现内网的威胁和存在的安全隐患.

表4 免费入侵检测软件

4.4 主机防御

如表5所示,主机防御是对攻击者进入核心信息系统的最后一道防线,攻击者通过跳板或者使用其他手段绕过网络防御手段,将攻击负载投送到主机上运行,执行SQL语句、Shellcode、Downloader、JS文件和系统命令等操作,能够成功检测到攻击代码、阻止代码执行和拦截恶意行为是防御的关键.

1) 系统防火墙

根据主机开放业务的需求,添加开放的端口、端口类型和IP地址范围等防火墙规则,可以有效地控制服务器开放的端口数量和开放范围,对于无访问权限的主机相当于服务器在网络中隐身,大大提高了服务器的安全性.

2) 终端安全响应系统

终端安全响应系统(endpoint detection and response, EDR)是一种基于主机的安全事件侦测和防护响应系统,针对终端服务器的攻击进行威胁检测和响应,安装在主机的Web应用防护可以通过主动防御和行为检测对WAF起到很好的补充作用.中小网站防护系统还提供云WAF功能,能够通过修改DNS解析的CNAME隐藏服务器真实IP地址,利用云WAF过滤网络流量后发送到回源IP,实现对Web应用系统的云WAF防护.

3) 主机入侵防御系统

主机入侵防御系统(host intrusion prevent system, HIPS)是一种不完全依赖特征库的主机防御系统,通过主动防御机制对系统关键的监控和防护,根据程序的行为分析判断是否为恶意软件,可以提供至少3种类型的防御:应用程序防御体系(application defend)、注册表防御体系(registry defend)和文件防御体系(file defend).

表5 免费开源漏洞检测软件

4.5 主机检测

如表6所示,主机检测是在服务器上利用安全检测软件对主机上的WebShell、后门和网页挂马等恶意代码进行检测,一般分为定期日常检测、关键时期检测和异常事后检测,定期日常检测和关键时期检测主要是为了定期对主机的安全性进行评估的工作,异常事后检测是发生网络攻击后的一种调查取证和恶意代码消除过程.

1) WebShell专杀检测

WebShell是使用ASP,ASPX,PHP,JSP等Web开发语言编写的Web网页后门程序,单独存放在Web文件目录中或嵌入到其他网页文件中,通过浏览器或客户端程序连接Web服务端口访问WebShell文件URL地址,可以在服务器端执行命令、上传文件和文件访问等远程操作,由于WebShell不需要单独开放端口,直接通过开放的服务端口访问,很难通过防火墙等边界防护设备发现和拦截通信[16].

2) ARK分析工具

ARK(Anti-RootKit)是反RootKit工具的简称,主要用来分析系统的RootKit、后门和病毒等恶意代码的工具,提供系统内核级分析功能,能够对系统中的端口、进程、自启动项、内核信息、各类钩子和主引导记录等内容进行细致深入的行为判断及特征分析,通过数字签名验证及云检测判定文件的可信任度,可以在虚拟机中运行可疑程序,通过ARK工具的监测功能详细分析程序执行过程中的危险行为、调用的函数、访问的文件、建立的网络连接和下载的文件等动态行为过程.

3) 逆向分析工具

对于捕获的攻击代码、病毒、RootKit和后门等恶意程序往往进行了免杀处理,常规的杀毒软件无法检测到,我们可以通过逆向分析方法进行恶意代码分析,判断可疑程序是否为恶意代码、恶意代码具体的执行流程和攻击目的,通常采用动态行为分析、动态代码调试和静态代码分析3种,分析目标程序编写语言、加壳种类、编译器信息.FireEye发布的FLARE VM是集成化的逆向工具箱,可以用来恶意软件分析、逆向工程、事件响应和取证调查,集成了反汇编器、调试器、反编译器、静态分析工具、动态分析工具、开发工具、漏洞评估和网络分析工具等.能够通过调试和静态代码分析解除恶意代码的保护外壳,分析恶意代码的执行流程、传播机制和破坏行为等恶意行为,有助于消除安全隐患、修复系统和清除残留的释放文件.

4.6 威胁分析和情报系统

威胁分析和情报系统通过介绍网络安全人员日常工作中经常使用的在线文件分析和威胁情报系统,如表7所示,列举了常用的威胁分析和情报系统,运用沙箱、大数据技术和威胁情报网络等新技术,解决文件鉴定和情报研判问题.通过沙箱系统观察程序运行结果和具体恶意行为,威胁情报系统可以查询到APT、网络威胁和僵尸网络等网络攻击相关情报内容.

表7 免费威胁分析和情报系统

5 结束语

本文从医疗机构面临的安全风险和网络安全建设困境出发,结合网络安全攻击策略和技术知识库,基于大量的开源和免费软件技术,探讨如何构建一整套的开源网络安全防护体系和开源技术实现方案,表8为攻防技术在各攻击与防御阶段的对抗效果分析,通过站在攻击者视角观察网络安全漏洞和防护弱点,从攻击者攻击思路出发,逆向分析和封堵网络安全防护盲区,以“授人以渔”的思路,提供整体网络安全防御策略和各策略所使用到实现技术的软件,将常用的免费开源网络安全软件作了简单介绍,确保医疗机构的网络安全建设达到合规、有效和安全的目的,应用开源解决方案全面提升医疗行业网络安全水平,降低医疗机构面临和遭受的网络安全风险.

表8 开源软件在安全体系中的应用效果分析

猜你喜欢
攻击者开源日志
机动能力受限的目标-攻击-防御定性微分对策
一名老党员的工作日志
扶贫日志
五毛钱能买多少头牛
2019开源杰出贡献奖
正面迎接批判
游学日志
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0
有限次重复博弈下的网络攻击行为研究