抖音技术能力大揭密!钜惠大礼、深度体验,尽在火山引擎增长沙龙,就等你来! 立即报名>> 了解详情
写点什么

Service Mesh 对企业安全而言意味着什么?

2020 年 4 月 12 日

Service Mesh对企业安全而言意味着什么?

你听说过 Service Mesh(服务网格)吗?


我相信你听说过。Service Mesh 正成为容器生态圈愈发重要的一部分。


本文将简要概述 Service Mesh 的作用,并深入探讨它们对于企业安全性的意义。


Service Meshes 是什么?它为何如此重要?

连接问题

要想理解 Service Mesh 的存在原因,首先考虑一下容器环境中的网络连接。


想象一下当你运行一个云原生应用时会发生什么。但凡它具有一定的规模和复杂性,它通常都需要由大量单独的服务组成,这些服务间为了能够像一个单体桌面应用程序组件一样高效地运行,需要相互进行协调。


再加上在任何指定时间运行的每个服务的实例数量,以及这些实例的状态及可用性的变化,不难看出,简单的将一个服务连接到另一个服务的行为,在这样的情形下会变成多么恐怖的组合问题。


编排是基础

多亏了有 Kubernetes 等编排工具,云原生应用程序不会出现混乱或者从内部 logjams 出现冻结,它们将服务和实例组织成方便管理和寻址的单元,这样就可以通过系统化的方式找到并访问这些单元。


这些编排工具就好像一个房屋开发商,他们铺设街道,在新的社区建造房屋——它们建立了框架和交通线路,然而大多数情况下,处理社区的交通细节并不是它们的工作。


管理流量

这就是需要 Service Mesh 的地方。当一个服务需要向另一个服务发送请求时,Service Mesh 提供了一个标准化的接口,允许请求发送,并且管理这一个过程。


Service Mesh(如 lstio 和 Linknerd)通常充当微服务之间的请求和其他流量的代理,负责服务发现和执行各种相关任务,包括入口、出口、负载均衡和故障处理。当它接收到服务请求时,它会找到一个服务的可用实例,这个实例需满足一组可配置的规则以及在请求服务和目标服务之间的路由流量。


接手复杂的工作

这意味着你可以将服务发现和与其关联的大多数任务从应用程序设计和代码(以及架构脚本)中移出来,并交给 Service Mesh 处理它们。请求服务只需要使用目标服务的抽象标识符来提出请求;而 Service Mesh 将负责剩下的部分。


当然,Service Mesh 能够处理的不止这些,还包括了跟踪、度量、加密、认证以及其他与性能和安全相关的任务。lstio 和 linkerd 可以一同使用,把两者包中最强大的特性集成在一起,进行微服务相关的流量管理优化。


Service Mesh 与企业安全

上文所说的这一切,对于企业安全意味着什么呢?


Istio 和 Linkerd 等平台的安全性和整体流量管理功能是否能够提供足够的保护?或者恰恰相反,他们是否会暴露出新的攻击面,给入侵者提供了后门攻击的机会?


事实是,任何控制基础设施的新元素都有可能包含这两者。在 Service Mesh 的情景下,如入口/出口管理、代理和加密等特性将与安全相关的元素添加到系统中。与此同时,这些平台会管理流量和访问,并且受到应用程序和其他基础设施元素的信任,这使得它们成为了攻击目标。


Service Mesh 的整体作用是在应用程序的边界(即入口规则)处提供一些强化,并为该周边内的流量创建有效的通道。就企业安全而言,这意味着你需要关注至少两条(或许更多)的潜在攻击路线。


当入侵者突破边界

如果入侵者突破 Service Mesh 的基本边界防御,并且甚至侵占了一个服务的某一个实例,将会发生什么?如果该服务向 Service Mesh 发送请求,或它响应 Service Mesh 的请求,那么恶意负载可能会被注入系统中,从而利用 Service Mesh 的高效流量管理将负载传递到尽可能多的潜在目标。如果 Service Mesh 将服务表现出来的样子认定为“信任”,而应用程序又错误地判定 Service Mesh 在服务之间传递的是非恶意数据,那么任何的恶意参与者都可以利用这种信任,将自己伪装成有效服务。


当然,实际上像 Istio 和 Linkerd 这样的平台确实包含了维护安全流量的功能,比如 TLC 认证;Istio 的 Role-Based Access Control(基于角色的访问控制,RBAC)提供了灵活、可定制的多级访问控制。但是,如果入侵者突破了这些防御,仍然可以在系统内移动并且造成破坏。


攻击 Service Mesh 基础设施

Service Mesh 平台,就像当下其他任何基于云基础架构的元素一样,是由代码构成的,并且和其他类型的代码一样容易受到攻击。对入侵者来说,最具诱惑力的攻击面可能是控制发现和路由的规则——如果请求可以重新路由到外部位置,那么整个系统都可能会受到危害。


