云原生应用风险介绍
创始人
2024-05-31 21:34:52
0

本博客地址:https://security.blog.csdn.net/article/details/129303616

一、传统风险

传统风险主要是注入、敏感数据泄露、跨站脚本、配置错误等等,这些传统的安全风险在云原生应用中也是存在的,这里就不具体展开说了。

二、云原生应用架构的风险

2.1、【机密性】信息泄露风险

1、应用漏洞导致的信息泄露

微服务应用架构中,单体应用被拆分为若干个服务,这些服务会根据业务情况进行相互访问,若某服务存在API漏洞,攻击者可能就会看到应用内部的流量。因此对于数据泄露的风险程度而言,微服务架构比传统单体应用架构带来的风险更大。此外,随着服务数量达到一定规模,API数量将不断递增,从而扩大了攻击面,增大了数据泄露的风险。

2、密钥管理不规范导致的信息泄露

应用的开发过程中,安全意识不高的开发者常疏于对密钥的管理,导致数据泄露的风险。例如开发者将密钥信息、数据库连接密码等敏感信息硬编码在应用程序中,从而增大了应用程序日志泄露、应用程序访问密钥泄露等风险。

3、应用间通信未加密导致的信息泄露

在微服务应用架构中,网络拓扑相对复杂,具有分布式的特点,应用间的通信不仅采用HTTP/HTTPS,还采用gRPC等协议,而gRPC协议默认不加密,将会导致攻击面增多,带来更多的数据泄露风险。

2.2、【完整性】未授权访问风险

1、应用漏洞导致的未授权访问

应用漏洞是造成未授权访问的一大因素。众所周知,未授权访问漏洞非常多,Redis、MongoDB、Jenkins、Docker、ZooKeeper、Hadoop等常见的应用都曾曝光过相关漏洞。在微服务应用架构下,其包含的所有服务均须对各自的访问进行授权,从而明确当前用户的访问控制权限。此外,服务的访问来源除了用户外还包含内部的其他服务,因而在微服务架构下,应用的认证授权机制更为复杂,为云原生应用带来了更多的攻击面。

2、访问权限配置错误导致的未授权访问

在微服务应用架构下,访问权限除了涉及用户对服务的访问权限,还涉及服务对服务这一层面,因而权限映射关系变得更加复杂,相应的权限配置难度也在同步增加。例如一个复杂应用被拆分为100个服务,运维人员需要精密地对每个服务赋予其应有的权限,如果因疏忽为某个服务配置了错误的权限,攻击者就有可能利用此缺陷对服务展开攻击。若该服务中包含漏洞,就可能会导致单一漏洞扩展至整个应用。

2.3、【可用性】遭受拒绝服务攻击的风险

1、应用漏洞导致的拒绝服务

应用漏洞可以导致应用被拒绝服务攻击,以ReDoS漏洞为例。ReDoS为正则表达式拒绝服务,一般表现为应用程序为用户提供了正则表达式的输入类型但又没有对具体的输入进行有效验证,那么攻击者便可通过构造解析效率极低的正则表达式作为输入,在短时间内引发100%的CPU占用率,最终导致资源耗尽甚至应用程序崩溃。

2、访问需求与资源能力不匹配导致的拒绝服务

以CC攻击举例,其攻击原理通常是攻击者通过控制僵尸网络、肉鸡或代理服务器不断地向目标主机发送大量合法请求,从而使正常用户的请求处理变得异常缓慢。

三、云原生应用业务的风险

3.1、未授权访问风险

1、业务参数异常导致的未授权访问

API调用过程中往往会传递相关的参数,根据业务场景的不同参数会有不同的取值范围。若API对相应参数的监测机制不完善,那么攻击者便可通过输入异常参数使业务系统受到损失。例如若商品价格只在商品介绍服务中进行校验,而未在订单管理和支付服务中进行校验,那么攻击者就可以通过直接调用订单管理和支付服务的API将订单价格修改为0元或者负值,使业务系统受到损失。

2、业务逻辑异常导致的未授权访问

该风险一般是攻击者采用某些方法使API调用的逻辑顺序出现异常,包括关键调用步骤缺失、颠倒等。例如,攻击者可以利用漏洞绕过支付步骤,直接提交订单,这样就会出现业务逻辑关键步骤缺失的情况,进而会使业务系统受到损失。例如验证码绕过异常就属于业务逻辑异常的一种。

