云计算安全分析

目录

一、概述

二、《云计算服务安全指南》的云安全风险分析

2.1 客户对数据和业务系统的控制能力减弱

2.2 客户与云服务商之间的责任难以界定

2.3 可能产生司法管辖权问题

2.4 数据所有权保障面临风险

2.5 数据保护更加困难

2.6 数据残留

2.7 容易产生对云服务商的过度依赖

三、《云计算安全参考架构》的云安全风险分析

3.1 数据泄露风险

3.2 隔离失败风险

3.3 API滥用风险

3.4 业务连续性风险业务连续性风险包括但不限于以下方面。

3.4.1 网络性能

3.4.2 终端风险

3.4.3 拒绝服务攻击

3.5 基础设施不可控风险

3.6 运营风险

3.7 恶意人员风险

四、ENISA的云安全风险分析

4.1 技术风险

4.2 法律风险

4.3 传统网络安全


一、概述

云计算面临着一些与传统信息系统类似的安全风险,同时还存在一些云计算特有的安全风险,对这些风险进行分析和控制,是保障云安全的前提。《信息安全技术 云计算服务安全指南》(GB/T 31167—2014)、《信息安全技术 云计算安全参考架构》(GB/T 35279—2017)以及ENISA都对云计算存在的安全风险进行了分析

二、《云计算服务安全指南》的云安全风险分析

《信息安全技术-云计算服务安全指南》(GB/T 31167—2014)中将云计算面临的安全风险归纳为下述几个方面:客户对数据和业务系统的控制能力减弱、客户与云服务商之间的责任难以界定、可能产生司法管辖权问题、数据所有权保障面临风险、数据保护更加困难、数据残留和容易产生对云服务商的过度依赖

2.1 客户对数据和业务系统的控制能力减弱

传统模式下,客户的数据和业务系统都位于客户的数据中心,它们都在客户的直接管理和控制下,但在云计算环境里,客户将自己的数据和业务系统迁移到云计算平台上,失去了对这些数据和业务的直接控制能力。客户数据以及在后续运行过程中生成、获取的数据都处于云服务商的直接控制下,云服务商具有访问、利用或操控客户数据的能力。

因此将数据和业务系统迁移到云计算平台后,安全性主要依赖于云服务商及其所采取的安全措施。云服务商通常把云计算平台的安全措施及其状态视为知识产权和商业秘密,客户在缺乏必要知情权的情况下,难以了解和掌握云服务商安全措施的实施情况和运行状态,难以对这些安全措施进行有效监督和管理,不能有效监管云服务商的内部人员对客户数据的非授权访问和使用,这些都增加了客户数据和业务所面临的风险。

2.2 客户与云服务商之间的责任难以界定

传统模式下,按照“谁主管谁负责、谁运行谁负责”的原则,信息安全责任相对清晰。在云计算模式下,云计算平台的管理和运行主体与数据安全的责任主体不同,相互之间的责任如何界定,缺乏明确的规定。不同的服务模式和部署模式、云计算环境的复杂性也增加了界定云服务商与客户之间责任的难度。

云服务商可能还会采购、使用其他云服务商的服务,如提供SaaS服务的云服务商可能将其服务建立在其他云服务商的PaaS或IaaS之上,这种情况导致了责任更加难以界定。

2.3 可能产生司法管辖权问题

在云计算环境里,数据的实际存储位置往往不受客户控制,客户的数据可能存储在境外数据中心,改变了数据和业务的司法管辖关系。

一些国家可能依据本国法律要求云服务商提供可以访问这些数据中心的途径,甚至要求云服务商提供位于它国数据中心的数据。

2.4 数据所有权保障面临风险

客户将数据存放在云计算平台上,没有云服务商的配合很难独自将数据安全迁出。在服务终止或发生纠纷时,云服务商还可能以删除或不归还客户数据为要挟,损害客户对数据的所有权和支配权。

云服务商通过对客户的资源消耗、通信流量缴费等数据的收集统计,可以获取客户的大量相关信息,对这些信息的归属往往没有明确规定,容易引起纠纷。

2.5 数据保护更加困难

云计算平台采用虚拟化等技术实现多客户共享计算资源,虚拟机之间的隔离和防护容易受到攻击,跨虚拟机的非授权数据访问风险突出。

云服务商可能会使用其他云服务商的服务,使用第三方的功能、性能组件,使云计算平台结构复杂且动态变化。随着复杂性的增加,云计算平台实施有效的数据保护措施更加困难,客户数据被未授权访问、篡改、泄露和丢失的风险增大。

