准入, 网络安全准入,这是一个在IT建设和安全领域都不太愿意去提起的一个方面,终端在安全系统中的作用非常重要,EDR解决了安全部门的可视化的问题。但是传统的终端安全问题一直存在并且一直在某些时候是我们企业客户的痛点。
这两年Google的BeyondCorp项目引领了ZeroTrust的潮流。确实很棒,条件允许的企业客户也纷纷尝试。包括很多已经全面B/S结构化的企业,大量使用SaaS应用,拥抱移动化,形成全天候,全球化数字办公能力。
似乎是大家都不再提802.1X的话题了,我不禁回忆起曾经参与过的那几个项目,这里回忆一下,并不想鼓吹什么技术方向,仅想把自己踩过的那些坑回忆一下。
2010年到2014年,我参与设计和实施了几个网络准入项目,当时业界普遍流行使用网关型准入来替代网络交换机准入系统。其中802.1X准入技术最为历史悠久,但是由于用户体验以及兼容性问题,被很多客户所诟病。如果仅仅从协议的角度来看,802.1X的协议稳定性最佳,现在回过头看,802.1X的确是最佳的技术和方案。
传统的802.1X认证只是在客户端配置网络设置进行网络认证,并没有结合桌面终端管理软件进行合规性或者遵从性的检查。这里我们网络设备启用802.1X认证,终端安装客户端来进行配合。由于篇幅有限,暂不介绍网络方案细节,这些内容网上很多,可以自行搜索,我只是把项目中遇到的思考罗列如下:
场景设计:
如果计划设计和使用网络准入系统,客户化的场景理解和推演,是项目能否成功的重要环节。这里应该画箭头图,每一步及下一步。模拟用户的使用习惯和使用方式,同时根据企业网络安全规定来进行植入。
客户争论:
鸡和蛋 , 先有鸡还是先有蛋
在场景设计的时候,我们遇到了前所未有的剧烈争论,不是讨论。
第一步。到底第一步是什么。我们的第一步能不能成功,或者迈向成功。
这里篇幅有限,各位脑补一下吧。或者你自己想想第一步干什么。
客户端:
先来说客户端,在不安装客户端的情况下,Windows可以通过GUI界面配置802.1x的认证方式及一些认证手段,但是缺点是用户体验不好。因此,很多客户需要配合截图或者视频的方式来进行教学。
网关型准入,相对友好的地方在这里,他会在客户打开浏览器的时候,给一个网友重定向,到一个网页,通常也就是一些友好的语言提示,紧接着要求客户安装一个插件,Agentless 网页插件。 但是在安装过程中,会有第三方软件的拦截或者告警。
回到802.1X的客户端,通常网络开启802.1X后,操作系统的提示不一致,有的会告诉终端 当前网络设备要求的认证方式,有的操作系统会莫名其妙。在配置好网络后,进入网络通常也需要下载安装客户端,因此DNS 劫持,或者上网行为代理给一个导向页面才能获得第一次交互。尤其是在企业启用基于证书的认证体系后,证书配置和自动签发流程遇到很多挑战和安全考量。
因此,没有客户端的第一次接入将会是很多客户诟病的体验。从项目经验来看,似乎在这个阶段helpdesk,或者IT热线介入会有较好的用户体验。但是这个工作量似乎是很多企业管理员无法接受的,如果计算一下用户IT热线需求数量,准入系统的入门设定会在一定阶段内超越密码重置,成为第一热点事件。
准入的流程设计:
网络隔离设计,
前面说过客户化的场景理解和推演,是项目能否成功的重要环节。模拟用户的使用习惯和使用方式,同时根据企业网络安全规定来进行植入。首先,客户端的加入会在网络环境中增加一个修补隔离网段。
修补隔离VLAN的安全是很多客户最担心的一点。写ACL进行网络控制或者部署蜜罐系统。另外还有修补服务器,补丁下载服务器,认证需要的服务器等等。
其实在进行网络隔离之前,还需要对企业的安全规划以及规则进行深度调研,比如帐户的角色和权限划分,网段和VLAN的设计。没有一模一样的客户,这里我们略去,拿一个示意图解释。
仅仅按照网络准入的最低配置来进行角色 ,权限的设计。
角色:
访客 隔离 员工 销售
权限:
访客 权限最小,上互联网,无法进入内网,根据监管要求,配置上网行为。
隔离 访问内网及修补环境
员工 访问内网及办公环境 销售 访问 内网及客户数据
VLAN:
访客 VLAN 10 隔离 VLAN 20 员工 VLAN 30 销售 VLAN 40 隔离修补 VLAN50
准入系统流程图如下:
准入系统各模块流程图:
我还是决定这里不画图了,有兴趣的可以面聊。
就在流程里面用流程图来简单解释各个步骤。
项目难点总结如下:
第一关,身份认证。
这个环节检查口令或者凭证。确保访问真正来自于企业员工(有账号的人)。
最常见的是口令认证,用户名密码。在考虑到用户体验的场景下,也有很多企业使用证书或者其他tooken的认证方式。在微软AD域的场景,主机的认证信息可以在域中集成完成。 有部分国内厂商可以提供硬件ID结合身份认证的双因素认证。
认证阶段,更多强调企业用户无感,这也是很多大型企业客户最纠结的地方。目前来看,证书认证可以很轻松实现,同时支持有线和无线的无缝漫游,尽管配置工作量也不小。但是目前大部分企业的移动办公需求非常旺盛。缺点在于无法实现终端上的自动化配置,通常由交换机或者WiFi进行Profile的配置和动态VLAN的下发。
访客系统,大部分企业根据监管的要求,进行短信辅助的实名认证。部分企业反对设计访客系统,或者将不合规的企业终端之间扔到访客VLAN 。我能理解企业的难处,也在这里简单解释,员工为了省事都去访客VLAN里面工作了,或者员工切来切去,因此DLP和病毒防护能力就会下降,这里我保持中立,各有各的道理和困难。
第二关,健康检查
进入网络之后,并不是直接进入工作VLAN,首先进行安全状态检查,也叫合规性,或者健康性检查,进入隔离修复VLAN。此时,终端可以访问修复服务器和部分企业网络资源。
如果已经安装客户端了这里还要区分两个场景:
- 有客户端,但是不健康,需要修复。
- 有客户端,健康检查合格。
考虑用户体验,如果直接看到已保存的检查结果在有效期,立即切换VLAN ,进入工作 VLAN也就是工作环境,此时,进入正常的工作环境。
在这里通常需要考虑最终用户的知情权,我们会告诉客户端,你是否健康,是否可以进入工作环境,通常这里是我们提升客户体验的一个关键环境。
- 简明扼要 ,不要让人家失去信任,最好中英双语,万一呢。
- 写白话,不要写IT语言,看不懂比什么都不写还差劲。
- 留下企业客户的HelpDesk 热线电话,给一个联系方式,并不是坏事。
- 自动关闭,千万别弹窗,不然点起来很累很累,对身体不好。
补丁修复:
我们知道Windows的SP的补丁很重要,基本都是高危补丁。但是如果准入的时候,在隔离修补环境,进行这个量级的补丁进行修复,如果没有终端管理软件而依赖操作系统自带的功能来完成,将是一个特别痛苦的准入场景。
修补时间是我们要衡量准入系统友好性的一个指标。大部分IT管理员认为终端能够接受的修补时间是30分钟,但是实际上我们调研的结论是五到十分钟。
第三关,最佳实践
基线检查:
其实就是base line ,这里似乎跟客户的体验没关系,但是这是企业安全管理水平的一个直接体现。我们必须有一个标准,然后不断努力去提升这个标准。
这里我想强调,切不可盲目为了提升而提升基线,要理解基线水平是一个全员水平,不是一个强制性提升的技术手段。永远处于消灭那个最差的人,追着最后一个人跑,而不是带着队伍盲目前冲。
准入门槛:
准入的门槛,当然不是越高越好,也不是越严越好,项目的成败很多时候就在这里,期望值和实际值,效率和安全,用户体验性和友好度。都在我们的安全准入门槛中体现。而且,这地方不是一个经验就能解决的问题。我在这里罗列几个我们考虑过的问题。
- SP,操作系统的service pack
- 最新的漏洞和补丁
- 操作系统的配置和设置
- 能不能自动修复
- 扫描时间
- 修补时间
拆解回答如下:
- SP补丁通常都比较大,下载和修复都比较耗时,做基线的效果更好。
- 最新的漏洞肯定是最危险的,但是补丁的兼容性和对业务系统的兼容性缺很难考证,毕竟没有经过大量的测试和验证工作,容易导致新问题。
- 配置很多时候都是需要手动操作,比如打开防病毒,打开防火墙。这类操作对于有一定IT基础和经验的员工来说,只要您准入系统的提示足够友好,一般还是可以接受的,如果操作涉及到比较细的地方或者操作步骤稍微繁杂。就会导致投诉增加和用户抗议。
- 能不能自动通过终端准入的客户端进行自动修复是我们要考虑的一个重要标准,另外就是重启,有些时候,系统需要重启才能替换文件或者版本,这样的话,准入客户端不知道当前操作用户是否有未保存的重要文件,另外,自动重启的提示是否友好或者倒计时是否设计合理。都是坑。
- 扫描时间,准入检查的条目越多就需要等待的时间会越长,当然效率和安全是矛盾的,因此设计多少个条目和要求,需要科学考虑,另外,友好的提示还需要等待多久,能不能倒计时呢?另外,有些终端用户一天需要扫描就去忙别的工作了,基本是无人值守,这个时候,如果停下等候客户的操作或者输入可怎么办,那些需要配置和设置的条目,谁来执行。
- 修补时间,补丁的大小,您需要考虑网络带宽,企业能给多大带宽?修补下载服务器的配置和数量,CDN下载需要多长时间,修补的时候cpu使用率,能给多少?当磁盘I/O用满的时候,这个终端用户的体验和等候时间,是否可以接受。
定期体检和定期抽查机制:
不定期的进行健康检查,其实这里要看终端管理软件的能力。当然,只进行终端的补丁修补工作并不能满足企业的安全管理需求。在系统配置和安全设置方面同样有很多的要求和规定。但是由于准入系统的体验友好度,并不能在准入检查的同时要求过多。因此,定期体检或者定期抽查机制有显得非常有必要。
前面提过有很多比较耗时的补丁以及一些需要终端进行操作的检查项目,都可以放到定期体检里面来进行。一般一周或者两周进行一次漏洞扫描和修复是终端客户能够接受的,最好是静默方式。在是否重启或者需要终端用户配合方面,应该尽量做到一月一次。尽量不要在短时间内,频繁出现。
所以,安全基线的建立,不一定非要在准入的开始;其实可以在工作环境中完成。说到这里,我们就要提定期抽查机制,有经验的系统管理员都知道,不应该一次检查全量内容,比如五年前,或者十年前的系统补丁。那么合理的设计抽查机制,就显得很重要,操作和管理也会比较科学。在基于威胁情报的辅助下,根据近期热点事件及攻击热点,选择近期或者本月的检查内容。
健康检查有效期:
顺带在这里提出有效期的问题,在一次准入安全检查之后,那找个检查结果会存在客户端,当终端再次发起802.1X认证时,自动在协议中插入检查结果。这样,准入系统会在看到当前结果后,进行后续操作。很多企业客户都很纠结于这个有效期的时间设置,是一天,还是4个小时,或者3天,5天。目前我们的几个客户能够接受的时长为一周。
不健康的终端:
这里再次提示一下,不健康的终端。虽然描述很简单,但是实际生产环境中,有很多种不健康终端。因此,安全管理员和系统管理员要进行深入的沟通和细致设计。
这里我把,定期体检改名叫遵从性检查,并要求一旦遵从性检查不通过,从工作环境踢出终端进入修补环境,进行自动修复。
- 准入条件不满足,遵从性必然也不满足,进入修复环境。
- 准入条件满足,健康检查通过,(此时不看遵从性检查结果)进入工作环境。
- 准入条件满足,检查有效期到期,踢出工作环境,进入修复环境。
- 准入条件满足,检查有效期未过期,进入工作环境。
- 准入条件满足,遵从性检查不通过,踢出工作环境,进入修复环境。
DHCP和Radius部分:
这里需要解释一下,对802.1X的环境进行了一个细微改造,在认证过程中加入一个Proxy,进行身份认证的代理功能,同时进行检查检查结果的确认。如果全局提供DHCP服务是最好,在工作环境提供静态地址则需要在客户端启用Profile切换功能来支持;DHCP服务建议在修补环境开启,因为不能一个地址打天下。
准入客户端或者健康检查之后,将健康检查结果插入认证字段,Proxy在看到认证报文后,进行检查,同时代理Radius的访问请求;在拿到Radius的返回结果后,综合判读认证是否通过;同时,转发Vlan下发结果。
当然,如果企业客户没有策略或者配置管理系统,可以同时在Proxy上进行配置和设置,完成基于帐户权限的网络VLAN下发和安全配置,到接入交换机。
逃生应急机制:
在IT系统的设计中,针对重大灾难应急和高可用性设计都有很多标准和要求。这里我们简单描述一下,所有使用服务器的双机设置;认证服务器,Proxy服务器在大型企业用户环境,双机可能都不够用,需要设计分布式部署,根据实际情况灵活设计。
这里提示一点,大部分品牌的交换机都支持两个或者三个Radius的认证源,以一个认证无响应后, 会自动切换到第二个Radius。但是实际生产环境中,如果成本可以接受,配置负载均衡设备也是一个可以接受的选择。
但是,我们在项目实施中,发现部分品牌的交换机对Radius的协议支持不是特别稳定,对Radius的扩展字段转发和识别有部分困难。因此,兼容性测试需要在项目中事先完成;我们的经验,在某一个IOS的 版本中会相当比较稳定。因此,交换机升级os和framework升级之前,要充分测试。有些企业客户会制定执行undo dot1x 这个命令来实现大规模应急响应和实现系统逃生,但是部分网管软件的稳定性需要考量,另外就是不同版本和品牌的交换机,执行命令不相同,需要特别注意应急演练。
后记:
文章看到这里,很多朋友都表示,放弃治疗。所以在后记里面,我们留点时间来讲讲治疗的一些方式。
不要放弃主动防御,努力提升企业的纵深防御能力,实现总体可控,而不要纠结于从一开始就完美控制。比如,准入检查没必要从头查到尾,less is more。把基线的提升作为重点。同时,不要奢望于实施准入系统就一定能够带来的那些标准化系统回报,为了1%的提高,企业确需要投入50%的精力和10%的钱,我们要向投入去要效率,而不是纠结于那微弱的提高。
国内大部分企业客户在IT以及安全管理中,缺乏公司管理层的足够支持,话语权的问题。另外,还有很多企业对IT的定位仍然是网吧管理员档次。因此,很多问题追踪溯源还是回到了管理问题上。
这里,我们回避管理的问题,聊聊技术方面有哪些通用或者常见的做法。
- 基于证书的802.1X认证体系,避免用户频繁输入口令密码。
- 回到微软的怀抱,结合域认证体系,改善准入用户体验。
- 使用网络厂商的解决方案,放弃客户端,在内网进入之后,再进行提升。
- 使用关怀政策,加检测手段,给予一定的宽松期,再通过IAM配合权限控制。
- 应用级准入,权限控制交给IAM和PIM系统,同时配合行政管理制度。
- Zero Trust ,有条件,可以试试。
- 局部使用,分区管理。避免全局一盘棋。
最后, 案例通常用来研究,没有一模一样的客户,也没有相同的环境;因此,不同的场景,不同的企业客户,一定是不同的方案和细节,也许这一款不适合你。
还有朋友问我, 到底准入的最佳实践是什么?其实,答案在你心中。
放过自己,没有最好的和最佳的,只有最适合你的那款,共勉之。