OpenStack调度算法逆向分析.

Slides:



Advertisements
Similar presentations
第 3 节 人类遗传病. 自主学习 新 知突破 1 .识记人类遗传病的类型及特点。 2 .掌握人类遗传病的调查方法、监测、预防。 3 .了解人体基因组计划和人体健康。
Advertisements

1 债券融资业务拓展交流 债券业务部 二 O 一二年二月. 2 目 录  第一部分 债券融资业务概述  第二部分 东兴证券债券融资业务情况介绍及前景展望  第三部分 什么样的企业适合发债  第四部分 债券融资业务合作开发方式及激励探讨.
用藥常識知多少? 五乙李麗娜 心寶的故事 心寶哪裡錯了? 說一說藥袋上有什麼資訊? 姓名 怎麼用(一天使用幾次? ) 藥的用途對症嗎? 藥品和外觀 副作用 注意事項 保存期限與方法 成藥有沒有衛生署許可證字號.
轴对称(一) 课堂引入 仔细观察下列图片,思考这些图片有什么样 的特点.
OSVT 个人工作周报 主讲人:濮阳天 北京大学 软件与微电子学院 2015年9月.
教育信息化专题培训 王延觉 2014年5月.
创意鄱阳湖— 一种基于无形资源理念开发鄱阳湖的思考 以传奇背景音乐作为开场,体现创意创造传奇 南昌大学 黄细嘉
防盜裝置  學生科技探究.
饮食中的平衡 酸 性 食 物 与 碱 性 食 物.
基督教倫理學 1 原則(一)﹕ 倫理學 及 不同的觀點.
期末書面報告指定書籍 王鼎鈞回憶錄---昨天的雲
成才之路 · 语文 人教版 • 中国古代诗歌散文欣赏 路漫漫其修远兮 吾将上下而求索.
金融业营改增情况介绍 芜湖市国税局税政制度处 胡光烈.
川信-丰盛系列集合资金信托计划 2016年3月.
共通能力科研習計劃書 簡 報 篇.
古文選讀.
农信社信贷产品实务技能提升培训.
SequoiaDB安装部署 龙阳、高级工程师 广州巨杉软件开发有限公司
高齡者道路交通事故特性與道安防制措施 研究計畫報告
是重要的感觉器官,有许多感觉器,具触觉、嗅觉功能,还能感受异性的性信息素。 触角由柄节、梗节和鞭节三部分组成。
OpenStack开源虚拟化平台(三) 云计算 (第三版) 第 8 章 CLOUD COMPUTING Third Edition
組別: 指導老師:張景榮 老師 組員: 李儀姿 、 陳雅貞
小微企业融资担保产品介绍 再担保业务二部 贾天
项目亮点 融资方为AA级发债主体,是当地唯一的综合平台公司
99年成語200題庫(21-40).
复习 什么是结构? 结构是指事物的各个组成部分之间的有序搭配和排列。
運用VDI發展華岡雲端公用電腦服務 – 從建置、應用,到學習行為的蒐集與分析
Cobbler+RDO= Openstack
校园网站是学校的一面镜子、一张名片 河南农业大学附中 田随凤.
植物辨識及分類 呂春森 基隆市立暖暖高級中學 植物辨識及分類 呂春森 基隆市立暖暖高級中學.
個人投資理財分析 財務狀況匯總表 銀行存款 共同基金 外幣基金 股票投資 保險價值 黃金投資 支出預算 房貸計算 不動產價值 資源變化資料庫
淡江大學 航空太空工程學系 工程科技教育 國際認證 期中審查報告簡報
浅谈SDN,NFV与NV 曙光信息产业股份有限公司 网络架构师 薛保平.
第三课 闲话“家”常 1.
“华东师大数学系部分老同事活动”(辛卯聚会)记事
第五节 读图表述.
第6讲 科学革命(1) 近代数理科学的诞生.
財團法人中華民國證券櫃檯買賣中心 交 易 部 中華民國101年8月
Introduction to CloudStack’s System VM
102學年度 5月份中心會議 時 間: 地 點:中心會議室.
维新派代表人物 梁启超.
管理好种公鸡提高雏鸡质量.
走进 莱 芜 制作人:楠楠.
会计技能综合实训 ——会计分工.
Openstack入门
腾冲叠水河瀑布 和来凤山公园 音乐:贝多芬——F大调浪漫曲 摄影、制作:曹珏 陈晓芬.
权力的行使:需要监督 北京市京源学校 冯 悦.
温江区行政事业单位 资产管理信息系统培训 2010年10月28日.
科學科 污染 空氣 成因 的 : 題目 及 減少空氣污染的方法 陳玉玲 (4) 姓名 : 去到目錄.
2012/11/12 Virtual Machine.
XX信托 ·天鑫 9号集合资金信托计划 扬州广陵
人无信不立 业无信不兴 公路建设市场信用体系 建设综述 交通运输部公路局 交通运输部公路局
羅東高中邱柏翰 虛擬機器軟體與作業系統安裝 羅東高中邱柏翰
培训环境 无线 FDSMEETING_C201-1 FDSMEETING_C201-2 FDSMEETING_C201-3
崔涛,高能所云计算组 高能所计算中心 十八届全国科学计算与信息化会议 Openstack培训及操作 崔涛,高能所云计算组 高能所计算中心.
建设基于OpenStack的云计算平台 Lenovo ThinkCloud Center Foundation
Linux 圖形操作介面 GUI -- X-window 與 Webmin
2013電信創新應用大賽 推廣說明會 雲端軟體組補充資料
嵌入式Linux开发流程 成都研究所操作系统团队.
信息安全协会 网络安全专题第一期培训 © Copyright For ISA |
06 无形资产投资环节的会计处理.
健康推廣協會專案 行政院勞動力發展署中彰投分署103年第8期網路商務A班專題報告.
聚合型第一種:隱沒帶、島弧 例子:臺灣東方的琉球海溝、南美洲智利海溝. 聚合型第一種:隱沒帶、島弧 例子:臺灣東方的琉球海溝、南美洲智利海溝.
START 先进的测试团队协作方式 面向敏捷团队的测试过程管理,让注意力回归高质量交付
“单一窗口”标准版运输工具(船舶) 申报系统业务培训 2017年08月10日.
§12-5 同方向同频率两个简谐振动的合成 一. 同方向同频率的简谐振动的合成 1. 分振动 : 2. 合振动 : 解析法
開放式受益憑證無實體登錄 電子化申請作業說明
知识点:交流接触器的结构和工作原理 主讲教师:冯泽虎.
农科资源共享与采选平台介绍 中国农业大学图书馆 徐伟 (2012年4月 北京).
新選課系統說明會 電算中心 林以仁.
Presentation transcript:

OpenStack调度算法逆向分析

OpenStack架构分析

Nova运行架构

OpenStack调度算法逆向分析 调度算法原理 过滤:对主机列表进行筛选 称重:对主机列表进行排序 选择分值最高主机作为调度目的地

OpenStack调度算法脆弱性分析 AA者已经攻陷了OpenStack管理网络,可以利用网络监听调度数据 调度算法泄露所造成的危害 调度算法 = 过滤器 + 称重器 + 随机参数 在监听足够数量的数据包的前提下,可以获取当前的过滤器和称重器,从而实现调度算法的捕捉 调度算法泄露所造成的危害 恶意宿主AA AA者伪装成宿主机,对目标VM发起AA 恶意同驻AA AA者伪装成VM,对同驻的目标VM发起AA

调度算法的逆向分析 具体步骤 协议窃听 过滤器猜解 称重器猜解 对AMQP报文进行监听 分析出报文中的主机信息 分析出报文中的请求信息 布尔型过滤器猜解 数字型过滤器猜解 称重器猜解 分析出Host Shifting模式实例 得到一次方程组 方程组求解,得到称重器权重

实验结果 过滤器逆向结果 准确率高达100% 称重器逆向结果 误差小于0.0172,准确率高达98.28%

虚拟机调度拒绝服务AA