2.6 数据残留

存储客户数据的存储介质由云服务商拥有,客户不能直接管理和控制存储介质。当客户退出云计算服务时,云服务商应该完全删除客户的数据,包括备份数据和运行过程中产生的客户相关数据。

目前,缺乏有效的机制、标准或工具来验证云服务商是否实施了完全清除操作,客户退出云计算服务后其数据仍然可能完整保存或残留在云计算平台上。

2.7 容易产生对云服务商的过度依赖

由于缺乏统一的标准和接口,不同云计算平台上的客户数据和业务难以相互迁移,同样也难以从云计算平台迁移回客户的数据中心。另外,云服务商出于自身利益考虑,往往不愿意为客户的数据和业务提供可迁移能力。这种对特定云服务商的潜在依赖可能导致客户的业务随云服务商的干扰或停止服务而停止运转,也可能导致数据和业务迁移到其他云服务商的代价过高。

由于云计算服务市场还未完全成熟,供客户选择的云服务商有限,也可能导致客户对云服务商的过度依赖。

三、《云计算安全参考架构》的云安全风险分析

《信息安全技术 云计算安全参考架构》(GB/T 35279—2017)中强调云计算面临的安全风险重点体现在几个方面:数据泄露风险、隔离失败风险、API滥用风险、业务连续性风险、基础设施不可控风险、运营风险和恶意人员风险。

3.1 数据泄露风险

一方面,云服务用户能够在任何地点通过网络直接访问云计算平台;另一方面,云服务商可能控制用户的某些数据。因此,云服务商应提供安全、可靠、有效的用户认证及相应的访问控制机制来保护用户数据的完整性与保密性,防止数据泄露与非法篡改。同时,云服务商拥有存储用户数据的介质,用户不能直接管理与控制存储介质,所以用户终止云计算服务后其数据还可能保存或残留在云计算平台上,仍然存在数据泄露风险。

3.2 隔离失败风险

在云计算环境中,计算能力、存储与网络在多个用户之间共享。如果不能对不同用户的存储、内存虚拟机、路由等进行有效隔离,恶意用户就可能访问其他用户的数据并进行修改、删除等操作。

3.3 API滥用风险

云服务中的应用程序接口(API)允许任意数量的交互应用,虽然可以通过管理进行控制,但API滥用风险仍然存在。

3.4 业务连续性风险业务连续性风险包括但不限于以下方面。

3.4.1 网络性能

例如,“宽带不宽”已成为云计算发展的瓶颈。网络攻击事件层出不穷、防不胜防,因此,由于网络而造成云服务不可用的情况是云服务商无法控制的。

3.4.2 终端风险

在海量终端接入云服务的情况下,终端风险会严重威胁到云服务的质量。此外,如果用户在使用云服务时对云服务中某些参数设置不当,会对云服务的性能造成一定影响。

3.4.3 拒绝服务攻击

由于用户、信息资源的高度集中,云计算平台容易成为黑客攻击的目标,拒绝服务所造成的后果与破坏性也会明显超过传统的企业网应用环境。当用户的数据与业务应用于云计算平台时,其业务流程将依赖于云计算服务的连续性,这对SLA、IT流程、安全策略、事件处理与分析等都提出了挑战。

3.5 基础设施不可控风险

公有云服务商的用户管理接口可以通过互联网访问,并可获得较大的资源集,可能导致多种潜在的风险,使恶意用户能够控制多个虚拟机的用户界面、操作云服务商界面等。

3.6 运营风险

云服务商经常通过硬件提供商和基础软件提供商采购硬件与软件,然后采用相关技术构建云计算平台,再向云服务用户提供云服务。硬件提供商和基础软件提供商等都是云服务供应链中不可缺少的参与角色,如果任何一方突然无法继续供应,云服务商又不能立即找到新的供应方,就会导致供应链中断,进而导致相关的云服务故障或终止。

3.7 恶意人员风险

在大多数情形下,任何用户都可以注册使用云计算服务。恶意用户能够搜索并利用云计算服务的安全漏洞,上传恶意攻击代码、非法获取或破坏其他用户的数据和应用。此外,内部工作人员(如云服务商系统管理员与审计员)的操作失误或恶意攻击更加难于防范,并会导致云计算服务的更大破坏。

四、ENISA的云安全风险分析

