当然啦,这里放一个我在2020年天府杯国际网络安全大赛上完成的QEMU逃逸视频,影响Qemu5.2以前的版本号。通俗一点讲就是我在客户机内运行了一小段恶意驱动程序,发送恶意数据给Hypervisor(也就是我们熟知的虚拟机,例如Vmware、Virtualbox、QEMU)触发其本身的安全漏洞。通过一些内存布局的手段我们就可以完成漏洞利用,实现RCE(远程代码执行)啦。最终效果就是在主机上弹出一个计算器,当然你想干其他任何事情也都可以,因为此时你已经在客户机端拿到主机的完全控制权限了。
这个漏洞已经公开,传送门:【Black Hat Asia 2021分享】清道夫:误用“错误处理代码”导致的QEMU/KVM逃逸 https://zhuanlan.zhihu.com/p/373084566
当然可以逃得出去,别小瞧了现代黑客的技术。
其实虚拟机的本质也是运行在操作系统上的一个应用软件而已,和你打开的chrome、QQ、网易云音乐、LOL等没有什么大的区别,只不过这个应用软件会独立的运行另外一个操作系统而已。
因此,虚拟机实际上也不是能够和真实主机完全隔离,来保证绝对安全的,在一部分情况下还是会影响到主机的安全性,例如软件漏洞逃逸和硬件逃逸等等。
在虚拟机安全中,有个专业的名词就叫做虚拟机逃逸,指的是进程越过虚拟机范围,进入到宿主机的操作系统中,也就是题目中提到的病毒逃离虚拟机,对真实主机造成危害。
这种情况常有发生,例如:
17年在温哥华举行的Pwn2Own黑客大赛,360安全团队便通过利用Edge中的堆溢出漏洞,Windows内核中的类型混淆漏洞以及VMware中的未初始化的缓冲区漏洞进行了黑客攻击,以逃避运行Microsoft VMware Workstation虚拟机的方式破坏了微软的Edge浏览器,拿走了105,000刀的奖金。
一般试图进行虚拟机逃逸的恶意软件都必须先瞄准特定虚拟机配置中的已知缺陷,并依赖于预先了解主机环境中的一部分信息。大多数现实世界的虚拟机逃脱的目标是VirtualBox,比如:
回答问题的时候,我还在YouTube上找到了几个虚拟机逃逸的演示视频,比如这个:
另外,一些恶意代码会检测它是否在虚拟机环境中运行,目前已经公布了许多技术可以用来检测虚拟机。VMware并不认为这是一个安全漏洞,所以也没有采取明确的技术措施,来避免检测。 但一些恶意代码会在虚拟机环境中有着不同的执行过程, 这也会加重一部分恶意代码分析师的工作负担。
与其他所有的应用软件一样, VMware本身偶尔也会被曝出安全漏洞。而这些安全漏洞被利用,会导致宿主机操作系统崩溃,甚至在上面运行恶意的代码。尽管只有少数公共工具或论文显示了攻击VMware的技术,但是目前在共享目录特性中已经被发现了安全漏洞,而且也公开发布了利用拖放功能的攻击工具。
目前已经在共享文件夹功能或者共享工具中发现了很多公开的漏洞,它们都利用了VMware Tools的拖放功能。一个使用了文件夹共享功能的公开漏洞,可以使Guest系统在宿主系统上写任何文件,从而修改或者破坏宿主操作系统。
虽然这种特别的技术对当前版本的VMware无效,但在文件夹共享功能上已经发现了几个不同的安全漏洞,因此最好确保自己的VM软件有完整的补丁修复,或者通过在虚拟机中禁用文件夹共享功能,也可以阻止这种类型的攻击。
在以前的时候,恶意代码编写者也经常使用反虚拟机技术来逃避恶意代码分析,恶意代码可以使用这种技术探测自己是否运行在虚拟机中。如果恶意代码探测到自己在虚拟机中运行,它会执行与其本身行为不同的行为, 其中最简单的行为就是是停止运行。
这种反虚拟机技术给恶意代码分析者带来不少的难题。
不过随着虚拟化技术的使用不断增加,这种采用反虚拟机技术的恶意代码数量也在逐渐下降,因为无论是计算机管理员还是普通计算机用户都在使用虚拟机,所以即使目标主机是虚拟机,其也有攻击价值,黑客也不能够对其像之前一样视而不见了。
关于虚拟机安全方面,我了解的内容大致如上
可以。
按最狭义的定义,“病毒逃出虚拟机”指恶意程序透过hypervisor对母机系统进行任意代码执行攻击,这种攻击被称为hyperjacking。根据维基百科的说法,VENOM漏洞在2015年被登记为CVE(可以翻译成公共漏洞披露),是已知最早的可能实际导致hyperjacking攻击的漏洞。
如果把“病毒”和“虚拟机”的定义放宽,那例子就多了。
比如有一种经典的攻击方式叫做缓存计时攻击,因为母机和所有虚拟机共用一套CPU缓存,所以恶意程序可以通过这种方法窃取母机或其他虚拟机的数据。前几年闹得沸沸扬扬的英特尔meltdown漏洞就是一种缓存计时攻击,当时各大浏览器同时降低JS的计时器精度就是为了防止网页利用缓存计时窃取数据。
还有一些虚拟机本身不提供安全保证,比如带JNI功能的Java虚拟机,native code通过stack overflow可以轻易地破坏虚拟机调用栈。Android的ART和Dalvik就是这一类虚拟机,所以它在虚拟机外面又包了一层Linux用户隔离来保证安全性。
病毒会不会感染另一台电脑?!当然可以
病毒会不会逃出虚拟机?!当然可以
两者理论上是一样的。
这个问题透着一股邪乎味儿,怎么看怎么危险啊……
建议专业机构给予支援。
我是一名基层派出所民警。
可以说当今中国警察普遍羡慕美国警察可以采取暴力手段绝对的镇压不法分子。
但是,不得不说,这次这位美国警察,太过分了,不仅是过分,而且我的理解是那已经构成了犯罪行为。那黑人已经制服了就可以正常上拷带走了,没必要一直压着脖子压那么长时间。没能置身其中不知现场那美国警察的所思所想,反正我个人挺不理解他为啥那样干的。
只能说无论什么地方,无论什么行业,只要是人的社会,都有像样的也有操蛋的吧。
_________此处为分割线 _________
以下为统一答复评论中有些人质疑的我所讲的羡慕二字。
能够出现这种质疑在我料想之中,因为中国警察也有过过分的时代,据我所知就是在七十八十九十年代,就如同地痞流氓,看谁不顺眼就能打谁对老百姓而言没王法可讲,那时候的警察说好听点可以说是威风凛凛说难听点儿是横行霸道。
但我想表明的是,时过境迁,现在的中国警察无论是受舆论约束还是因为法治社会建设制度规范都已经变得逐步文明与规范起来,起码我认为从我们现在开始从公安司法院校毕业参加公务员考试考进来的新一代警察已经具备新的面目,当然不可否认的是在这个行业内目前仍然存有历史的顽疾,仍然存在着臭虫,但我已经讲过无论什么行业都有操蛋的吧,这是个人问题,不是群体问题。相比之下,拍拍良心看,现在的整个警察队伍比照曾经确实过分的年代是不是已经是天地之别,问问曾经真正挨过曾经年代老警察欺负的中老年人就知道了。
为何会说起羡慕,因为警察每天面对的人群,大多是三教九流之辈,没有武力加身,很多事情在处理上警察显得软弱无能,说白了,好人谁没事儿上派出所转悠啊都忙着自己的生活呢,警察打人这句话,我们常常听到,但是但凡有点脑袋的人都能想明白,警察会闲着没事儿干把那在家里消停待着的遵纪守法的人抓起来暴揍一顿吗?
以上言辞不免更会有人质疑,请允许我解释,武力,当然不可滥用,我所说的羡慕不是羡慕美国警察的随意滥用武力,而是在合法范围内准许在对方不听从警察指令时动用武力,现在确实有人民警察法赋予了相关权力,但实践中现在的中国警察并不能或者说不敢执行人民警察法里的所有权力。拿防疫工作举例,卡口的工作人员在让出入的人员扫码登记时,就会有不愿意配合的人,然而这些不愿意配合的人可会知道工作人员的所做所为是为了整个社区的稳定安全,因为这整个社区包括了这名不愿意配合的人啊,在这个时候是否应当对其进行武力控制来保障其他居民的安全呢。同理,警察盘查也好,调查也好,总会有那些不愿意配合的人,自我感觉良好认为自己没问题所以警察不必要对其进行盘查所以就不配合,而警察当看到对方不配合时会以什么视角审视,难道要说谢谢您的不配合吗,万一这不愿配合的人真背着案子呢,那便是对更多的人民群众的不负责任。因此,我要说,民众的素质如果真正达到了人人互相敬重路不拾遗夜不闭户的文明程度,要求警察绝对文明不要有暴力举动,一点问题没有,一味强调了警察不该暴力执法而分毫不过问被执法对象自身是否存在问题,是不是看问题的角度些微的片面了些。
请注意,我说羡慕里的那句话尾巴实际已经表明了,羡慕的是暴力手段对不法分子的镇压,可不是对遵纪守法的百姓也要肆意妄为。例如像给群众办个身份证居住证之类的业务,警察当然应该热心服务。但当面对泼皮无赖时,还要笑脸相迎,得来的只有蹬鼻子上脸,警察都不怕了,您们认为这些无赖还有谁管得了。
列位存有异议的同志们,谢谢您们的教诲。言辞中犀利的同志们,谢谢您们的敦促。
让我知道当警察,需要吾日三省吾身。
还想要质疑甚或是骂的您们,若是能让您舒服,骂两句无妨。我不算您辱骂警察。不过是,道不同不相为谋罢了吧。
_____分割线
2020年6月5日22:53 出警在路上