云计算存在的安全隐患

目录

一、概述

二、ENISA云安全漏洞分析

三、云计算相关系统漏洞

3.1 概述

3.2 漏洞分析

3.2.1 Hypervisor漏洞

3.2.1.1 CVE-2018-16882

3.2.1.2 CVE-2017-17563

3.2.1.3 CVE-2010-1225

3.2.2 虚拟机漏洞

3.2.2.1 CVE-2019-14835

3.2.2.2 CVE-2019-5514

3.2.2.3 CVE-2013-5973

3.2.2.4 CVE-2003-1134

3.2.3 OpenStack漏洞

3.2.3.1 CVE-2020-9543

3.2.3.2 CVE-2019-10141

3.2.3.3 CVE-2018-14620

3.2.3.4 CVE-2017-16613

3.2.4 容器漏洞

3.2.4.1 容器镜像风险

3.2.4.2 容器镜像仓库风险

3.2.4.3 容器编排工具风险

3.2.4.4 容器实例风险

3.2.4.5 容器主机操作系统风险

四、云安全相关配置错误

4.1 云安全常见配置错误

4.1.1 存储访问

4.1.2 密码、密钥等的管理

4.1.3 禁用日志记录和监视

4.1.4 对主机、容器和虚拟机的访问权限过大

4.1.5 缺乏验证

4.2 微软Azure TOP 20漏洞清单


一、概述

信息系统中的服务器、路由器、交换机、数据库、计算机终端以及各类软件系统,由于设计缺陷或管理操作失误,面临着极大的安全隐患和风险。云计算在操作过程中如果配置不当,也会给云计算服务带来极大的安全隐患。

二、ENISA云安全漏洞分析

ENISA(欧盟网络与信息安全机构)评估框架被视为NIST在欧洲的对应框架,它负责制订云计算的信息安全收益、风险与建议。ENISA确定了组织应该考虑的云安全相关的30多种风险漏洞类型,具体分布如下。

  • V1:授权认证和计费漏洞。
  • V5:虚拟化漏洞。
  • V6:使用者间资源隔离缺乏产生的漏洞。
  • V10:不能在加密状态下处理数据。
  • V13:缺乏技术标准与标准解决方案。
  • V14:缺乏代码托管协议。
  • V16:缺乏控制漏洞评估过程。
  • V17:可能在云内部发生的扫描。
  • V18:使用者可能会对相邻资源越权访问。
  • V21:合约没有写清楚责任归属。
  • V22:跨云应用隐含相依关系。
  • V23:服务水平协议可能会在不同利害关系人间产生互斥。
  • V25:对用户不提供审核或认证。
  • V26:认证计划不适合云端架构。
  • V29:数据被存储在多个行政区域且缺乏透明。
  • V30:缺少数据储存所在行政区的相关信息。
  • v31:使用者条款缺乏完整性与透明度。
  • V34:云服务提供商组织里的角色与责任定义不明。
  • V35:云服务提供商组织里的角色职责实行不确定。
  • V36:相关当事人知道太多非必要的细节。
  • V37:不适当的物理安全处理。
  • V38:错误配置。
  • V39:系统或操作系统漏洞。
  • V41:缺少或很差的持续运营与灾难恢复计划。
  • V44:资产拥有权不确定。
  • V46:可供选择的云服务提供商有限。
  • V47:缺乏供应商冗余性。
  • V48:应用程序漏洞或失策的补丁管理。

三、云计算相关系统漏洞

3.1 概述

漏洞是指系统硬件、应用程序、网络协议或系统安全策略配置方面存在的缺陷。漏洞可能导致攻击者在未授权的情况下访问系统资源或破坏系统运行,对系统的安全造成威胁。信息系统中的操作系统、应用软件、数据库、路由器、交换机、防火墙及网络中的其他硬件设备都不可避免地存在漏洞。

云平台上的漏洞形式主要有操作系统漏洞、数据库漏洞、虚拟化平台漏洞、云管理平面漏洞和不安全的API等形式。下面重点从云计算所特有的虚拟化平台漏洞、云管理平面漏洞、虚拟机漏洞和容器漏洞等方面进行介绍。