当然也会有其他的攻击点。入口、出口、代理以及负载均衡等功能都可能会出现先前未监测到的切入点。简而言之就是,基础设施的元素越多地控制应用程序和整个系统,那么它就越容易成为攻击的目标,也就越应该关注它。


抵御攻击

那么有没有最佳策略来处理与 Service Mesh 有关的安全性问题?有的。


Service Mesh 本身提供的防御功能可以和像白名单这样强大的边界防御工作结合起来使用,进一步加强应用程序的入侵防御能力。其中,内部异常检测提供了更强大的防御。程序中任何不寻常的行为都会触发自动响应。网络安全监控可以检测并抵消掉服务网格基础设施本身受到的攻击。


在基于云的领域中,容器化应用程序、Service Mesh 都是企业计算中不可或缺的工具。与功能齐全的企业级安全服务结合使用,入侵者就没有必要,也不会损害到组织的数据安全。


2020 年 4 月 12 日 20:40200

评论

发布
暂无评论
发现更多内容

这些面试题你会吗?连续四年百度Android岗必问面试题!深度好文

欢喜学安卓

android 程序员 面试 移动开发

Java lambda表达式人类使用指南

ES_her0

28天写作

Kafka.05 - 生产者与消费者介绍

insight

kafak 2月春节不断更

我在极客时间录课的故事(四):学习产生惰性是一种正常现象

小程序实战专栏作者李艺

我在极客时间录课的故事

工业互联网助力数字中国建设(新论)

浪潮云

工业互联网

从磁盘读取成本分析两种 100% 遍历思路:按格子遍历 & 按线遍历

宫水三叶的刷题日记

LeetCode 数据结构与算法 面试数据结构与算法

西北大学研发猴脸识别技术,金丝猴可刷脸打卡;IJCAI 2020丨基于学习实例隐空间的文本风格转换

京东科技开发者

人脸识别 IT 量子通讯

Mybatis【19】-- Mybatis自关联多对多查询

秦怀杂货店

go get下载包失败问题

happlyfox

golang 28天写作 2月春节不断更

前端面试常考题:JS垃圾回收机制

华为云开发者社区

JavaScript Vue 前端 js 垃圾回收

线程池面试必考

叫练

面试 线程池 线程池工作原理

关于GaussDB(DWS)的正则表达式知多少?人人都能看得懂的详解来了!

华为云开发者社区

正则表达式 GaussDB

产品经理训练营第四周总结

产品经理训练营

(28DW-S8-Day3) 比特币、 区块链是什么?

mtfelix

比特币 区块链 28天写作

透彻解析!在字节跳动我是如何当面试官的,讲的明明白白!

欢喜学安卓

android 程序员 面试 移动开发

基于matlab的控制系统与仿真2-传递函数模型

AXYZdong

matlab 2月春节不断更

压力太大的话,就放点气儿吧

道伟

28天写作

“云原生”的应用价值及关键属性解读

浪潮云

Mybatis【20】-- Mybatis延迟加载怎么处理?

秦怀杂货店

数据库 缓存 mybatis 加载

诊所数字化:最大的数据资产-患者数字档案内容

boshi

电子病历 数字化医疗 七日更 28天写作

什么容易被记住——造梦师指南

Justin

心理学 28天写作 游戏设计

上天的源码要不要——GitHub 热点速览 v.21.08

HelloGitHub

Python go GitHub 开源项目

如何解决深度推荐系统中的Embedding冷启动问题?

王喆

机器学习 深度学习 推荐系统 计算广告 Embedding

【进阶】面试官问我Chrome浏览器的渲染原理(6000字长文)

魔王哪吒

学习 程序员 chorme 28天写作 2月春节不断更

解决dyld: Library not loaded icu4c

一个大红包

brew icu4c

CL的配置中心知识整理

白鹿猫余

微服务 技术选型 配置中心 微服务治理 配置管理

Selenium 常用方法与属性、鼠标悬停与 Select 操作

梦想橡皮擦

Python 28天写作 2月春节不断更

Fast AI人工智能审图平台-建筑图纸设计效率的倍增器

滴普科技2048实验室

AI AI审图

话题讨论 | 技术人员的职业发展困惑,你也有么?

架构精进之路

职业规划 话题讨论 28天写作 技术人员

读书笔记-MySQL

crush

MySQL

透彻解析!如何快速的开发一个完整的直播app,薪资翻倍

欢喜学安卓

android 程序员 面试 移动开发

Study Go: From Zero to Hero

Study Go: From Zero to Hero

Service Mesh对企业安全而言意味着什么?-InfoQ