3.2、业务频率异常风险

业务频率异常主要指针对一个或一组API的频繁调用,举个例子,业务系统往往通过图形验证码的方式来避免机器人刷单的操作。而如果攻击者可以绕过验证码所对应的服务,直接对订单进行操作,就可以实现机器刷单,从而进行薅羊毛了。

四、Serverless风险

4.1、输入源的不确定性

在传统应用程序开发中,开发者根据自身实践经验,在数量有限的可能性中可判定出恶意输入来源,而在Serverless模式下,函数调用由事件源触发,输入来源的不确定性限制了开发者的判定。例如当函数订阅一个事件源后,该函数在该类型的事件发生时被触发,这些事件可能来源于FaaS平台,也可能来源于未知的事件源,可以将来源未知的事件源标注为不受信任。在实际应用场景中,如果开发者没有养成良好的习惯,不对事件源进行分类,则会导致将不受信任的事件错认为是FaaS平台事件,进而将其视为受信任的输入来处理,最终带来风险。

4.2、Serverless应用风险

Serverless应用属于云原生应用,云原生应用又源于传统应用,两者唯一的区别是Serverless应用代码编写需要参照云厂商提供的特有代码模板,而传统应用通常没有这个限制。因此,传统应用面临的风险Serverless应用也一样要面临。

4.3、Serverless平台风险

Serverless平台主要指FaaS平台。目前主流的FaaS平台分为两种类型:一种是面向公有云提供商的FaaS平台,常见的有AWS Lambda、Microsoft Azure Functions、Google Cloud Functions等;另一种则是面向私有云的FaaS平台,此类以开源项目居多,且均支持在Kubernetes上进行部署,常见的有Apache OpenWhisk、Kubeless、OpenFaaS、Fission等。

类似在IaaS平台上运行虚拟机、在PaaS平台上运行操作系统和应用,FaaS平台上运行的是一个个Serverless函数。FaaS平台自身负责云环境的安全管理,主要包括数据、存储、网络、计算、操作系统等。同IaaS平台、PaaS平台一样,FaaS平台也面临未授权访问和数据泄露的风险,同时,Serverless还面临FaaS平台账户的风险。

1、未授权访问风险

在FaaS平台中,随着部署函数的增多,函数对资源的访问及可以触发函数执行的事件也在逐渐增多,进而函数间的权限映射关系将会变得复杂,并且函数通常在短时间内执行完成,因此,FaaS平台中的访问权限配置更容易出错,攻击者往往以超特权函数为目标,通过不安全的权限配置以获取对资源的未授权访问。 此外,对于公有云FaaS平台,如AWS Lambda,由于其函数运行时环境存在缺陷,因此当函数代码含有漏洞(如命令注入漏洞)时,攻击者可以利用函数运行时缺陷并结合已知函数漏洞对平台账户的资源进行未授权访问。

2、数据泄露风险

攻击者对函数发起未授权访问,造成的后果往往是数据泄露,同样的,访问权限错误配置也会引起数据泄露的风险。此外,FaaS平台自身的漏洞也会导致数据泄露的风险。

3、FaaS平台账户风险

众所周知,开发者需要承担FaaS平台运行其函数的费用。通常来说,开发者需要注册FaaS平台账户,并将账户与银行卡进行关联,最后按照函数执行的次数向云厂商付费,如果FaaS平台未对账户单位时间内的支付频次进行一定限制,那么在函数含有已知漏洞的前提下,攻击者就可以利用以上缺陷对FaaS平台账户展开攻击。这类攻击统一称为拒绝钱包服务攻击(DoW),为拒绝服务攻击的变种,目的为耗尽账户账单金额。

4.4、Serverless被滥用风险

Serverless被滥用指攻击者通过恶意构建Serverless函数并利用其充当整个攻击中的一环,这种方式可在一定程度上规避安全设备的检测。举个场景,攻击者通过在受害者的主机上投放木马,来实现对受害者主机的控制,其中攻击者为实现攻击资产的隐蔽性,采用了公有云Serverless函数作为请求中转。

这个攻击流程分为四个步骤:

