0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

剖析无服务器 (Serverless) 架构基础安全指南

电子工程师 来源:贤集网 作者:通讯基站 2021-03-24 11:41 次阅读

无服务器(Serverless)架构使组织无需内部服务器即可大规模构建和部署软件。像函数即服务(FaaS)模型这样的微服务盛行,推动了无服务器架构的普及。无服务器架构能够节省巨大的成本,并为大规模可伸缩性提供灵活性。

本文将概述确保无服务器架构的安全性应考虑的关键领域。虽然最适合的无服务器生态系统的解决方案是独一无二的,但以下内容将为建立无服务器架构安全方法提供坚实的基础。

流动的攻击面

简而言之,软件环境的攻击面包括未经授权用户可以输入或提取数据的所有点。了解和监控这些点是有效实现无服务器安全的关键。

无服务器系统由数十个、数百个甚至数千个组件组成。每一个新的工具、服务或平台集成到无服务器系统中,都为恶意和未经授权的用户提供了新的切入点。每次扩展和修整无服务器架构时,攻击面都会发生变化。

此外,由于无服务器架构的入口点众多且拓扑复杂,无服务器攻击面是多层次、多维度的。无服务器架构的攻击面具有很高的复杂性和波动性,因此人工映射和监控这些攻击面几乎不可能。

自动映射和监控无服务器架构

对于无服务器系统的自动化监控和发现,使你可以领先威胁一步,找到系统的安全薄弱点。你只能保护你能看到的东西。除非监控工具可以随着系统的扩展而增加其可见性范围,否则系统的大部分可见性将很快消失。

在无服务器架构中,很有可能会采用自动连续部署。这意味着攻击面上的新弱点也在不断地自动生成。如果监控和发现能力无法跟上,无服务器架构中新的部分将很容易受到攻击。

幸运的是,有可用的平台可以实时映射和监控无服务器架构。许多平台功能扩展了安全性,能指出未经授权的用户可以恶意操纵数据的位置。其中的某些平台在设计时特别考虑了无服务器安全性。

数据注入:最常见的无服务器安全风险

对于无服务器架构,数据注入是最常见安全风险。自第一个无服务器系统上线以来,注入漏洞已成为无服务器安全讨论的普遍特征。

无服务器架构的每个组件和函数都需要来自大量来源的输入。这些输入可能是云存储事件、来自API网关的命令、消息队列事件、数据库更改、来自IoT遥测的信号、甚至是电子邮件。这个输入列表实际上是无限的,仅受限于架构的规模和内容。

可以说,规模越大,函数输入数据的来源就越丰富。

这些确实是已看到的问题。每一种不同类型的来源均带有独特的消息格式和编码方案。其中的任何一种都可能包含不受信任或受攻击者控制的输入。预测和消除这些恶意注入是一个艰巨的挑战。

投资函数监控和日志记录,实现强大的无服务器安全性

在这种情况下,“投资”不一定指金融投资。时间和精力更为重要,尽管已发现投入时间和精力不足,会带来额外的代价。不要拖延时间和精力的投入。重大安全漏洞造成的代价影响,远远超过保护自己免受此类侵害的相对较低的投入。

许多云供应商提供了基本形式的日志记录功能或函数,常见示例包括AWS CloudWatch或Azure函数。尽管这些函数为无服务器环境启用了非常基本的日志记录,但是代价可能很高,并且一旦无服务器架构扩展到一定规模或一定程度的复杂性时,它们就可能无法满足你的要求。

开箱即用的解决方案并不总是适合需求。尽管它们具有基本函数,但它们可能缺乏在应用程序层进行全面安全事件审计的能力。无服务器架构的规模和形态的设计越独特,这种解决方案的不适合性便越正确。有许多专家构建的平台和工具可用来弥补这些监控和日志记录的不足。

如何实施日志记录

正如本文所说,函数监控和日志记录需要(但值得)投入一些时间和精力。在无服务器环境中使用函数日志记录要克服的主要障碍是,监控和日志记录存在于组织数据中心范围之外。

通过协调工程师,无服务器开发人员和DevOps团队来创建无服务器架构独有的日志记录逻辑,该逻辑可以从各种云函数和服务中收集日志,并将其推送到远程SIEM(安全信息和事件管理)系统上。

