-
-
[旧帖] [原创]典型云平台的探测与入侵技术分析 0.00雪花
-
发表于: 2016-2-1 16:47 1586
-
最近这几年计算机领域被提到最多的几个字:大、云、物、智。也就是以海量数据分析处理技术为基础的大数据、以分布式虚拟化技术为基础的云计算、以传感器网络为基础的物联网技术、以机器学习技术为基础的人工智能。本文聚焦的就是其中之一的云技术。
基于云技术的服务部署方式随着网络通信成本的不断降低变得更加为众多的网络服务提供商所关注,随着云技术的不断成熟,也将会有更多的服务商选择成本低廉便于管理的云平台部署自己的服务。同时私人的云服务近几年也发展迅速。这,就是趋势。
其实说起来也不复杂,云技术其实很早就出现了,不过当时还没有人提出这样一个洋气的名字。之前应该是叫大规模计算集群。云计算是一个概念性的词语,它只是一个概念而不是一种具体的技术。真正给它以技术支撑的是分布式技术和虚拟化技术。分布式就是把很多零散的资源汇集到一起,形成一个大的资源池,比如存储池、内存池等,简单的说,就是把小块儿合成大块儿的技术;而虚拟化就是把一大块儿资源分配给不同的用户使用,实现按需分配,也就是把大块儿拆成小块儿的技术。
目前来说的云平台根据其受众不同主要有以下一些实现架构,第一种是IAAS,提供硬件的集成服务,比如一些大型的云端服务器提供商;PAAS提供开发平台的服务,比如一些在线的云开发系统,SAAS提供成型的应用级服务,比如云盘等。而且,随着发展PAAS和IAAS的界限日趋模糊。下面本文将按照与常规入侵流程类似的方法介绍一下针对云平台的一些探测和入侵技术。
探测技术
首先是探测技术,按照实施者的位置不同分为本地和远程两种方式。
本地探测技术
(一)虚拟环境(VME)软件为了便于识别,往往都会向寄宿系统中添加一些明显的特征。添加的范围包括正在运行的进程和服务、文件与目录系统以及注册表项。比如vmtools服务。
(二)内存中可能会vm有关的内容,虚拟环境中的安装的操作系统,一些关键的操作系统表指针都是重定位的,从而内存位置不同。例如中断描述表(IDT),全局描述符表(GDT)和本地描述符表(LDT)这样的结构。它是一种通用方式,对VMware和Virtual PC等虚拟环境均适用,且适用Linux和Windows操作系统。
(三)搜索虚拟环境下特殊的虚拟硬件,例如网卡、USB控制器和声音设备,它们的mac地址具有一定的特征。或者比较同一程序在物理机和目标机上的运行时间
(四)虚拟机为了方便宿主系统与寄宿系统之间操作的方便,可以允许文件共享(VMware中通过\\.host命令访问宿主系统中设置的共享目录)、共享剪贴板等“后门”,同时用于物理机与虚拟机之间通讯的非标准x86指令在物理机上执行会异常,在虚拟机上则不会。
远程探测技术
(一)程序在真实系统中运行时间和在虚拟机中运行时间有比较明显的差异。
(二)因为在Windows系统的lP包编号是自动增加的,而Linux系统的IP包编号则是随机的。如果此时我们有一台虚拟机是Windows系统,而宿主系统是Linux系统,它们之间采用NAT连接方式。此时一个源地址将会出现既有不少自动递增的IP包编号,还有许多随机的IP包编号,通过这种IP编号异常,程序就基本可以判断这个源地址有虚拟机的存在。
攻击技术
前期工作准备完毕后,接下来就是攻击技术。
针对虚拟机的第一种攻击方式是利用虚拟机和实体机的通信,例如共享文件夹或者共享剪切板,这个功能很方便,但也很容易被利用,恶意程序可能在不同系统之间传输。
第二种是虚拟机逃逸技术。虚拟机逃逸是指攻击实施者能够从一台获取权限的虚拟机出发,获取到物理机或者其他虚拟机权限的技术。例如去年爆出的毒液漏洞,攻击者可以利用虚拟机机的软盘驱动器相关代码中的漏洞实现虚拟机逃逸。攻击者可以从虚拟系统发送命令和精心编制的参数数据到软盘控制器,以此导致数据缓冲区溢出,并在物理机管理程序进程环境中执行任意代码。
第三种是利用虚拟机开启的虚拟交换或者hub服务,进行arp欺骗。
第四种,由于虚拟机和宿主机共享资源,攻击者利用管理人员对虚拟机使用资源的限制策略设置不当,通过虚拟机强制占用一些资源,从而使得其他虚拟机或者物理机拒绝服务。
基于云技术的服务部署方式随着网络通信成本的不断降低变得更加为众多的网络服务提供商所关注,随着云技术的不断成熟,也将会有更多的服务商选择成本低廉便于管理的云平台部署自己的服务。同时私人的云服务近几年也发展迅速。这,就是趋势。
其实说起来也不复杂,云技术其实很早就出现了,不过当时还没有人提出这样一个洋气的名字。之前应该是叫大规模计算集群。云计算是一个概念性的词语,它只是一个概念而不是一种具体的技术。真正给它以技术支撑的是分布式技术和虚拟化技术。分布式就是把很多零散的资源汇集到一起,形成一个大的资源池,比如存储池、内存池等,简单的说,就是把小块儿合成大块儿的技术;而虚拟化就是把一大块儿资源分配给不同的用户使用,实现按需分配,也就是把大块儿拆成小块儿的技术。
目前来说的云平台根据其受众不同主要有以下一些实现架构,第一种是IAAS,提供硬件的集成服务,比如一些大型的云端服务器提供商;PAAS提供开发平台的服务,比如一些在线的云开发系统,SAAS提供成型的应用级服务,比如云盘等。而且,随着发展PAAS和IAAS的界限日趋模糊。下面本文将按照与常规入侵流程类似的方法介绍一下针对云平台的一些探测和入侵技术。
探测技术
首先是探测技术,按照实施者的位置不同分为本地和远程两种方式。
本地探测技术
(一)虚拟环境(VME)软件为了便于识别,往往都会向寄宿系统中添加一些明显的特征。添加的范围包括正在运行的进程和服务、文件与目录系统以及注册表项。比如vmtools服务。
(二)内存中可能会vm有关的内容,虚拟环境中的安装的操作系统,一些关键的操作系统表指针都是重定位的,从而内存位置不同。例如中断描述表(IDT),全局描述符表(GDT)和本地描述符表(LDT)这样的结构。它是一种通用方式,对VMware和Virtual PC等虚拟环境均适用,且适用Linux和Windows操作系统。
(三)搜索虚拟环境下特殊的虚拟硬件,例如网卡、USB控制器和声音设备,它们的mac地址具有一定的特征。或者比较同一程序在物理机和目标机上的运行时间
(四)虚拟机为了方便宿主系统与寄宿系统之间操作的方便,可以允许文件共享(VMware中通过\\.host命令访问宿主系统中设置的共享目录)、共享剪贴板等“后门”,同时用于物理机与虚拟机之间通讯的非标准x86指令在物理机上执行会异常,在虚拟机上则不会。
远程探测技术
(一)程序在真实系统中运行时间和在虚拟机中运行时间有比较明显的差异。
(二)因为在Windows系统的lP包编号是自动增加的,而Linux系统的IP包编号则是随机的。如果此时我们有一台虚拟机是Windows系统,而宿主系统是Linux系统,它们之间采用NAT连接方式。此时一个源地址将会出现既有不少自动递增的IP包编号,还有许多随机的IP包编号,通过这种IP编号异常,程序就基本可以判断这个源地址有虚拟机的存在。
攻击技术
前期工作准备完毕后,接下来就是攻击技术。
针对虚拟机的第一种攻击方式是利用虚拟机和实体机的通信,例如共享文件夹或者共享剪切板,这个功能很方便,但也很容易被利用,恶意程序可能在不同系统之间传输。
第二种是虚拟机逃逸技术。虚拟机逃逸是指攻击实施者能够从一台获取权限的虚拟机出发,获取到物理机或者其他虚拟机权限的技术。例如去年爆出的毒液漏洞,攻击者可以利用虚拟机机的软盘驱动器相关代码中的漏洞实现虚拟机逃逸。攻击者可以从虚拟系统发送命令和精心编制的参数数据到软盘控制器,以此导致数据缓冲区溢出,并在物理机管理程序进程环境中执行任意代码。
第三种是利用虚拟机开启的虚拟交换或者hub服务,进行arp欺骗。
第四种,由于虚拟机和宿主机共享资源,攻击者利用管理人员对虚拟机使用资源的限制策略设置不当,通过虚拟机强制占用一些资源,从而使得其他虚拟机或者物理机拒绝服务。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
赞赏
看原图
赞赏
雪币:
留言: