当前位置:>首页 > 传媒频道 > 正文
传媒频道

腾讯云助力技术用户释放 Serverless 价值

2023-06-02 17:53:00  来源:
  5月27日,Techo Day 腾讯技术开放日活动聚焦 “Serverless架构的资源平衡管理 ”,通过行业专家对 Serverless趋势解读,多位腾讯云专家分享Serverless架构原理以及实战经验,帮助开发运维人员解惑Serverless使用过程中的诸多难题和挑战,释放Serverless价值。
  其中,来自腾讯安全云鼎实验室安全专家张恒,分享了主题为《架构原理:Serverless架构资源的安全攻防演绎》的内容,从Serverless的资源模型、Serverless安全风险共担模型、Serverless安全风险和防护手段等方面进行了详细讲解。
  Serverless作为全新的云原生技术趋势固然具备弹性高效等天然优势,但有别于原来虚拟机时代的安全环境也带来了新的挑战。据会中发布的新一期腾讯云工具指南 用户调研显示,开发者认为Serverless架构最大的挑战是“运维可靠性”及“网络安全性”——这也是腾讯安全希望为企业数字化实现的“数字安全免疫力”。
  近年来,随着云计算的快速发展,越来越多的企业开始将应用迁移到云端,而Serverless架构作为云计算中的一种新型架构,因其弹性、可扩展和成本省心等优点得到了越来越多企业的青睐。
  Serverless架构是基于事件驱动的应用程序设计模式,应用程序不再运行在单独的虚拟机或容器上,而是被分解为更小、更简单且独立的函数,可以免去传统服务器架构中的服务器管理和部署等繁琐工作,为开发者提供更高效、更灵活的开发方式,并简化了应用程序部署和管理的复杂度。但是,Serverless架构让开发者享受便捷的同时,安全风险挑战依然存在。
  张恒指出,Serverless后端基础设施和服务主要是由云厂商负责的,但是Serverless应用本身是面向企业和开发者的,Serverless应用允许开发者上传自己的代码到服务端,同时允许开发者对应用配置进行修改,若开发者上传的代码中包含漏洞或应用配置错误,将导致应用面临风险,因此Serverless安全问题相对复杂。
  由于Serverless应用程序不再依赖于特定的服务器或运行环境,并且可以由多个第三方服务组成,因此对其安全性进行有效保护变得尤为重要。为了解决这一问题,业界提出了共担模型(Shared Responsibility Model),即云服务提供商和用户之间共同承担安全责任。
  对于云厂商来说,需要保障云基础环境安全,包括所有底层基础设施和后端服务软件的安全性,同时,云厂商还担负着Serverless平台应用整体安全防护责任;对于用户而言,需要保证上传到服务器端的代码是安全的,并且应用策略配置也是安全的,避免代码中存在漏洞或者策略配置不当导致安全风险。
  消除Serverless风险
  腾讯提出Serverless安全风险项和防护措施
  Serverless一般的攻击流程为,攻击者通过应用程序漏洞或者组件漏洞实现初始访问权限,当获取到服务器权限后,攻击者会尝试查找并窃取用户凭据或服务凭据,然后利用可用凭证进一步横向攻击其他云服务。
  其中,采取安全漏洞缓解措施可以有效地解决应用程序漏洞等问题,不过仍需要云厂商和用户共同来保障。云厂商要保证Serverless应用与其他云服务组件的接口调用安全,对于重要的功能需要在功能模块之间放置防火墙做好隔离;其次,由于Serverless通常接入应用组件和数据较多,因此需要使用HTTPS/TLS来保障数据在传输过程中的安全性,同时使用KMS(Key Management Service,密钥管理系统)来保障服务运行时的密钥使用安全,避免将密钥等敏感数据硬编码或写入环境变量中。开发者在编写代码时,则需要遵循安全开发原则以及注意Serverless应用配置安全问题,避免出现安全漏洞等风险。
  此外,用户需要为Serverless功能执行设置适当的超时时间和磁盘使用限制,通过API调用设置请求限制,从而缓解Dos攻击风险;并且从Serverless应用本身进行限制,通过有效监控和阻断来提高Serverless服务滥用的门槛,完善异常事件发现和监测机制;再者,用户还需要增强对于依赖库的筛选意识,注意用户角色和身份的访问权限的配置等,从而提高安全防护。
  对于云厂商而言,则需要定期清理服务器环境,删除未使用的角色,身份和依赖项等,避免重用执行环境导致的安全风险。此外,云厂商还需要建立完善监控机制,例如使用函数级别的日志分析工具来提高监控能力,及时发现攻击行为。
  打造完善的Serverless安全防护体系
  全面保障云上资产安全
  据介绍,目前,腾讯云Serverless应用服务已经具备完善的安全防护体系,确保用户在使用Serverless架构时得到充分的安全保障。首先,在网络层面上,腾讯云通过DDoS防护、IP黑白名单等手段保证网络安全;其次,在存储层面上,腾讯云通过数据加密、访问控制等措施保证数据安全;此外,腾讯云还为用户提供Web应用防火墙、漏洞扫描等多种安全检测工具,帮助用户及时发现并修复应用程序中存在的漏洞和风险。
  除此之外,腾讯云还推出了一系列Serverless特定的安全防护措施。例如,在函数计算方面,腾讯云通过基于容器隔离和虚拟化技术实现函数级别资源隔离,并为函数提供自动弹性伸缩功能,以确保服务的高可用性和高效性。在API网关方面,腾讯云提供了多层次的安全验证机制,包括访问密钥验证、IP白名单等措施,以保护Web服务免受恶意攻击。
  以腾讯云云函数(SCF)为例,在密钥安全管理方面,腾讯云使用了凭据管理系统(Secrets Manager,SSM)为用户提供凭据的创建、检索、更新、删除等全生命周期的管理服务,凭据通过腾讯云密钥管理系统(Key Management Service,KMS)进行加密存储,基于第三方认证的硬件安全模块(HSM)来生成和保护加密密钥。检索凭据时,通过 TLS 安全传输到服务器本地。同时,云函数也完善了配套的监控和告警机制,提供如调用次数、内存使用、并发使用、超时、代码错误等多维度的监控和告警能力,帮助运维人员轻松实现应用后期维护。
  例如,某互联网客户创建定时任务查询数据及报表生成时,配置文件中出现敏感信息明文保存,容易产生泄漏风险,企业如何安全地管理凭据?张恒介绍道,一般像账号密码、敏感IP端口、数据库连接信息等可以统称为凭据,传统的使用方式是把信息配置在配置文件或者配置中心。然而,大部分敏感凭据没有进行加密保护,一旦配置文件丢失,就会造成敏感信息泄露。这种情况下,可以采用SSM(SecretsManager,凭据管理系统)对敏感数据进行统一管理,用户可以将代码中的硬编码凭证(包括密码)替换为对凭据管理系统API的调用,以便用编程的方式动态查询凭据,由于该凭据中不包含敏感信息,可以保证敏感数据不被泄露。
  此外,为了帮助技术人员更全面地了解云安全攻防内容,腾讯安全云鼎实验室针对云上安全所面临的威胁以及攻击技术进行整理,从实战角度出发,围绕云原生务场景,通过全方面分析攻击者战术与手段,绘制出云安全攻防矩阵,帮助技术人员了解云服务攻击手法。
  本期TechoDay围绕“Serverless架构的资源平衡管理”也发布了新一期《腾讯云工具指南》,包括CNCF对Serverless的趋势及挑战研判,腾讯云产品容器、数据库、存储及上述腾讯安全产品在实战中的经验分享。
  在今天的安全态势下,企业会面临越来越多的挑战,安全建设需要以新的理念来牵引。据悉,6月13日腾讯安全也会联合IDC发布一个面向企业的数字安全免疫力模型,结合20多年安全实战经验和丰富的企业安全服务经验,和产业各界共商安全建设之道。