3.2 漏洞分析

3.2.1 Hypervisor漏洞

Hypervisor是一种运行在物理服务器和操作系统之间的中间层软件,可以允许多个操作系统和应用共享一套基础物理硬件。Hypervisor又称为虚拟机监视器,可以将其看作虚拟环境中的“元”操作系统,它可以协调访问服务器上的所有物理设备和虚拟机。历史上曾经出现过的Hypervisor高危漏洞有下述几个。

3.2.1.1 CVE-2018-16882

Linux Kernel KVM Hypervisor内存错误引用漏洞。

Linux Kernel是美国Linux基金会发布的操作系统Linux所使用的内核。KVM Hypervisor是其中一个基于内核的虚拟机。Linux Kernel中的KVM Hypervisor存在内存错误引用漏洞,攻击者可利用该漏洞造成拒绝服务(主机内核崩溃)或获取权限。

3.2.1.2 CVE-2017-17563

Xen Hypervisor内存破坏漏洞。

Xen是英国剑桥大学开发的一款开源的虚拟机监视器产品。该产品能够使不同和不兼容的操作系统运行在同一台计算机上,并支持在运行时进行迁移,保证正常运行并且避免宕机。Xen 4.9.X及之前版本中的Hypervisor存在内存破坏漏洞。攻击者利用该漏洞造成拒绝服务(主机操作系统崩溃)攻击效果。

3.2.1.3 CVE-2010-1225

Microsoft Virtual PC Hypervisor Virtual Machine Monitor安全绕过漏洞。

Windows Virtual PC是Microsoft虚拟化技术,Microsoft Virtual PC Hypervisor Virtual Machine Monitor存在安全绕过漏洞,攻击者可以利用这个漏洞绕过内存保护机制,获取敏感信息。

3.2.2 虚拟机漏洞

虚拟机逃逸指的是突破虚拟机的限制,实现与宿主机操作系统交互的一个过程,攻击者可以通过虚拟机逃逸感染宿主机或者在宿主机上运行恶意软件。

虚拟机技术的主要特点之一是隔离,如果虚拟机A越权去控制虚拟机B,则存在安全漏洞。当前CPU可以通过强制执行管理程序来实现内存保护,通过安全的内存控制规则来禁止正在使用的内存看到另外一台虚拟机。历史上曾经出现过的虚拟机相关高危漏洞主要有下述几个。

3.2.2.1 CVE-2019-14835

QEMU-KVM虚拟机到宿主机内核逃逸漏洞。

Red Hat Enterprise Linux(RHEL)是美国红帽(Red Hat)公司的一套面向企业用户的Linux操作系统。QEMU-KVM虚拟机到宿主机内核存在逃逸漏洞。攻击者通过使用该漏洞可能导致虚拟机逃逸,获得在宿主机内核中任意执行代码的权限。

3.2.2.2 CVE-2019-5514

VMware Fusion虚拟机端远程代码执行漏洞。

VMware Fusion是VMware公司出品的一款适用于Mac操作系统的虚拟机软件。VMware Fusion虚拟机端存在远程代码执行漏洞,攻击者可通过VMware Fusion在本地启动的WebSocket API接口来在所有已安装VMware Tools的虚拟机上利用该漏洞执行任意代码。

3.2.2.3 CVE-2013-5973

VMware ESX和ESXi虚拟机文件描述符本地拒绝服务漏洞。

VMware ESXi是一款免费虚拟机解决方案。VMware ESX和ESXi处理某些虚拟机文件描述符时存在安全漏洞,允许拥有“Add Existing Disk”权限的非特权vCenter Server User获得对ESXi或ESX上任意文件的读写访问。在ESX上,非特权本地用户可对任意文件进行读写访问,修改某些文件允许宿主机重启后执行任意代码。

3.2.2.4 CVE-2003-1134

Sun Microsystems Java虚拟机安全管理器拒绝服务攻击漏洞。

