本文为福利赠书,赠书规则见文末!
本文为福利赠书,赠书规则见文末!
白环境是网络安全中基于白名单机制的,是面向应用系统的,需要提前考虑安全,实现全面的安全左移。本文将介绍白环境的重要概念,以帮助读者更好地了解白环境。同时,将详细介绍构建白环境的四个步骤:梳理应用系统资产、梳理安全配置基线、梳理网络攻击路径和梳理防护组件和策略。
01 什么是白环境
网络安全的本质是人与人之间的对抗,是攻防双方对安全的理解与认知的对抗。
● 从攻击者角度看,他们需要针对攻击目标,研究可行的攻击路径并且实施可靠的攻击手段,才能达到预期的攻击目的。
● 从防守者角度看,他们需要结合被保护的应用系统的特点,针对各种可能的攻击路径,制定不同的防守策略,构建纵深防御体系,最终达到有效防御的目的。
从防守的角度来说,当我们试图讲清如何构建一个纵深防御体系的时候,我们需要考虑系统中大量的可能性和变数,例如主机和主机之间可能存在的网络连接、管理员在系统上可能执行的命令等。当所要保护的系统规模较小、复杂度较低时,我们还可以处理,但当系统规模较大、复杂度较高时就难以应对了。这就像我们下围棋一样,从落下第一个黑子开始,后续可能的走法有361!种,这是一个难以想象的天文数字。
02 如何构建白环境
2.1 梳理应用系统资产
构建白环境的第一步是梳理应用系统资产,这相当于在做“知己知彼”中"知己"的相关工作。
基于白环境理念,资产梳理至少要包括以下内容:互联网暴露面、硬件资产、软件资产、人员账号等。
➢ 梳理互联网暴露面是我们在梳理资产时的第一步,就是梳理那些直接暴露在互联网上、可以被互联网上的所有人、程序或者服务访问的资产,例如网站服务、邮件服务、数据服务、移动应用、小程序、接口(API)等。如果防护不当,这些资产就有可能成为攻击者进入企业内网或者生产环境盗取数据的入口,因此需要特别引起关注。
➢ 硬件资产是指在生产环境中应用系统运行的基础设施,例如路由器、交换机、服务器、存储、安全设备等。这些硬件资产往往都带有自己特有的操作环境,例如思科路由器的IOS操作系统等。关注硬件资产主要是和漏洞管理以及安全配置基线有关,配置不当或者升级不及时同样会造成安全隐患。
➢ 软件资产是指在生产环境中支撑应用系统运行的软件环境,例如操作系统、数据库、中间件、文件系统、开源或者商业化软件等。在梳理完软件资产后,可以通过不同层面的技术手段来逐步健全软件白环境。
➢ 人员账号是指在生产环境中负责运维和支撑的人员,以及他们在各个硬件、软件、应用系统中所对应的账号信息。在梳理完人员账号后,可以通过相应的技术手段逐步完善身份白环境。
在白环境理念中,主要关注的是生产环境,因此资产信息变化不会太快、太频繁。即便如此,资产梳理仍然是一个长期、持续的工作。为了更为全面、高效、准确、实时地梳理资产信息,可以通过手工录入、工具软件或者专业化服务来完成。现在,很多企业都有自己的配置管理数据库(Configuration and Management Database,CMDB),部分资产信息也可以通过这些已有的平台获得。
2.1.1 梳理互联网暴露面
企业互联网暴露面的梳理工作通常包括以下3个阶段:问询访谈阶段、主动探测阶段、被动监测阶段。
➢ 在问询访谈阶段,通常是以走访企业业务运营、应用开发、系统运维等负责人为主,了解企业主要业务、支撑业务的应用系统、应用系统的部署情况以及运维方式等。
➢ 在主动探测阶段,通常是根据在问询访谈阶段获得的信息,获得更为全面的资产信息,包括:每个一级域名下的二级域名、三级域名;在IP地址段中所有活跃的地址,以及每个地址上开放的端口、服务、指纹信息等;业务系统网站上的页面等。在主动探测阶段,使用较多的工具包括扫描器、网站爬虫。
➢ 在被动监测阶段,通常是从一些真实发生的数据中提取有关互联网资产的信息。这些数据包括互联网边界网络设备的NetFlow数据、域名解析服务提供商的DNS日志、企业互联网边界防火墙的日志、部署在企业侧的流量探针日志、PDNS日志等。这些数据是客观发生的,即使那些临时开放的端口和服务,只要有访问流量,就会产生相关数据,这些端口或者服务也能被识别出来。
除了通过专业的安全服务公司做互联网暴露面梳理,还可以通过一些互联网资产搜索引擎查询。但由于这些引擎是周期性地对全球所有资产进行扫描,并非对某个企业的资产进行针对性扫描,因此,通过它们看到的企业互联网暴露面结果不一定全面。例如,可以通过FOFA(访问链接为https://en.fofa.info/)来查询IP地址或者域名信息。
此外,作为基础网络的建设者、运营者,中国移动、中国电信、中国联通三大运营商商拥有海量基础网络数据资源,这些数据不仅可以服务于网络调优、故障检测,还可以服务于安全领域。
● 运营商在提供互联网接入服务的同时,在网络设备上也会记录下一些路由信息、数据包传输信息等,其中最为有用的就是NetFlow数据。基于这些元数据,可以帮助企业准确、快速地梳理出所有在互联网上暴露的IP地址以及开放的端口。
● 运营商除了提供基础网络能力以外,还为千家万户和各行各业提供了域名解析服务(DNS),基于这些海量的域名解析记录,还可以帮助企业梳理出它的全部域名,这不仅包括一级域名,还包括所有的二级和三级域名等。
2.1.2 梳理内网软硬件资产
下面我们从内网资产扫描和系统软件管理两个方面做介绍。
(1)内网资产扫描
支撑企业应用系统正常运行的基础是那些硬件服务器、网络设备、存储设备以及云环境下的虚拟机等。这些资产大多数情况下对外表现的形式是IP地址,我们从安全角度最为关心的也是IP地址,当然,还有开放端口。因此,对这些资产梳理的目标也是如此,即统计整理出内网所有活跃的IP地址以及开放的端口。
具体梳理工具也有很多:
● 通过扫描器(nmap、nc等)对资产进行主动探测。
● 更为精准的方式是登录到主机上,通过操作系统自带工具查看主机上每个IP地址开放的端口,以及开放的范围。常见的工具包括netstat等。
(2)系统软件管理
在梳理完内网环境中的硬件资产后,还要对操作系统、数据库、中间件等软件资产进行梳理,梳理工作通常都会采用登录主机后执行相关命令的方式来完成。
2.2 梳理安全配置基线
在梳理完应用系统的资产后,有一件非常基础性的工作需要进一步完善,它就是硬件、软件的安全配置基线。需要注意的是,第一,安全配置基线非常重要,但经常被忽视;第二,很多企业虽然在做安全配置基线相关工作,但做法有问题,因此起不到应有的作用。
关于安全配置基线,有一个建议是,根据企业自身信息化建设的实际情况和资产分布,参考软硬件原厂以及CISecurity等第三方的安全配置建议,整理适用于企业自身的安全基线配置手册,通过人工或者自动的方式进行配置,并且定期进行配置核查形成闭环。
IBM有一套非常完备的安全配置手册。在这个手册中,详细描述了如何对IBM使用到的所有软硬件进行安全配置,范围涉及网络设备、服务器、操作系统、数据库等。国外虽然没有等保来要求,但安全工作却一点也不马虎。
2.3 梳理网络攻击路径
企业在做信息化建设的时候,往往会同步进行网络规划,此时会有一个网络拓扑图,即整个网络环境是什么样子,由哪些网络设备(路由器、交换机)组成,包括哪些网段,以及这些网段之间的通联关系等。通过拓扑图能够直观地看清网络结构、不同主机所处的网络位置以及它们之间的关系等。这个网络拓扑图很重要,它是我们后续梳理攻击路径的基础。如图1所示,这是一个公有云的网络拓扑图示例,其中VPC(sash-test-vpc)包括了三个子网网段(FrontEnd、BackEnd、SashEnd),总共有 60 个实例。通过拓扑图能够直观地看清网络结 构、不同主机所处的网络位置以及它们之间的关系等。
图1 公有云网络拓扑图
我们所说的攻击路径是指攻击者从互联网开始,一路到达应用系统内部,并且可以成功破坏系统、盗取数据的网络路径。只有提前梳理完可能的攻击路径后,我们才能清楚在什么位置布防,以及部署什么样的防护措施。另外,通过对攻击路径的梳理,还可以判断现有的防护手段是否足够和有效。
这个攻击路径可能是:
● 从企业对外开放的网站进入,获得运行网站的主机权限,然后再横向移动到数据库服务器盗取数据;
● 通过社工钓鱼控制某台员工的电脑,反向连接到互联网上的C2服务器,然后再逐步渗入企业办公网,对流量进行监听从而盗取数据;
● 先控制边界的网络设备,再由此作为跳板,接入企业的生产环境,从而控制主机、盗取数据等。
总而言之,提前梳理可能存在的攻击路径是作为防守方需要做 的一件非常重要的工作,只有在梳理完可能的攻击路径后,我们才 能清楚在什么位置布防,以及部署什么样的防护措施。另外,通过 对攻击路径的梳理,还可以判断现有的防护手段是否足够和有效。
在本节中,我们侧重的角度是梳理基于网络空间中的攻击路径,不包括真实世界中,通过社工进入机房造成破坏而达成的攻击路径。在梳理攻击路径时,是基于基于网络拓扑和业务逻辑的。具体工作至少可以从以下四个方向考虑:
● 应用系统正常业务逻辑角度,类似正面攻击
● 应用系统后台运维角度,类似迂回攻击
● 系统基础设施角度,类似正面攻击
● 应用系统供应链角度,类似迂回攻击
我们在梳理攻击路径的时候,需要从攻击者视角,一方面把路径梳理出来,另一方面把涉及的资产梳理出来,以及针对这些资产可能使用的攻击手段。
2.3.1 系统业务逻辑角度
如图2所示,图中是一个简单的网站类应用系统,对外提供一些基本的信息展示和查询功能。真实环境比这个例子要复杂很多,但梳理攻击路径的思路和方法是一致或类似的,只不过需要考虑的因素要多一些、可能性要多一些,具体路径有可能会复杂一些。
图2 简单的网站类应用系统
能够看到,图2所示的应用系统的互联网暴露面是一个网站,有一系列的页面,当然,后面还有数据库作为数据存储源。
作为攻击者,如果目的是获取后台数据库服务器上的敏感数据,那么最短路径只需要两步:
● 先获得在DMZ的Web服务器的权限;
● 再获取处于企业内网的数据库服务器的权限,从而获得数据。
与攻击路径配合的是各种攻击手段,例如利用应用层漏洞进行的注入和越权类攻击、利用应用系统底层框架未及时修复进行的漏洞攻击、利用系统存在的弱口令进行口令爆破攻击等。
由于有明显的互联网暴露面,而且路径最短,所以这种正面攻击往往是很多攻击者首先尝试的。
这个例子的攻击路径涉及资产包括两台主机,以及在主机上运行的各种软件。
2.3.2 系统后台运维角度
如图3所示,这是国内使用较多的典型后台运维场景。应用系统管理员通过VPN远程接入生产环境,再通过堡垒机自动登录到应用系统的生产环境服务器。除此之外,还有一个Zabbix服务器来集中监控生产环境中的其他服务器。
图3 典型后台运维场景
从攻击者角度,除了正面攻击以外,还有另外一个路径,就是从运维人员、运维工具、运维通道入手。
● 首先,利用社工攻击(例如邮件、聊天、电话等),引诱管理员点击链接或者打开藏有木马程序的文件,其主要目的是在管理员电脑上驻留木马程序,并通过它来远程控制管理员电脑。
● 然后,攻击者可以利用管理员电脑上的软件以及缓存中的账号信息登录到VPN、堡垒机、Zabbix、应用系统以及后台其他资源,从而获得权限、盗取数据或者破坏系统。不仅如此,攻击者还可以从管理员电脑的文件夹中获得更多有关应用系统的有价值文档和数据。
在这个攻击路径中,从技术角度上讲,VPN和堡垒机是两个非常重要的环节,正是由于它们自身的问题以及不正确的使用方式才造成了这个攻击路径的存在。类似这种集中集权的系统还有很多,例如监控类软件Zabbix和SolarWinds、配置管理类软件Puppet、自动化软件Ansible等,这些软件平台都具有高权限、高集中、高风险的特点,一旦失陷,它们所管辖的所有资源也都会失陷。从管理和安全意识角度上讲,管理人员则是另外一个非常重要的环节。
虽然不是最短的攻击路径,但同样也是非常有效的。攻击者只要成功突破管理员这个环节,后面的环节就都不是问题了。这种攻击路径在历次实网攻防演练中,是绝大多数攻击队都会使用的。
2.3.3 系统基础设施角度
本节会从云化基础设施和网络基础设施两个方面来梳理攻击路径。
(1)云化基础设施
随着虚拟化技术、容器技术的日趋成熟,企业在部署实施应用系统的时候,也更多地采用了公有云、行业云、私有云以及云原生的技术架构。如图4所示,图中是一个简单的云化基础设施的环境。
图4 云化基础设施
攻击者可以通过用户门户、云管平台甚至虚拟化环境中的各种漏洞,获得公有云、行业云的权限,一旦获得其权限,云租户的所有IaaS资源、PaaS资源都会被控制,云平台以及云租户的应用系统也就完全失陷了。
另外,攻击者还可以通过获得AK/SK来控制云租户的云服务。公有云的AK(Access Key)和SK(Secret Access Key)主要提供对租户身份的鉴权以及信息传输的加密功能。之前也有一些攻击者盗用云租户的AK/SK从而窃取隐私数据甚至控制租户环境的案例。
(2)网络基础设施
在过去长达二十多年的信息化发展过程中,无论计算环境是硬件还是虚拟化,基础网络环境的建设一直以硬件设备为主,尤其是路由器和交换机。在企业建设完四通八达的网络环境之后,构建它的所有设备也自然而然地形成了一个潜在的、极易被忽视的攻击路径。如图5所示,攻击者可以通过接入路由器、核心路由器以及汇聚交换机等设备,一路到达最终的目标服务器。
图5 网络基础设施
上述的这个攻击路径理论上存在,但在正常情况下,它又是不存在的。如果配置正确,企业网络边界侧的路由器在互联网上是“不可见”的,它的入口处是不存在。但出于多种原因,仍然有不少路由器的配置是有问题的,包括开放一些不应该开放的服务和端口等,这也给企业带来了不少潜在的安全风险和隐患。
我们通过在Shodan(访问链接为https://www.shodan.io/)上检索路由器设备,可以看到仍然有大量的路由器开放了不同的服务端口,比较多的可见服务包括SNMP、NTP、HTTP、DNS等。
2.3.4 软件供应链角度
软件供应链攻击最典型的,同时也是影响最大的案例,当属2020年底的SolarWinds事件。软件供应链攻击的本质是攻击路径的转变,即从直接攻击最终目标改为攻击目标的上游软件供应商,从而达到攻击最终目标的目的。这和古代两军作战时的“截粮道、烧粮仓”有着异曲同工之处。
从攻击者视角看,一次软件供应链攻击的完整攻击路径可以分为两个阶段。
● 第一阶段是针对上游软件供应商的攻击路径以及与之配套的攻击手段;
● 第二阶段是针对最终目标的攻击路径。
从整体来看,攻击者的攻击路径变长了,变复杂了,但如果第一阶段成功的话,那么第二阶段的攻击就会变得容易,而且影响范围要广很多。
2.4 梳理防护组件和策略
在我们梳理完互联网暴露面、软硬件资产、安全配置基线、网络拓扑图以及有可能的攻击路径后,最后就要根据应用系统的实际情况进行布防了。
我们在真正布防的时候,可以按照以下三个思路进行。第一,根据攻击路径布防;第二,根据攻击阶段布防;第三,根据系统架构布防。
这里所说的布防,既涉及阻断防护类,也包括检测告警类的能力、产品、平台。下面会分别介绍这些内容。
2.4.1.按攻击路径布防
在我们考虑布防的时候,首先可以参考的思路是根据我们前期梳理的攻击路径布防,这种布防方式最为直接,效果也较好。
布防的能力和产品既包括串接的网关防护类,也包括旁路的探针检测类,目的是能在第一时间检测并发现攻击行为,并且在第一时间进行阻断和清理。
(1)系统业务逻辑角度
从攻击者角度,攻击路径由外至内,攻击者以Web服务器或者其他互联网暴露面为突破口,利用目标系统应用层漏洞,获得DMZ的服务器权限;进入DMZ后,攻击者横向移动,再次利用系统层漏洞或者暴力破解,进而获得企业内网的其他服务器权限。
从防守者角度,防御这种正面阵地战,在入口处布防是必须的,例如应对三、四层攻击的下一代防火墙NGFW,应对七层攻击的WAF等,如图6所示,这些基本是标配。
图6 系统业务逻辑角度的布防
基于白环境的理念,无论在DMZ,还是在企业内网,都可以在网络环境中以及操作系统上进行检测和阻断。
(2)系统后台运维角度
从攻击者角度,攻击路径由外至内,攻击者以运维人员为突破口,通过利用VPN和堡垒机的一些产品漏洞和管理漏洞,直接获得企业内网的服务器权限。
从防守者角度,这里不建议采用传统的“VPN+堡垒机”的架构,而是需要升级到接入零信任架构,并且调整后台服务器采用多因素认证方式完成用户身份认证工作,如图7所示。
图7 系统后台运维角度布防
基于白环境的理念,可以在管理员接入企业内网的各个环节进行检测和阻断。
(3)系统基础设施角度
从攻击者角度,攻击路径由下层基础设施到上层租户和应用,攻击者以基础设施云平台为突破口,通过利用云管平台的漏洞,直接获得底层云平台的权限,从而控制企业应用系统的底层虚拟环境。
从防守者角度,针对这种攻击路径,由于大部分的攻击行为都发生在云平台侧,在云租户的监控范围之外,所以防守是有很大难度的,更多需要依赖公有云厂商自身的安全防护能力。如果攻击者的目的是要彻底瘫痪企业应用系统的话,可以通过停止、删除租户虚拟机等相对暴力的方式实现。
如果不是以瘫痪为目的,基于白环境的理念,公有云厂商仍然可以在租户虚拟机的操作系统层面,针对异常操作进行监控,例如账号登录、账号操作、网络连接等。
(4)软件供应链角度
从攻击者角度,攻击路径从供应链的上游到下游,攻击者以软件供应链厂商为突破口,通过对供应链厂商的攻击,在软件供应链厂商开发应用的代码层面植入木马程序,再通过正常软件升级渠道,把木马程序直接安装到企业内部服务器上,从而控制企业的内网服务器。
从防守者角度,在这种攻击路径中,大部分攻击行为都发生在供应链厂商侧,发生在目标企业侧的不多,企业侧的攻击路径几乎为零,所以防护起来的难度仍然很大。虽然有难度,但基于白环境理念,我们仍然能从以下几个方面进行检测和防护:
● 关于网络方面,我们可以通过监测发生在生产环境中的异常网络连接,来检测并发现攻击行为。
● 关于身份方面,我们可以对软件运行的账号进行权限控制(DAC、MAC)、操作审计来发现异常行为。
2.4.2 按攻击阶段布防
这里所讲的攻击阶段可以参考网络攻击链(CyberKillChain)为模型,也可以参考由MITRE定义的ATT&CK模型。
网络攻击链是由美国洛克希德·马丁公司在2011年提出的,也被称为网络杀伤链模型,其描述了一次完整攻击过程中需要经历的7个阶段:外围侦察、武器制造、投递载荷、漏洞利用、安装植入、命令控制、行动破坏。虽然距离最早提出已经相隔十多年,但到现在为止,该模型仍然不过时。
ATT&CK是Adversarial Tactics Techniques and Common Knowledge的缩写,可以理解为“对抗战略、战术和常识”。ATT&CK模型有将近6年的历史,最新的ATT&CK模型覆盖了3大技术领域,即传统企业、移动通信以及工业控制(IndustryControlSystem,ICS)。每个技术领域包括多个战略,每个战略又包括了多个战术以及战术的实施细节。碍于篇幅,这里就不再介绍了,详细内容推荐您阅读周凯、张建荣、谢攀老师的新书《构建可信白环境:方法与实践》。
在深入了解模型后,企业可以基于模型中定义的战略、战术内容,结合自身应用系统的实际情况进行布防。
2.4.3 按系统架构布防
在介绍完按攻击路径布防和按攻击阶段布防后,还有第三个布防的思路,就是按系统架构布防。
一个应用系统从开始规划设计之初,首先要决定的就是应用系统的技术架构,从下至上包括物理层、网络层、主机层、数据层、中间件层、应用层等。在架构的不同层,会涉及不同的组件和产品,这些都需要有针对性的防护措施。
有关这六个层面的布防建议,碍于篇幅,这里就不再介绍了,详细内容推荐您阅读周凯、张建荣、谢攀老师的新书《构建可信白环境:方法与实践》。
2.4.4 综合安全分析与SIEM
介绍完如何从不同维度进行布防后,下面我们将从综合安全分析角度如何构建白环境,并且针对支撑综合分析的技术平台SIEM(Security Information and Event Management,安全信息与事件管理)做相对详细的介绍。
SIEM最早由Gartner在2005年提出,是企业综合采集、分析和研判安全事件的最终平台,也是支撑安全运营中心(SOC)常态化安全运营的主要平台之一。
随着时间的推移和技术的发展,SIEM的内涵也在发生着变化。现在,Gartner对它的定义是:“SIEM汇聚来自部署在应用、网络、端点、云环境中的所有监控、评估、检测以及响应方案中产生的事件数据。SIEM的能力主要包括两部分,第一,通过事件关联和UEBA来实现威胁检测的能力;第二,通过SOAR集成来实现响应处置的能力。除此之外,SIEM还包括安全报告以及持续更新的威胁情报等。”
03 总结
如果您对网络安全与“白环境”想要有更深入的了解,推荐您阅读周凯、张建荣、谢攀老师的新书《构建可信白环境:方法与实践》。
本书摘编于《构建可信白环境:方法与实践》(书号:9787111764083),经出版方授权发布,转载请保留文章来源。
《构建可信白环境:方法与实践》是一本从技术、架构和实战3个维度全面讲解可信白环境的网络安全攻防类著作。本书作者有超过30年的网络管理、系统管理以及实网攻防经验,本书是他们近年来在联通从事网络安全攻防工作的经验总结。本书理念清晰、方法系统,可操作性极强。基于可信白环境,作者成功完成了多年靶心系统的防护工作,希望通过这本书把这些经验分享给更多的朋友。本书的主要目的是帮助读者和企业以较少的投入,搭建更为有效的防护体系,达到预期的效果。
抽奖规则:
公众号后台回复:“安全架构福利”
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...