Xen是英国剑桥大学开发的一款开源的虚拟机监视器产品。该产品能够使不同和不兼容的操作系统运行在同一台计算机上,并支持在运行时进行迁移,保证正常运行并且避免宕机。 Xen的实现上存在漏洞,本地攻击者可能利用此漏洞提升自己的权限。 在启动guest域时,pygrub使用Python exec()语句处理grub.conf的不可信任数据,如果创建了特制的grub.conf文件的话,guest域中的root用户就可以在Domain-0中执行任意Python代码。 有漏洞的代码位于tools/pygrub/src/GrubConf.py脚本的以下行: exec("%s = r\"%s\"" %(self.commands[com], arg.strip())) 可从guest域中修改/boot/grub/grub.conf文件,将default语句修改为: default "+str(0*os.system(" insert evil command here "))+" 在下一次启动guest域时就会在domain 0中执行恶意命令。
Xen是英国剑桥大学开发的一款开源的虚拟机监视器产品。该产品能够使不同和不兼容的操作系统运行在同一台计算机上,并支持在运行时进行迁移,保证正常运行并且避免宕机。 Xen的实现上存在漏洞,本地攻击者可能利用此漏洞提升自己的权限。 在启动guest域时,pygrub使用Python exec()语句处理grub.conf的不可信任数据,如果创建了特制的grub.conf文件的话,guest域中的root用户就可以在Domain-0中执行任意Python代码。 有漏洞的代码位于tools/pygrub/src/GrubConf.py脚本的以下行: exec("%s = r\"%s\"" %(self.commands[com], arg.strip())) 可从guest域中修改/boot/grub/grub.conf文件,将default语句修改为: default "+str(0*os.system(" insert evil command here "))+" 在下一次启动guest域时就会在domain 0中执行恶意命令。