Java 2安全管理器(Security Manager)是针对系统完整性和安全性进行检查的工具。Java 2安全管理器的实现存在问题,远程攻击者可以构建特殊的类并运行,会由于NULL指针异常而导致JAVA虚拟机崩溃,因此可利用这个漏洞对Sun Java虚拟机进行拒绝服务攻击。

3.2.3 OpenStack漏洞

OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。它是由NASA(美国国家航空航天局)和Rackspace合作研发并发起,以Apache许可证(Apache软件基金会发布的一个自由软件许可证)授权的开源代码项目。

OpenStack为私有云和公有云提供可扩展的弹性云计算服务,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。近几年历史上曾经出现过的OpenStack相关高危漏洞主要有下述几个。

3.2.3.1 CVE-2020-9543

OpenStack Manila越权漏洞。

OpenStack Manila 7.4.1之前版本、8.0.0版本至8.1.1版本和9.0.0版本至9.1.1版本中存在该安全漏洞。攻击者可利用该漏洞查看、更新、删除或共享不属于它们的资源。

3.2.3.2 CVE-2019-10141

openstack-ironic-inspector SQL注入漏洞。

Openstack-ironic-inspector是一款硬件检测守护程序。该程序主要用于检测由OpenStack Ironic管理的节点的硬件属性。Openstack-ironic-inspector中的'node_cache.find_node()'函数存在SQL注入漏洞,其源于基于数据库的应用,缺少对外部输入SQL语句的验证,攻击者可利用该漏洞执行非法SQL命令。

3.2.3.3 CVE-2018-14620

Red Hat Openstack不安全检索漏洞。

Red Hat OpenStack是美国红帽(Red Hat)公司的一套开源IaaS解决方案。该方案支持私有云、公有云和混合云的创建和管理。Openstack-rabbitmq-container和Openstack-containers都是其中的容器组件。Red Hat Openstack 12版本、13版本和14版本中的Openstack-rabbitmq-container和Openstack-containers存在安全漏洞,该漏洞源于OpenStack RabbitMQ容器镜像在生成阶段通过HTTP不安全地检索rabbitmq_clusterer组件。攻击者可利用该漏洞向镜像生成器提交恶意代码并将其安装在容器镜像中。

3.2.3.4 CVE-2017-16613

OpenStack Swauth身份验证绕过漏洞。

OpenStack是NASA和美国Rackspace公司合作研发的一个云平台管理项目。OpenStack Swauth是其中的一个授权系统。OpenStack Swift是一个用于检索大量数据的云存储软件。OpenStack Swauth 1.2.0及之前版本中的middleware.py文件存在安全漏洞。当使用OpenStack Swift及之前版本的软件时,攻击者可通过向请求的X-Auth-Token包头注入令牌来利用该漏洞绕过身份验证。

3.2.4 容器漏洞

容器是一种轻量级的虚拟化技术,它提供一种可移植、可重用且自动化的方式来打包和运行应用。容器化的好处在于运维的时候不需要再关心每个服务所使用的技术栈,每个服务都被无差别地封装在容器里,可以被无差别地管理和维护。现在比较流行的工具是Docker和Kubernetes(K8S)。

容器安全问题主要包括下述几个方面。

3.2.4.1 容器镜像风险

容器镜像可能存在安全漏洞、镜像配置缺陷、恶意软件植入、未信任镜像及明文存储的风险。

3.2.4.2 容器镜像仓库风险

包括与镜像仓库的不安全连接、镜像仓库中的镜像过时和不完备的认证机制。

3.2.4.3 容器编排工具风险

包括管理访问权限不受限制、未经授权的访问、容器间网络流量隔离效果差、混合不同敏感级别的工作负载、编排节点的可信问题。

3.2.4.4 容器实例风险

包括运行时软件中的漏洞、容器的网络访问不受限制、容器运行时配置不安全、流氓容器。

3.2.4.5 容器主机操作系统风险

包括攻击面大、共享内核、主机操作系统组件漏洞、用户访问权限不当、篡改主机操作系统文件等风险。

