当前位置: 首页 > 科技观察

互联网企业安全运维实践

时间:2023-03-12 17:15:19 科技观察

安全领域很多。之所以分享这个话题,是因为在之前的工作过程中,我们发现机密数据泄露、资产被盗、数据被篡改、服务中断、物理逻辑损坏等是大家非常关心的问题。行为通常发生在运维安全环节,需要通过安全运维来保证整个系统运行在一定的安全级别。1.安全建设的思考企业开始考虑安全建设时,需要考虑的因素很多,包括管理层的期望、业务部门的安全诉求、组织环境、公司治理模式等。综合了解这些信息后,你需要评估此时的安全阶段,也可能在开始做安全规划之前做一个同行差距分析。你需要介绍一个企业安全建设的理论。四个阶段。第一阶段通常是救火,优先解决业务痛点,同时做一些基础的“救命”工作,降低安全事件发生的概率,快速发现并修复可能导致安全入侵的安全隐患对内外网,如无线安全、VPN远程访问、弱口令、服务器后门等,这个时候也是最难的。没有重要人物,钱有限,买关键设备来不及,只好根据以往的渗透经验转化为防御手段,按照2/8法则做最有效的工作.还有一个方面就是要迅速组织团队,因为这个时候,你的安全项目计划中已经有很多工作等待完成。第二阶段是制度建设阶段。灭火期过后,可以稍作喘息,有条不紊地进行安全施工。主要侧重于基础安全建设,如安全老三、堡垒机、双因素、VPN等。现阶段还没有互联网,因为团队基本没有开发能力,主要是商用安全设备,外加少量自研安全工具,提高运维效率;现阶段还可以考虑引入ISO27001体系。四级管理标准,推动落地,确保从源头上解决问题,不然你永远在擦地的过程中,因为水桶有洞,水不停滴出去。擦干净一次,过一会又流出来了。第三阶段属于安全级别较高的阶段。商业系统不一定能很好地满足需求,因此需要大量自研工具来解决实际问题。如果有能力,安全大数据、APT也可以考虑。第四阶段进入智能化安全级别。智能检测、阻断、响应代表了公司安全的未来发展方向。architecture一词起源于古罗马,描述建筑物的建造方法及其实用和非实用功能、绘图过程和相关的艺术科学,这个词在IT领域也被广泛使用。以这张图为例,可以更好的帮助理解IT系统的安全架构。因为软件架构会比较抽象,尤其是运行环境。以往我们在做安全系统架构的时候,由于对系统的了解不够全面,往往会拿一张平面的网络拓扑图;在进行架构设计之前,我们需要对系统进行有机的分析,将架构划分为不同的层次和视图。根据业务、功能、受众的不同,需要从不同的角度看问题。回到我们的话题,系统安全架构应该包含哪些内容?我认为至少应该包含三个主要维度。首先是系统的天然技术栈。这是IT技术。是自然发生的。我们最常见的系统分层架构由客户端、浏览器和APP组成,下面是运行代码,可能运行在中间件服务器上,下面是数据库、操作系统、服务器、网络和基础设施。这是最简单的分层方法;第二个维度是业务流程视角。此业务流程视角与安全问题无关。它更侧重于业务功能的实现。比如支付业务有配套的业务流程,网购有网购业务流程,理财业务有理财业务流程。他们根据系统差异实现不同的业务目标;第三个维度的安全视图,如客户端、应用程序、中间件和数据库有不同的保护机制。另一个维度是业务流程。业务的各个模块也需要不同的保护机制。这些保护机制最终贯穿于一个网络结构中。如何选择合适的保护机制来保护它,就需要第三轴了。安全技术构成了一个立体的视角。在安全机制上,其实分为两类:第一类是对系统本身的保护;第二类是业务系统的保护。为了便于理解,我们将这个框架映射到建筑架构上。第一层可能是代表基础设施的基础,第二层是网络,第三层是服务器,第四层是中间件和应用程序,再往上一层是应用程序,客户端,系统栈的概念是更容易理解。横轴对应业务系统视图。比如我可能在101、102、103房间有业务流程,我把它想象成101房间用来登记,102房间用来选择商品,103房间用来加入购物车,104房间。我可能是Pay,105完成退出。接下来我们看第三个轴心,系统本身的保护。盖房子要坚固,柱子要坚固,墙要坚固,这样房子才能在这里稳固。除了自身的安全,还要考虑居住在里面的居民。为他们提供安全保障,走廊、消防、空调的布置是否合理,内部使用者的安全是否能得到有效保障。在这里可以看到系统安全架构的基本维度,对于保护机制的选择有一个逐步的评估分解过程。这里还需要注意每一个IT系统,无论是系统开发还是安全开发,都有生命周期的概念,而生命周期对安全架构的设计有影响。今天我们可以感觉到网络攻击已经在发展。例如,基于国家、政治团体和有组织犯罪组织的攻击越来越多。攻击者更有耐心,可能会从不起眼的用户开始。另一个变化是一些高级攻击规避技术越来越先进。还有一些针对我们个人的攻击和针对人性弱点的社会工程学攻击,这些都是非常难以防范的。他们会攻破我们认为不会被攻破的防御系统,将一些恶意程序注入到你的系统中。.但是我们仍然可以继续遵循基本的计算机安全实践来构建一个安全的系统。事实上,以合规的方式去做是非常重要的。众所周知,在酒驾禁令颁布之前,酒后驾车致人伤亡的事故非常多,但立法之后,鲜有人触及法律的红线。信息安全也是如此。如果你真的符合法规遵从的要求,那么你的安全级别已经达到了一个比较高的维度。第二个身份管理,这个人是谁,他在我的系统中有什么样的权限,他可以访问哪些数据。三是数据保护。数据保护仍然是很多企业最关心和担心的问题,因为全球90%的企业认为他们可能存在数据泄露的风险。从2016年来看,全球范围内发生了900多起非常严重的数据泄露事件,泄露数据超过5亿条,其中包括2016年小米、京东、雅虎的大规模数据泄露事件。另一篇正在记录。记录和监控可以帮助发现未经授权的安全事件,并帮助确定安全措施中有意义的改进,以保护您公司的机密信息。这只是一个例子。我们在构建技术支撑体系时,按照分层的原则,需要在每一层考虑相应的保护机制。除了像BAT这样的先进企业,大部分企业在安全运维层面还是离不开找对人、买对设备。下面说说选购合适设备的一些经验。我给大家讲一个真实的案例,跟老板的喜好有关。之前老板传达的信息就是买设备,不要买太多,公司会把省下来的钱用来投资,这样会产生更多的收入。听起来不错,那么我们采购数据中心边界防火墙的时候,按照每年30%的复合增长率,一套墙满足业务增长三年是没有问题的。5年。结果,2年后,业务以每年100%以上的速度增长。在这个过程中,新老板上任,说容量不够,就把之前的设计挖出来,有道理,那就买个板子扩容吧。没想到仅仅6、7个月后,产能警报再次拉响,业务增长太快。只好去找新老板,说板子延长到最后了;我只能换一套加工能力更强的设备;可以体验一下向老板汇报的心情。第二个案例是关于品牌。在采购过程中,某品牌以低价中标进入。都是国际一线品牌,理论上是没有问题的。但是有点难以接受,各种怪兽问题接踵而至,短时间内出现了7次严重故障,所以使用不到一年就果断更换了。这一次之后,我们对品牌考虑的更仔细了,一直卡在采购上,提高了技术分的比例,保证不符合预期的产品不让进。关于中端产品的容量,如果是互联网公司,我建议把现在的体量放大5到10倍,因为业务的增长往往是倍数增长,很可怕,性能瓶颈不可能总是出现;另一方面,架构需要考虑优化,采用ScalOut的方式进行水平扩展。关于测试,这里指的是实际环境测试。实验室不全面。如果条件允许,时间和人手充足,检测当然无妨。如果时间紧迫,人手不足,可选择性进行试验。例如,当第一次选择使用性能产品时,最好先进行测试。此外,这些应该相互平衡,它们都是相关的。比如容量预估不准确,没有做过实际环境测试,有可能设备买回来一上线就挂了。2.安全运维的艺术这部分主要介绍安全运维需要考虑的一些要点。这里讨论两个重要的概念。Duecare中文通常翻译为适度注意或应用注意,duediligence翻译为适度注意或尽职调查;在信息安全领域,应有的谨慎实际上是指企业应该制定各种策略、程序和标准等,用于保护企业信息资产,即企业应该做什么。而尽职调查是确保尽职调查必须做的事情是最新的。举个例子。当你想出去的时候,你做两个动作:1、想想你的手机是不是电量不够,不够怎么办;2.将移动电源放在口袋里。1是你的思维活动,有没有“思维”属于Duecare,也可以看看手机电量。想了想,你可能觉得电量够了就不带充电宝,也可能觉得不够用就带充电宝。没关系。这个字符串)。2是你的实际行动。如果你觉得电量不够,带了充电宝,但你不检查充电宝是否充电,或者忘记带充电线,那你就没有做到尽职调查。也就是说,虽然采取了相应的行动,但并没有达到预期的效果。至于安全,需要思考如果不采取这种措施,可能会存在什么样的安全风险。为了降低风险,采取了一定的行动,要保证这个行动是有效的,必须落到实处。IT系统会经历发布、升级、割接、改造等各种变化。更改是最有可能导致系统故障的操作。为了减少变更对系统的影响,我们提倡三步思考的工作方法。在做出改变之前,问自己三个问题。首先,我是这份工作的合适人选吗?第二,我有能力完成任务吗?最后,我能控制整个变化吗?当三个问题的答案都是肯定的时候,我再次申请变更。如果对任何问题的回答犹豫不决,我会和我的主管商量,制定最佳方案,包括变更失败的回退方案;通过这一措施,大大降低了变更带来的业务影响。研发的同事通常会关注HTTPxxx返回值、延迟、可扩展性、代码复用、Deadlines、KPI、需求变更、框架、表单源、如何实现功能、代码质量等问题。最重要的是有没有代码错误;运维同事平时关注HTTP4xx和5xx错误,性能,可靠性,阈值预警,监控图断崖,是否异常,最关心的是预防故障;研发和运维的同事对安全有了更深的理解。有差异,但是对安全的一般理解包括DDoS攻击、病毒木马、堡垒机、数据脱敏、拖拽和数据泄露,只了解与自己工作关系较大的部分。安全同事关心的是我1-7层的保护措施会不会被绕过,然后就是各种漏洞,开源框架,编程语言,代码,各种安全漏洞,逻辑上是存在的。网站、传输过程和存储过程中的漏洞、漏洞修复和更高级的利用方法。查找各种高、中、低风险漏洞。此外,无线渗透、弱口令、0day、彩虹表、各种马、注入、后门等我们也一直在关注。我不会在这里一一列出。无论如何,需要了解和预防可以侵入、获取数据和窃取资金的技术。弦崩还是很紧的。其他非技术部门的同事关注安全,就是看热点,看谁出事,旁观者心态。眼光的不同决定了安全工作采取的行动的不同。在安全运维过程中,有时需要做一些高危操作,比如为飞行中的飞机更换故障发动机,由于现场业务是7*24小时服务,不可能或很少能得到关闭操作窗口。前面说了,在变更的时候有一套规避风险的方法,包括参与变更的人员、厂家、我们工程师的配合。但总有遗漏。一旦我们更换了防火墙引擎并失败了。结果防火墙双活,业务中断10分钟左右。后来恢复故障的时候,领导也觉得这种操作真的很危险,就算再小心也是很危险的。因此,设置了中断窗口操作。高危操作放在这个窗口,订单损失不计入ATP监控,不会有人滥用这个窗口。关于漏洞漏洞每年都存在,尤其是今年,比如前段时间发布的Struts2,4月15日国外黑客组织ShadowBrokers泄露了一份机密文件,里面包含多个Windows远程利用工具,可以覆盖70%的Windows世界上的服务器产生巨大的影响。这两起事件的影响非常广泛,需要花很大的力气去修复。补丁管理在企业内的推广还是比较困难的。需要说明的是,补丁一定要打,否则会给入侵者留下方便之门,不作为就是作恶。关于安全意识,我们要有足够的耐心,一遍又一遍的宣讲,从普通员工到技术人员再到管理层,让大家整体的安全意识得到提升,尤其是管理层。演示文稿的技术效果通常不好。这时候你应该选择以案例的方式来谈,管理层才会真正重视安全与商业价值之间的联系。安全成功的关键在于最高管理层以及关注和承诺。更改很容易理解。整个IT环境在不断变化。当前行之有效的安全防护措施,因为推出了一个不安全的系统,都会有突破口。需要不断检查,发现变化带来的新风险。关于坚持安全运维是整个安全的基石。你需要有耐心,脚踏实地做一些事情。我们身边很多大牛刚入行的时候也是从调设备、写代码开始的。通过和一线Work的一些真实接触,后期提升会比较快,而不是看几本有保障的书。3.安全运维自动化为了提高安全运维的效率,我们在运维自动化方面做了很多尝试,比如防御DDoS攻击、分布式漏洞扫描、交换机IP封口、基于VPN的链路灾难恢复解决方案和消防。在运维自动化等方面,在DevOps推进的今天,可以说你想自动化的都可以自动化。DDoS攻击分为两种,一种是害怕被攻击的人,一种是习惯被攻击的人。DDoS攻击仍然是网络安全的头号敌人,超过100G的攻击屡见不鲜。我们是一群被打惯了的人。我们增加实战经验,考虑一些自动化的防御方式,比如自研DDoS攻击仪表盘,实时了解攻击情况,与运营商BGP联动,实现同一个攻击IP。按键抛出黑洞。快速释放被攻击带宽;云防护是必须的,因为现在的攻击量太大,需要云清洗能力。这是我们自研的DDoS攻击仪表盘,分为三个状态,第一个是谁被攻击了,第二个是哪些被攻击的系统在引流,第三个是显示哪些被引流的系统在做流量清洗。一个做流量清洗的系统需要特别关注业务的运行情况,确保业务得到保护。第二个就是说说交换机的IPblocking。由于我们系统架构的特殊性,自动封IP的任务需要交换机设备来完成。先来看看流程,比较简单,分为4个流程。恶意IP可以被IPS或其他系统检测到,并发送到IP拦截系统进行规则匹配。满足封禁条件的IP会自动发送到交换机进行封禁,达到封禁时间后自动解封。我们来看看实现原理。在顶部,API连接到WebPortal和恶意IP识别系统。Web可以实现IP的增删改查和交换机ACL的查询。有IP白名单机制,保证被保护的IP不会被屏蔽。例如分支IP或伙伴IP地址,在ACL下推到交换机时,增加了防呆机制,防止系统屏蔽不需要的IP或大量屏蔽用户IP。我们在之前的一些文章或者专利中已经描述了这些系统的实现方法,感兴趣的朋友可以参考一下。这是一个基于VPN的链路容灾系统设计,自动化有几个部分我们都做了。一是全国有数百个公交车站需要与总部系统进行通信。如果购买商用VPN系统的成本非常高,那我们在某宝上买了一台Netgear路由器,安装Openwrt开源固件提供VPN服务,大约节省了80万元。成本。本设计的专利部分是设计了全冗余结构。冗余度如此之高,即使机房任何一个环节断了,设备坏了,甚至一个IDC彻底挂掉了,我的系统还是可以工作的。能够连续运行。维护和管理数百个VPN隧道非常麻烦。我们开发了VPN管理工具,可以批量生成中心端VPN配置信息,远程VPN盒子也可以通过脚本实现即插即用。维护的复杂性大大降低。上面的界面是监控VPN隧道的存活状态。随着互联网技术的不断发展,在线网站的规模越来越大,防火墙作为网络安全屏障被广泛使用,其数量也相应增加。该拓扑图展示了一些典型的大型互联网公司或企业的防火墙部署图,体现了边界防护、重要业务系统隔离防护、办公与生产隔离等防护需求。据我所知,有很多企业使用几台到几十台防火墙,一些大型集团公司或跨国公司使用数百台防火墙。面对这么多的防火墙,要管理好它们是非常困难的。有厂商表示,可以使用我们的防火墙集中管理系统,帮助降低运维的复杂度。但是当我们告诉他我们有好几个牌子的墙时,他们往往会说对不起,他的系统管不了,只能管他们自己的墙。有商业产品可以对不同品牌的防火墙策略进行集中管理,但价格昂贵,基于license的不灵活,不能满足个性化需求。在这种多品牌、大批量的情况下,防火墙系统运维的难度和挑战会变得非常大。我们自主研发了防火墙运维管理系统。本图为核心功能模块索引及实现功能简介。拓扑计算通过路由计算生成防火墙拓扑,决定策略需要经过哪些防火墙。政策查询有两个功能。一是用户可以自行查询两点之间的防火墙策略;另一种是在申请政策时,后台会自动判断是否有政策支持。如果是,它会返回一条消息,告诉用户已经有一个策略,不需要应用。策略生成模块对策略对象进行抽象,判断在哪个场景下对策略应用进行增删改,生成相应的流程。工单对接是指如何与企业中的变更管理工单管理系统对接。自动化不能超越流程,而是严格按照流程进行。在工单对接环节会重点说明。其他工具,如VPN管理、密码修改、审批关系维护、墙元查询等,都非常有价值,大大提高了运维效率。总结最后,简单说说一些想法。首先,做安全运维需要了解业务。只有了解业务,才能针对不同的业务实施不同的防护等级。如果您对所有人使用相同的保护级别,您的安全成本将非常高。二是要有充分的计划,因为我们不知道接下来会发生什么。我们通常认为防火墙HA部署的可靠性已经很高,但是在极端情况下,两台防火墙同时崩溃的悲剧就需要有应急预案来应对这样的极端情况。三是定期演练。即使有计划,也要定期演练,否则就会出现问题,如果不熟悉计划或计划针对的环境发生变化,计划不再有效但没有及时发现。四是善用乙方资源。在系统专长方面,乙方的工程师可能更强,但是对于业务本身,当然是甲方的工程师更懂,他们必须利用自己相应的优势,为业务提供保障。五是创新思维,就是用创新的思想去解决实际问题,成为一种能力。六是综合安全视角。安全运维不仅仅是运维各种安全设备和软件来保证系统安全,还要兼顾运维的安全性,解决研发和运维同仁带来的各种危险陷阱。涵盖了整个系统安全的方方面面。因此,需要有全面的安全视角,以应对不断产生的安全风险和挑战。