虚拟机调度拒绝服务AA原理

AA实验 AA场景 4节点OpenStack环境:一个controller节点,一个network节点,两个compute节点(compute1和compute2),OpenStack Juno版本搭建在Ubuntu 14.04上 AA效果 使得compute1节点拒绝服务,使得新创建的虚拟机全都创建到compute2节点上

实验步骤1 用户创建两个server-group,为了之后可以指定虚拟机创建到某个物理机上

实验步骤2 在compute1和compute2各创建一个虚拟机,并各指定一个server-group

实验步骤3 在compute1节点超量创建虚拟机命令与结果

实验结果 新创建的虚拟机在compute2节点上

虚拟机创建过程中的文件注入AA

Nova创建实例的完整流程

脆弱点及威胁分析 Nova对创建虚拟机镜像过程中的文件注入缺乏有效检查 我们可以在创建虚拟机的时候将任意文件注入到虚拟机镜像中的任意路径

AA实验 以demo用户身份在创建虚拟机时进行文件注入 将本地的hostname文件注入到镜像中的/etc/hostname路径 注入文件:fileinjection 对/etc/hostname进行覆盖

实验结果

云计算平台服务接口分析及AA技术

自动化配置管理机制中的脆弱点 Foreman框架 通过Smart-Proxy代理各种应用程序完成各项功能 可以与Puppet集成使用,通常作为前端接入 可定制各种模板,关联模板生成的文件实现自动化安装

Foreman组件远程执行AA原理 可以利用代码缺陷,构造Payload进行AA 可利用获得的command shell执行任意代码,造成服务中断,信息泄露,文件系统被修改等后果 redirect_to函数重定向到用户当前所在的控制器,eval函数利用bookmark的controller名称属性来生成重定向路径 合法性检查有缺陷,仅是controller不能为空或者带有空格

利用Metasploit工具的AA实验 初始化注册选项 向服务器发送三次请求 第一次请求:利用提供的用户名和密码登陆服务器 第二次请求:获取当前session的令牌 第三次请求:通过获得的令牌向服务器提交创建书签的请求,触发payload

在服务器上执行ruby_string的64位编码版本时,将会从服务器反弹一个shell到LHOST的LPORT端口! Payload构造 定义ruby_string 在服务器上执行ruby_string的64位编码版本时,将会从服务器反弹一个shell到LHOST的LPORT端口! 生成64位编码版本的ruby_string

AA实验 实验环境 CentOS 6.6 Foreman 1.1 Metasploit Pro

实验结果 执行ls命令 执行init 0命令

Keystone组件 提供身份认证功能 RESTful API 角色概念

Keystone组件中的脆弱点 底层代码分析 假设有如下图所示的用户-项目关系 create_trust函数 token_to_auth_context函数 没有考虑链式授权的问题,在利用令牌创建trust的时候,只检查用于授权的角色是否存在于对应的项目中 admin, test, member 用户1 项目1 用户2 admin 项目2 admin 用户3 项目3 用户1 用户2 用户3 项目1的test权限 项目1的test+admin权限

AA实验 平台 方法 VMWare ESXI 5.5 + CentOS 6.6 minimal + OpenStack 2014.1.1 利用Keystone客户端在服务器上创建如前所示的用户-项目-角色关系,然后利用keystone的RESTful API,进行链式授权

实验结果 用户1创建客户端;然后利用客户端创建包含授权角色-test的trust trustor_client = client.Client(debug=True,…) trustor_trust = trustor_client.trusts.create(role_names=[‘test’,],…) 用户2利用用户1创建的trust创建客户端;然后创建授权角色为admin和test的trust middle_trustee_client = client.Client(debug=True,…) middle_trustee_trust = middle_trustee_client.trusts.create(role_names=[‘admin’, ‘test’,],…) 用户3利用用户2创建的trust创建客户端;查看用户3所拥有的权限(角色) third_trustee_client = client.Client(debug=True,…) print "The roles of third trustee: %s" %third_trustee_client.auth_ref.role_names