1)受害者主机中的木马程序被执行,该木马会向攻击者主机发起请求以建立连接。
2)攻击者通过构造Serverless函数作为受害者主机和攻击者主机间的中转机,该Serverless函数负责将木马中的上线包发送至攻击者主机。
3)攻击者主机收到来自Serverless函数的请求,与受害者主机成功建立连接,并在响应中附带控制受害者主机的命令。
4)公有云Serverless函数收到攻击者主机的响应,并将执行命令发送至受害者主机的木马程序中,从而实现对受害者主机的远程操作。

通过利用Serverless函数作为请求中转,受害者只能看到与公有云Serverless函数的通信,而无法轻易看到与攻击者主机的通信,且公有云函数的访问域名通常为可信域名,这样一方面可以使受害者放松警惕,另一方面可以隐藏攻击者主机的IP,实现攻击资产的隐秘。此外,依托云厂商服务器的稳定性,也可以在一定程度上避免由网络问题导致的受害者机器下线。

相关内容

热门资讯

李光洁32天走7500公里吃8... 李光洁32天走7500公里吃8城,《拿一座城市下酒》这部纪录片怎么样?我觉得这部纪录片非常好,观看的...
每我世如你果只没界喜就欢的生一... 每我世如你果只没界喜就欢的生一爱有你过在想会。把这22个字组成一句话。我想过,如果在每一生只喜欢你,...
调查校园里的植物和动物说说有哪... 调查校园里的植物和动物说说有哪些动植物?可以分成几类?兰花,梅花可人丌··植物:乔木(杨树、柳树、银...
血脂高的原因? 血脂高的原因?血脂高的原因高血脂的诱因包括原发性和继发性两种:原发性高血脂症的病因:1、遗传因素。2...
为什么孩子总是重复看同一集动画... 为什么孩子总是重复看同一集动画片?是在传递这3个信号 小孩子爱看动画片是非常普遍的,动画片带给他们动...
终极三国里 49集刘备为什么这... 终极三国里 49集刘备为什么这么做?有没有官方回答?下集自己看吧 现在不会有官方回答的哟第一:可能真...
西式糕点制作大全的内容简介 西式糕点制作大全的内容简介《西式糕点制作大全》主要介绍了制作甜点的基本知识,例如各种制作工具,制作点...
逻辑思维又是什么?就是推理吗,... 逻辑思维又是什么?就是推理吗,怎么培养!?逻辑思维是一种严格分析思维。不一定是推理。推理是逻辑思维的...
囊萤夜读有一句俗语就是出自这个... 囊萤夜读有一句俗语就是出自这个故事你知道是什么吗?囊萤映雪 ( náng yíng yìng xuě...
什么是不伦恋情? 什么是不伦恋情?什么是不伦恋情.,?男跟女年龄相差很大?还是?男的比女的小?还是老夫少妻?是近亲谈恋...
有书名带晨星的嘛? 有书名带晨星的嘛?有书名带晨星的嘛?晨星传这本书。漫画书晨星物语
如果有些事情说不出口怎么办? 如果有些事情说不出口怎么办?烦恼皆是因为自己过分的执着 即使你在这样子下去 更不就不会有好的结果 为...
有哪些类似于《非自然死亡》题材... 有哪些类似于《非自然死亡》题材的日剧推荐?非自然死亡的题材电影确实不多,电视剧的话也不好找啊。不喜欢...
素书全集的内容简介 素书全集的内容简介 本书采用了《素书》的权威原著,参照《四库全书》并加上了宋代宰相张商英的注和清代王...
【世纪花园】小区对口的学校有重... 【世纪花园】小区对口的学校有重点小学和初中吗?世纪花园东区里有未来强者幼儿园,小区南边有个华兴小区,...
东南大学现有的专业中有哪些是属... 东南大学现有的专业中有哪些是属于老东南的1928年学校改名为国立中央大学,设理、工、医、农、文、法、...
一个男人一有钱就请朋友吃饭,没... 一个男人一有钱就请朋友吃饭,没钱就又说,买东西还赊账,商店里的老板都找上门来了?像陵念前这种男人的话...
坟上栽什么草好? 坟上栽什么草好?坟地种什么草好耐旱坟上栽野蕨草、扎根不深、浅根植物、可以固土、南方雨水多、不会造成坟...
关于国富潜力基金 关于国富潜力基金我9月24日上午买的国富基金,申购价格是9月24日开盘的价格吗?还是9月28日开盘的...
我是一个高中生。想学武术。在学... 我是一个高中生。想学武术。在学校没什么时间。是练散打还是跆拳道好。我是一个高中生。想学武术。在学校没...