通常,针对容器云的攻击主要是由外部恶意用户和内部恶意管理员从网络侧发起攻击,攻击对象主要包括容器化微服务网络攻击、容器云组件漏洞攻击、容器镜像仓库攻击、基于硬件管理接口缺陷的攻击和基于API接口缺陷的攻击等。

四、云安全相关配置错误

4.1 云安全常见配置错误

云安全的常见配置错误主要有以下五个突出方面。

4.1.1 存储访问

在存储桶方面,许多云计算用户认为“经过身份验证的用户”仅涵盖那些在其组织或相关应用程序中已通过身份验证的用户。“经过身份验证的用户”应是指需要身份验证的任何用户。由于这种误解以及由此导致的控件设置错误配置,存储对象最终可能完全暴露给公共访问环境。因此要安全设置存储对象的访问权限,以确保只有组织内需要访问权限的人员才能访问它。

4.1.2 密码、密钥等的管理

诸如密码、API密钥、管理凭据和加密密钥之类的信息是至关重要的,至今已经发生过许多上述信息在配置错误的云存储桶、受感染的服务器、开放的GitHub存储库甚至HTML代码中公开可用的安全事件。针对这种风险的解决方案是维护企业在云中使用的所有机密清单并定期检查这些敏感数据的安全防护状态。

4.1.3 禁用日志记录和监视

企业云团队中的安全负责人应该负责定期查看此项配置,并标记与安全相关的事件。存储即服务供应商通常提供类似的信息,这同样需要定期审查。

4.1.4 对主机、容器和虚拟机的访问权限过大

企业没有使用过滤策略或防火墙,而将数据中心中的物理或虚拟服务器直接连接到Internet,例如暴露在公共互联网上的Kubernetes集群的ETCD(端口2379)。针对此问题要保护重要的端口并禁用云中旧的、不安全的协议。

4.1.5 缺乏验证

由于错误配置的发生,人们经常看到组织无法创建和实施错误配置鉴别系统来核查配置。无论是内部资源还是外部审核员,都必须负责定期验证服务和权限是否已正确配置和应用。企业还需要建立严格的流程来定期审核云配置。

4.2 微软Azure TOP 20漏洞清单

微软采取了大量的物理、基础结构和操作控制措施来帮助保护Azure,但也需要额外行动来保护工作负载。启用Azure安全中心可以加强云安全状况。

Azure安全中心是用于进行安全状况管理和威胁防护的工具。在Azure安全中心内,使用Azure Defender保护混合云工作负载。由于安全中心与Azure Defender集成,因此它可以保护在Azure、本地和其他云中运行的工作负载。该服务支持持续评估安全状况,使用Microsoft威胁情报功能防御网络攻击,并通过集成控件来简化安全管理。但是如果在Azure安全中心针对常见账户和一些初始配置没有正确设置安全策略或者缺失某些安全功能,就会产生安全风险和漏洞。

Azure的TOP20漏洞快速清单主要体现在以下方面。

  • 可从Internet访问的存储账户。
  • 允许不安全转移的存储账户。
  • 特权用户缺乏多因素身份验证。
  • 缺少用于加入设备的多因素身份验证。
  • 免费基础版Azure安全中心缺少很多必要的安全功能。
  • 具有基本DDoS保护的Azure虚拟网络。
  • 未加密的操作系统和数据磁盘。
  • 安全中心缺少电子邮件通知。
  • Azure Monitor中缺少日志警报。
  • Azure NSG入站规则配置为ANY。
  • 公共IP配置为Basic SKU。
  • 面向公众的服务使用动态IP。
  • 可匿名读取访问的Blob存储。
  • Azure AD中的访客用户数量过大。
  • Azure AD中不安全的访客用户设置。
  • 对Azure AD管理门户的无限制访问。
  • Azure身份保护功能默认被禁用。
  • Azure Network Watcher默认被禁用。
  • 并非对所有Web应用程序流量都强制执行HTTPS。
  • Azure安全中心的监视策略不足。