在无服务器环境中一些已知的特别重要的日志报告类型包括身份验证和授权、严重错误和故障、更改、恶意软件活动、网络活动和资源访问。

无论使用哪种无服务器架构模型,其中的许多日志报告都是关键报告。但是,在复杂且不断变化的无服务器环境中,监控和可见性可能很棘手。创建可在单个存储库中隔离,提取和整理这些日志报告的逻辑,对于实时监控整个架构至关重要。

通过日志逻辑收集的日志需要存储在某个地方。这是中间云存储服务发挥作用的地方。通过使用单个外部系统来整理整个无服务器生态系统中的日志记录信息,对安全事件进行实时监控。

在无服务器架构的拓扑中跨所有无服务器函数跟踪和遏制攻击者和恶意/未经授权的输入,而无需考虑层。

函数权限过高和身份验证失败

如果没有对函数和用户进行尽职调查和适当的审查,则无服务器架构中可能存在致命的弱点组合。

首先是健壮的身份验证。无服务器通常意味着面向微服务的架构设计。微服务架构可以包含数百个单独的函数。除了充当其他进程的代理外,许多无服务器函数还会使用公共Web API暴露在外。这就是为什么应用健壮的身份验证方案至关重要的原因。

随着无服务器系统的发展,身份验证方案失败或效率低下,可能会为未经授权的用户创建无限数量的访问点。这本身是危险的,但是如果函数权限过高,则可能会造成灾难性的后果。

在具有数十甚至数百个组件的无服务器环境中,管理函数权限和角色感觉就像一场艰苦的战斗。工程师犯下的最常见的安全错误之一是试图偷工减料并应用“包罗万象”的权限模型。尽管这样可以节省时间,但它使无服务器环境中的所有内容都极易受到攻击。

如果由于未遵守尽职调查而同时存在以上两个缺陷,则无服务器系统很容易被恶意外部用户访问。身份验证失败会打开大门,函数权限过高会将无服务器系统交给进入到系统的恶意外部用户。在设计,构建和部署过程中通过透彻周到的考虑,可以避免这两种情况。

进一步的无服务器安全注意事项

当然,还有其他考虑。例如,切记要停用过时的函数和云资源。这不仅有助于节约成本,而且旧的和未使用的组件会增加不必要的架构攻击面的维度。定期自动整理无服务器环境,并删除未使用的角色,身份和依赖项。

避免重用执行环境也很重要。对于云供应商而言,在两次调用之间保留执行环境可能很诱人。它使平台在处理新的调用时效率更高。但是,当执行环境被保留下来时,有价值的敏感数据可能会被保留下来。确保别以牺牲安全性为代价来实现效率。

无服务器环境是独特的,因此实现无服务器安全性的方法也应是独特的。

这始终是最重要的考虑因素。无论是部署配置,权限模型还是日志记录工具,开箱即用的解决方案都只能提供通用的保护。独特的无服务器环境需要一种独特的无服务器安全方法。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 函数
    +关注

    关注

    3

    文章

    4327

    浏览量

    62569
  • FAA
    FAA
    +关注

    关注

    0

    文章

    18

    浏览量

    6848
  • serverless
    +关注

    关注

    0

    文章

    65

    浏览量

    4506
  • 无服务器
    +关注

    关注

    0

    文章

    16

    浏览量

    4066