ENISA(欧盟网络与信息安全机构)评估框架被视为NIST在欧洲的对应框架,它负责制订云计算相关的信息安全收益、风险与建议。它围绕组织的高风险资产,如公司声誉、用户声誉、员工忠诚度和经验、知识产权、敏感的个人资料、使用者及服务提供者的个人资料、使用者及服务提供者的关键个人资料、日常资料(HR)、需要即时提供的服务、网络、认证等方面确定了组织应该考虑的风险类型。ENISA将云安全风险归纳为治理缺失、云服务商锁定、隔离失败、合规风险、管理界面攻陷、数据保护、不安全或不彻底的数据删除和恶意内部人员等几个方面。从技术、法律和传统网络安全风险角度来分析,其内容如下。

4.1 技术风险

  • R8:资源耗尽。
  • R9:隔离失败,如多用户之间的隔离。
  • R10:云提供者恶意内部人员。
  • R11:管理平面缺陷,如配置错误等。
  • R12:拦截传输中的数据。
  • R13:上传、下载时云内的数据泄露。
  • R14:数据缺失或无效删除。
  • R15:分布式拒绝服务(DDoS)。
  • R16:经济拒绝服务EDoS,如盗用云客户身份,执行大量收费操作,导致资源恶意使用,从而产生大量费用。
  • R17:加密密钥丢失。
  • R18:进行恶意探测或扫描。
  • R19:服务引擎损坏。
  • R20:用户加固程序与云环境之间的冲突。

4.2 法律风险

  • R21:传唤与电子取证。
  • R22:管辖权变更的风险。
  • R23:数据保护风险。
  • R24:许可风险,许可条件(如按用户授权协议)和在线许可检查在云环境中可能无法使用。

4.3 传统网络安全

  • R25:网络中断。
  • R26:网络管理(网络拥塞、连接中断、未优化的网络)。
  • R27:篡改网络流量。
  • R28:特权升级。
  • R29:社会工程攻击。
  • R30:操作日志的丢失或损坏。
  • R31:安全日志的丢失或损坏。
  • R32:备份丢失、被盗。
  • R33:未经授权的物理访问。
  • R34:计算机设备失窃。
  • R35:自然灾害。

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

手撕算法-删除链表的倒数第 N 个结点

描述 思路 快慢指针,快指针先走N步,走不够N步返回空。慢指针和快指针一起走,当快指针到达终点,即快指针为null时,慢指针到达倒数第N个节点。因为要删除倒数第N个,所以要记录之前的节点pre,假设…

JavaScript原型、原型对象、原型链系列详解(二)

(二)、JavaScript原型对象 原型对象 JavaScript 的原型机制是一种非常强大和灵活的面向对象编程概念,它使用一个对象作为另一个对象的模板,从而实现继承。在 JavaScript 中,每个对象都有一个原型对象,它定义了该对象的属性和方法&…

力扣100热题[哈希]:最长连续序列

原题:128. 最长连续序列 题解: 官方题解:. - 力扣(LeetCode)题解,最长连续序列 :哈希表 官方解题思路是先去重,然后判断模板长度的数值是否存在,存在就刷新&#xff0c…

【4XVR】win11局域网共享3D影片给quest3

准备工作 首先要有一个路由器,使电脑和quest3处于同一个局域网下 一.创建一个离线账户 打开设置选择账户 添加账户 二.共享文件 选择要共享的文件夹,右键打开属性,点击共享 选择刚刚创建的用户,点击共享即可 三.使用quest观影 …

AttributeError: ‘_MSDataLoaderIter‘ object has no attribute ‘_put_indices‘

问题描述 复现代码过程中遇到错误:AttributeError: _MSDataLoaderIter object has no attribute _put_indices 解决方案 出错的原因是代码中使用了不存在的属性"_put_indices"。这个错误可能与你使用的版本不兼容有关。在pytorch1.x版本中,&q…

Unity基础框架

公共模块 单例基类 如果有很多个这样的单例模式对象,创建他们时都要重复的写单例模式代码。那么能不能利用泛型来减少这部分重复的工作量呢。 单例模式基类,最简单的写法 继承MonoBehaviour的单例基类 所以需要做一些改进 获取单例时如果为空,创建一个名字一样的物体,挂…

力扣HOT100 - 283. 移动零

