该头部券商与长亭科技联合建设的「信创云原生Web应用防护系统」应用实践案例收录于《证券基金行业信息技术应用创新前沿》期刊,该项目将Web应用防护能力与云原生架构深度融合,成为该领域的标杆示范项目。
《证券基金行业信息技术应用创新前沿》由证券基金行业信息技术应用创新联盟(简称“信创联盟”)主办,主要面向联盟内成员,展示成员单位在技术攻关、应用创新的最新动态。
下面让我们一同回顾下该项目的建设内容。
案例内容展示
案例背景
长期以来,证券行业依赖国外品牌的Web应用防火墙(简称WAF)用于应用层防护,缺少自主可控能力。此外,随着Web业务量的激增,主流的硬件透明代理和基于虚拟化的反向代理等部署模式出现性能以及可用性等瓶颈,对业务造成影响。近几年来,云原生的快速发展给行业带来新的机遇,其具备高可用性和容错性,可扩展性,弹性伸缩等特点,可以有效解决传统模式下的各种痛点。
自2019年以来,证券⾏业推进信创⼯作,该头部券商作为⾏业信创先⾏单位,积极参与信创改造与替换工作,积极探索在国产环境下的建设模式和技术路线,形成可复制、可推⼴、有特⾊的证券⾏业信息技术应⽤创新模式。
在Web安全需求和国产化替换的双重背景下,该企业开始推进基于云底座的云生Web防护解决方案。
需求分析
客户现已建设私有云底座,在过去Web方案选型中,一直采用基于虚拟化的反向代理模式部署国外品牌Web应用防火墙,经过实际风险排查,信创区域国产化K8S云原生环境缺乏web应用层防护,面临较大Web安全防护压力。
此次项目,该企业积极探索信创环境Web应用防护解决方案,应用安全防护、安全能力一体化、统一管理等因素考虑,为未来云原生化架构变迁建设新一代Web应用安全防护系统。
本次项目建设共预设了4个目标,分别为:
01
深度识别复杂的Web应用攻击,具备识别未知的安全威胁和攻击的能力。
02
满足全栈信创要求,并且整套系统可部署在客户信创私有云环境里。
03
兼容该企业混合云各种部署环境,并且支持国产化云原生K8S环境部署。
04
底层架构具备弹性扩容、水平拓展的先天条件,具备自身高可用的同时,满足未来动态扩容需求。
建设方案
方案在架构设计上充分考虑了云计算特点,将流量转发、威胁检测、流量分析、集中管理平台解耦并组件化,支持容器化分布式部署,预留与云管理平台的各类接口,便于在云环境快速部署,满足该企业云化架构中各类云服务场景的需求。
方案以长亭雷池(SafeLine)下一代Web应用防火墙为主要交付产品,产品的核心交付模块由网络处理、检测引擎和管理控制三部分组成,分别负责Http/Https流量解析和解码、攻击检测识别和管理控制界面,来保障后续部署、性能和检测发现率和准确率的要求。
方案落地的整个过程经历了严格的技术可落地把控和细节调试,目的是能够让方案在客户的实际生产环境可用、好用。
No.1
技术选型,保证信创环境下安全防护能力100%移植
评估该企业现有IT环境的指标,在项目推进初期先进行了两种技术的对比选型:
一种是基于DPDK 的kernel-bypass方案,其用户态驱动(PMD)对底层硬件进行适配之后,才能正常工作或达到预期性能。这部分通常依赖上游厂商(如Intel、ARM)和DPDK 社区的支持,而且严重依赖如Hyperscan 这类由Intel把控的规则引擎为基础,无法实现真正的自主可控。
另一种基于内核态的创新方案,不受制于上游厂商(如Intel、ARM)和社区提供支持。信创OS 内核驱动对各类CPU架构和网络设备均提供良好支持,不仅如此,信创硬件供应商自身会提供可靠的内核驱动支持,不容易受到外部的制约。
考虑到安全可靠是国产化大趋势的根本核心,本项目最终选择内核态方案,来保障在信创环境安全防护能力100%移植。
No.2
云部署,将安全能力平稳嵌入K8S
方案采取稳步推进的部署方式。先在国产化容器编排K8S环境独立部署系统核心组件,将封装好的容器镜像上传到镜像仓库。根据实际环境配置好yaml文件后,只需要使用helm进行自动化部署。
Yaml文件配置示例图
待系统基础服务运转正常后,在ingress-controller嵌入编译t1k.so模块,通过upstream方式,将流量引入到Web应用防护系统集群。
Ingress处理流程分解图
嵌入T1K模块示意图
No.3
性能调试,极致降低检测响应速度指标
项目组对系统底层各个容器化模块进行参数微调,来激发系统最大处理性能。通过以下几个方面实现了性能的巨大提升:
优化负载均衡配置,确保请求在不同实例间均匀分配,提高整体系统的吞吐量和响应速度,降低延时。
调整容器存储策略,使用缓存技术存储常用的规则和数据,减少对后端服务的频繁查询,提高响应速度,降低对云资源的访问负担。
引入AI智能语义分析算法,对恶意流量进行更精准的识别,以减轻WAF系统的工作负担,提高性能并减少误报率。
使用云原生的分布式架构,将系统水平扩展,根据需求动态添加实例,提高系统的并发处理能力,保障性能在高负载下的稳定性。
经过性能优化后,99% Web应用请求平均检测耗时控制在1ms以内,90%请求平均检测耗时控制在0.5ms以内。
检测耗时统计图
No.4
基于容器微服务架构,双机制稳定性保障方案
充分利用云原生容器化微服务架构,采用负载均衡和自动扩展机制,实现即时流量调度和资源弹性伸缩,提高系统在面对底层硬件故障或异常流量冲击时的稳定性和可用性。实现数据瞬时同步,秒级RPO。
业务高峰期,当资源使用率接近总资源上限时,日志服务自动降级,检测服务能够使用更多资源,优先保证业务正常访问。
服务自动降级机制
Ingress流量负载、健康检查,流量分发时剔除失活服务。单服务故障不影响整体可用性。Nginx T1K模块主动健康检测。整体不可用时自动Bypass。
Bypass机制
No.5
预设容器层弹性扩展机制,提高系统容错率
系统会持续监测性能负载状态,如果感知业务流量激增,将自动伸缩日志服务、转发服务、检测服务的Pod,通过拉起容器服务纵向扩容,服务性能热升级,增加单服务处理能力,智能化适配业务高峰低谷期流量变化。
自动弹性伸缩机制
另外系统设计之处充分考虑了该企业信创环境,芯片层面全面适配海光X86芯片和鲲鹏ARM芯片,操作系统层面支持麒麟V10操作系统。
建设成果
防护效果代差式提升
基于AI智能语义分析技术,运用无规则智能威胁识别引擎(SkyNet),可摆脱传统规则型检测方法必须已知攻击和漏洞利用方式才能防御的短板,通过内置各类编程语言编译系统,对攻击Payload进行语义分析,识别其真正意图,依靠威胁模型识别其威胁等级,相较于传统的正则防护体系,防护颗粒度大大提升。
已知威胁防护率100%,未知威胁防护率高达70%,实现实战防护效果代差式的提升。有效抵御该企业面对的各种Web攻击威胁,确保Web类关键应用正常稳定运行。
高可用保障业务稳定
采用全分布式容器化微服务架构,将自身系统各个组件进行模块化部署。并使用ingress等云负载均衡组件来分发流量。当某个组件容器发生故障时,负载均衡会自动将流量转移到其他正常运行的容器上,确保业务的连续性和可用性。
业务高峰期,当资源使用接近总资源上限时,部分服务会自动降级,为核心服务提供更多资源,保障业务正常。通过这种弹性高可用的架构,有效地提升了系统的稳定性和可靠性。
动态伸缩秒级启动
得益于底层架构和模块化设计所具备的云原生能力,来实现秒级启动和动态伸缩。使用国产化容器编排平台,来管理和调度系统容器的启动和停止。通过预设的规则和策略,可以灵活地根据实际需求自动调整容器数量,并在极短时间内完成容器的快速拉起和关闭。
这种动态伸缩的能力使该企业能够快速响应业务需求的变化,并有效地利用资源,在流量峰谷状态下,自动伸缩所需资源,提高系统的灵活性和效率。
代码级自主可控
通过基于内核态的技术手段,让系统的正常运转不需要对底层芯片做定向适配,只需要对信创硬件供应商自身提供的可靠内核驱动支持,从而摆脱了Intel、ARM等国外厂商和DPDK等技术社区的技术限制。另外系统所有核心模块源代码均为自主编写,实现了真正意义上代码级的安全可控。
满足监管合规要求
本系统建设为该企业业务系统提供专业性的应用层安全防护,帮助用户满足等保测评、《网络安全法》、公安部82号令等行业法规的要求;能够满足安全可控的要求,保证自身从底层硬件到上层应用的安全自主;支持双协议栈技术,同时支持IPv4与IPv6网络协议,能够满足IPv4向IPv6过渡阶段的网络部署需求。
简化日常运维工作
系统界面交互友好,无需维护庞杂的规则库,即可实现站点防护策略配置;具备良好的站点资产管理视角,该企业可按照自身业务防护需求对于不同业务系统灵活选取防护策略。利用K8s中的用户资源自定义能力,通过gitops工具,将需要被防护的站点一次性下发给K8s的ingress和部署在K8s环境中的WAF,降低人力运维与业务管理成本。
对内,这套Web应用防护系统可以与蜜罐、扫描器、集中管理平台等产品联动。对外,依托OpenAPI,可以与运营平台对接,0成本融入该企业安全运营体系。