收藏 人收藏

    评论

    相关推荐

    NTP服务器故障排除技巧 NTP服务器与网络安全

    网络时间协议(NTP)服务器对于确保网络中的设备时间同步至关重要。无论是在企业网络还是数据中心,时间同步都是网络安全和数据一致性的基础。然而,NTP服务器可能会遇到各种问题,从配置错误到网络
    的头像 发表于 12-18 15:13 247次阅读

    负载均衡服务器服务器如何连接?

    负载均衡服务器服务器如何连接?负载均衡服务器服务器可通过多种方式连接,包括直接连接、交换机连接、路由连接以及云计算环境中的连接。小型网
    的头像 发表于 12-09 13:41 85次阅读

    SSR与传统服务器的对比分析

    随着云计算技术的快速发展,Serverless架构服务器架构)逐渐成为业界关注的焦点。其中,SSR(
    的头像 发表于 11-18 11:22 286次阅读

    GPU服务器AI网络架构设计

    众所周知,在大型模型训练中,通常采用每台服务器配备多个GPU的集群架构。在上一篇文章《高性能GPU服务器AI网络架构(上篇)》中,我们对GPU网络中的核心术语与概念进行了详尽介绍。本文
    的头像 发表于 11-05 16:20 308次阅读
    GPU<b class='flag-5'>服务器</b>AI网络<b class='flag-5'>架构</b>设计

    基于高通主板的ARM架构服务器

    一、ARM架构服务器的崛起 (一)市场需求推动 消费市场寒冬,全球消费电子需求下行,服务器成半导体核心动力之一。Arm 加速布局服务器领域,如 9 月推出 Neoverse V2。长久
    的头像 发表于 09-11 10:53 500次阅读

    服务器而言,ARM架构与X86架构有什么区别?各自的优势在哪里?

    一、服务器架构概述 在数字化时代,服务器架构至关重要。服务器是网络核心节点,存储、处理和提供数据与服务
    的头像 发表于 09-09 14:05 1718次阅读

    gpu服务器与cpu服务器的区别对比,终于知道怎么选了!

    gpu服务器与cpu服务器的区别主要体现在架构设计、性能特点、能耗效率、应用场景、市场定位等方面,在以上几个方面均存在显著差异。CPU服务器更适合数据库管理和企业应用,而GPU
    的头像 发表于 08-01 11:41 483次阅读

    ai服务器是什么架构类型

    AI服务器,即人工智能服务器,是专门为人工智能应用设计的高性能计算服务器。AI服务器架构类型有很多种,以下是一些常见的
    的头像 发表于 07-02 09:51 1048次阅读

    接口测试怎么测多个服务器连接

    行接口测试,包括测试策略、测试方法和测试工具。 1. 理解多服务器架构 在开始接口测试之前,首先要了解多服务器架构的基本概念。多服务器
    的头像 发表于 05-30 15:16 412次阅读

    华为云函数工作流:引领未来服务器计算时代

    在当今数字化飞速发展的时代,企业和个人对于计算资源的需求越来越高,但传统的服务器架构带来的管理成本和资源浪费问题也愈发凸显。为解决这一难题,华为云引领着服务器计算的浪潮,推出了函数工
    的头像 发表于 05-27 10:50 354次阅读
    华为云函数工作流:引领未来<b class='flag-5'>无</b><b class='flag-5'>服务器</b>计算时代

    服务器监控完整指南

    运行混合云环境时。下面,恒讯科技小编我给大家介绍下云服务器监控完整指南。 一、什么是云服务器监控? 我们应该根据既定的自定义指标持续监控您的系统,以确保其应用程序性能。 大多数云提供商都会收集监控数据,并通过A
    的头像 发表于 03-20 17:19 406次阅读

    服务器远程不上服务器怎么办?服务器无法远程的原因是什么?

    安全软件问题 被安全软件屏蔽了 解决办法:检查云锁和安全狗类安全软件有没有把电脑本地IP加入服务器白名单中,如果没有的话就把电脑本地IP加
    发表于 02-27 16:21

    linux服务器和windows服务器

    和适用性。 首先,Linux服务器是一种基于开源的操作系统,其内核是由许多个人和组织共同开发和维护的。它具有高度的稳定性和安全 性。由于Linux操作系统的开放性,用户可以根据自己的需求和喜好进行自定义配置
    发表于 02-22 15:46

    鸿蒙原生应用元服务实战-Serverless华为账户认证登录需尽快适配

    一、ArkTS\\\\API9,服务器端基于serverless开发的应用与元服务华为账号注册登录功能暂时是不支持的 二、3月1日后的审核要求 3月1日的时间是快到了。 三、会导致的结果
    发表于 02-20 10:14

    独立服务器和云服务器的区别

    独立服务器和云服务器的区别是很多用户在选择服务器时要做的课程,那么独立服务器和云服务器的区别有哪些呢?
    的头像 发表于 01-17 10:58 848次阅读