解题思路: 双指针 指针 i 用于寻找不为零的位置 指针 j 用于寻找为零的位置 不为零时,自己与自己交换,i 和 j 同时向下一个位置移动 为零时,nums[ i ]与nums[ j ]交换,使零向后移动 class Solution {public void…

YOLOv8 | 注意力机制 | 添加ResBlock_CBAM注意力机制——论文必备(全网独家)

⭐欢迎大家订阅我的专栏一起学习⭐ 🚀🚀🚀订阅专栏,更新及时查看不迷路🚀🚀🚀 YOLOv5涨点专栏:http://t.csdnimg.cn/96Cv5 YOLOv8涨点专栏:http://t.csdnimg.cn/hmCtL YOLOv7专栏:http://t.csdnimg.cn/lA95R 💡魔改网络、复现论文、优化创新💡

python学习9:python的代码中的数据类型转换

python中数据类型的转换 1.为什么需要转换类型呢? 数据类型之间,在特定的场景下,是可以相互转换的,如字符串转数字,数字转字符串等;数据类型转换,在以后是我们经常使用到的功能,例如…

js工具方法记录

校验数字是否有效的11位手机号 function isValidPhoneNum(value: string) {return /^[1][3,4,5,6,7,8,9][0-9]{9}$/.test(value) }手机号中间4位掩码 function maskPhoneNum(phone: string, space false) {if (!phone) {return }const reg /(\d{3})\d{4}(\d{4})/return pho…

Linux常用命令和基础命令合集---非常推荐

非常好用的Linux通用基础常用命令和高级命令。 下载链接:https://download.csdn.net/download/lishihuijava/89026399

Python Flask 将数据传递给前端

from flask import Flask, render_templateapp Flask(__name__)app.route("/index") def index():data {name: "张三","age": 18,}return render_template("index2.html", datadata)if __name__ __main__:app.run()<!DOCTYPE ht…

OD C卷 - 分披萨

分披萨 有大小不同的奇数块披萨&#xff1b;从A开始轮流取披萨&#xff0c;第一块可以任意选取&#xff0c;其他都必须从缺口开始选&#xff1b;B每次都选最大块的&#xff0c; A知道B的想法&#xff1b;求A能获得的披萨块总和的最大值&#xff1b; 输入描述&#xff1a; 第一…

企业微信变更主体公证怎么弄?

企业微信变更主体有什么作用&#xff1f;现在很多公司都用企业微信来加客户&#xff0c;有时候辛辛苦苦积累了很多客户&#xff0c;但是公司却因为各种各样的原因需要注销&#xff0c;那么就需要通过企业微信变更主体的方法&#xff0c;把企业微信绑定的公司更改为最新的。企业…

Prometheus+Grafana 监控Tongweb嵌入式(by lqw)

文章目录 1.思路2.部署准备3.Grafana仪表盘json文件下载4.tw嵌入式jar包本地引入依赖并测试运行5.运行jmx_prometheus_javaagent-0.19.0.jar形式获取监控数据&#xff08;方法一&#xff09;6.使用Actuator 获取监听数据&#xff08;方法二&#xff09;7.Prometheus部署8.Prome…

【Nebula笔记】简介及安装

目录 一、简介 (一) 什么是图数据库 二、安装 (一) 原生安装 (二) Docker & Docker compose 1. Docker安装 Linux Window 2. 部署NebulaGraph (三) to MAC 三、Nebula Graph Studio (一) 版本兼容性 (二) 原生安装 (三) Docker compose (四) 连接Nebula Gra…

Docker(二):Docker常用命令

docker 查看docker支持的所有命令和参数。 ➜ ~ docker Management Commands:config Manage Docker configscontainer Manage containersimage Manage imagesnetwork Manage networksnode Manage Swarm nodesplugin Manage pluginssecret …

STM32之HAL开发——HAL库框架介绍

HAL库外设设计思想 HAL库借鉴面向对象的设计思想&#xff0c;将外设驱动封装为对象。 HAL库使用主线 HAL使用的主要用在俩个地方&#xff0c;无外乎外设初始化以及外设的使用。想用好这两个功能&#xff0c;我们首先得对外设的封装有一定的了解。 句柄结构体 xx_HandleTypeDef…

JAVA学习笔记19(面向对象编程)

1.面向对象编程 1.1 类与对象 1.类与对象的概念 ​ *对象[属性]/[行为] ​ *语法 class cat {String name;int age; }main() {//cat1就是一个对象//创建一只猫Cat cat1 new Cat();//给猫的属性赋值cat1.name "123";cat1.age 10; }​ *类是抽象的&#xff0c;…

蓝桥杯真题:幸运数字

这道题可以用 integer.string&#xff08;&#xff09;求每个进制的数&#xff0c;但这里要每一位数相加&#xff0c;所以用这个方法会比较麻烦&#xff0c;如下 import java.util.Scanner; public class Main {public static void main(String[] args) {Scanner scan new Sc…