好了,本次内容就分享到这,欢迎大家关注《云计算安全》专栏,后续会继续输出相关内容文章。如果有帮助到大家,欢迎大家点赞+关注+收藏,有疑问也欢迎大家评论留言!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/790646.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

备战蓝桥杯,用JAVA刷洛谷算法题单:【算法2-2】常见优化技巧

参考 【算法2-2】常见优化技巧 - 题单 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) P1102 A-B 数对P1638 逛画展P1115 最大子段和P7072 [CSP-J2020] 直播获奖P2671 [NOIP2015 普及组] 求和P4147 玉蟾宫P2866 [USACO06NOV] Bad Hair Day SP1950 长方形P2032 扫描P2216 [HAOI…

ES9学习 -- 对象的剩余参数与扩展运算符 / 正则扩展 / Promise.finally / 异步迭代

文章目录 1. 对象的剩余参数与扩展运算符1.1 对象的剩余参数1.2 扩展运算符 2. 正则扩展3. Promise.finally4. 异步迭代4.1 同步遍历器的问题4.2 异步遍历器使用 1. 对象的剩余参数与扩展运算符 1.1 对象的剩余参数 let obj { name:"kerwin", age:100, location:&…

推理端框架简介 高通SNPE 神经网络处理引擎 阿里巴巴 MNN 腾讯 FeatherCNN 端侧推理引擎 卷积计算优化 卷积计算优化

高性能计算(High performance computing, 缩写HPC) 指通常使用很多处理器(作为单个机器的一部分) 或者某一集群中组织的几台计算机(作为单个计 算资源操作)的计算系统和环境。 有许多类型的HPC 系统,其范围从标准计算机的大型集群,到高度专用的硬件。 大多数基于集群的H…

MVCC详细总结

简介 MVCC(Multi-Version Concurrency Control)是一种多版本并发控制机制,主要用于数据库管理系统中,实现对数据库的并发访问。在编程语言中,MVCC可以实现事务内存。 MVCC的特点是读不加锁,读写不冲突。MVC…

(表征学习论文阅读)FINITE SCALAR QUANTIZATION: VQ-VAE MADE SIMPLE

1. 前言 向量量化(Vector Quantization)或称为矢量量化最早在1984年由Gray提出,主要应用于数据压缩、检索领域,具体的阐述可以参考我写的另一篇关于VQ算法的文章。随着基于神经网络的离散表征学习模型的兴起,VQ技术也…

二维动画制作软件 Animate 2024 for mac激活版

Animate 2024 for Mac是一款功能强大的二维动画制作软件,专为Mac用户打造。它提供了丰富的动画编辑功能,使用户能够轻松创建出生动逼真的动画作品。无论是短片、广告还是游戏等应用领域,Animate 2024都能发挥出出色的表现。 软件下载&#xf…

部署k8s客户端,及docker私仓部署

1.部署一个docker私仓 mkdir /opt/docker/registry #配置仓库密码 mkdir /opt/docker/auth cd /opt/docker/auth htpasswd -Bbn admin admin > htpasswd#运行docker私仓服务,下面端口5000:5000 前面的5000对应本机端口可以自定义 docker run -itd \ -v /opt/d…

【Layui】------ layui实现table表格拖拽行、列位置的示例代码

一、完整的示例代码&#xff1a;&#xff08;请使用layui v2.8.3的版本&#xff09;看懂就能用、不要照搬、照搬会出错误、拷贝重要代码改改符合你自己的需求。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><…

MapReduce [OSDI‘04] 论文阅读笔记

原论文&#xff1a;MapReduce: Simplified Data Processing on Large Clusters (OSDI’04) 1. Map and Reduce Map&#xff1a;处理键值对&#xff0c;生成一组中间键值对Reduce&#xff1a;合并与同一中间键相关的所有中间值process overview&#xff1a;分割输入数据&#x…

DSO9254A安捷伦DSO9254A示波器

181/2461/8938产品概述&#xff1a; 安捷伦DSO9254A的带宽为2.5 GHz&#xff0c;配备15英寸XGA液晶显示屏&#xff0c;采用静音封装&#xff0c;厚度仅为9英寸&#xff08;23厘米&#xff09;&#xff0c;重量仅为26磅&#xff08;11.8千克&#xff09;。DSO9254A集成了一个功…

UE4_自定义反射和折射和法线图

UE4 自定义反射和折射和法线图 2020-05-22 09:36 将ReflectionVector和反射图像进行ViewAlignedReflection,输出的textrue和相机位置CameraPosition的onePlus进行Dot点乘之后乘以一个float系数反射度&#xff0c;输出给固有色&#xff0c;就有反射效果了。球型反射。 折射&…

Coze工作流介绍(一)

Coze工作流介绍 工作流支持通过可视化的方式&#xff0c;对插件、大语言模型、代码块等功能进行组合&#xff0c;从而实现复杂、稳定的业务流程编排&#xff0c;例如旅行规划、报告分析等。 当目标任务场景包含较多的步骤&#xff0c;且对输出结果的准确性、格式有严格要求时…

JAVAEE—Callable接口,ReentrantLock,synchronized的工作过程

文章目录 Callable接口的用法Callable与FutureTask类 加锁的工作过程什么是偏向锁呢&#xff1f;举个例子 轻量级锁重量级锁 ReentrantLockReentrantLock 的用法: Callable接口的用法 Callable 是一个 interface . 相当于把线程封装了一个 “返回值”. 方便程序猿借助多线程的…

Ubuntu20.04使用Neo4j导入CSV数据可视化知识图谱

1.安装JDK&#xff08; Ubuntu20.04 JDK11&#xff09; sudo apt-get install openjdk-11-jdk -y java -version which java ls -l /usr/bin/java ls -l /etc/alternatives/java ls -l /usr/lib/jvm/java-11-openjdk-amd64/bin/java确认安装路径为/usr/lib/jvm/java-11-openjd…

Celery的任务流

Celery的任务流 在之前调用任务的时候只是使用delay()和apply_async()方法。但是有时我们并不想简单的执行单个异步任务&#xff0c;比如说需要将某个异步任务的结果作为另一个异步任务的参数或者需要将多个异步任务并行执行&#xff0c;返回一组返回值&#xff0c;为了实现此…

STL是什么?如何理解STL?

文章目录 1. 什么是STL2. STL的版本3. STL的六大组件4. 如何学习STL5.STL的缺陷 1. 什么是STL STL(standard template libaray-标准模板库)&#xff1a;是C标准库的重要组成部分&#xff0c;不仅是一个可复用的组件库&#xff0c;而且是一个包罗数据结构与算法的软件框架。 2. …

OpenHarmony实战开发-使用一次开发多端部署实现一多设置典型页面

介绍 本示例展示了设置应用的典型页面&#xff0c;其在小窗口和大窗口有不同的显示效果&#xff0c;体现一次开发、多端部署的能力。 1.本示例使用一次开发多端部署中介绍的自适应布局能力和响应式布局能力进行多设备&#xff08;或多窗口尺寸&#xff09;适配&#xff0c;保…

WebGIS 之 vue3+vite+ceisum

1.项目搭建node版本在16以上 1.1创建项目 npm create vite 项目名 1.2选择框架 vuejavaScript 1.3进入项目安装依赖 cd 项目名 npm install 1.4安装cesium依赖 pnpm i cesium vite-plugin-cesium 1.5修改vite.config.js文件 import { defineConfig } from vite import vue fr…

RK3568 RTC驱动实验

RK3568 RTC驱动实验 1. RTC简介 ​ RTC 也就是实时时钟&#xff0c;用于记录当前系统时间&#xff0c;对于 Linux 系统而言时间是非常重要的&#xff0c;使用 Linux 设备的时候也需要查看时间。RTC是Linux的时间系统。 ​ RTC 设备驱动是一个标准的字符设备驱动&#xff0c;…

基于Python的微博旅游情感分析、微博舆论可视化系统

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…