微软近日发布了针对使用基于虚拟化的微软安全(VBS)安全区的开发者的全面指导 ,强调了加强不同虚拟信任级别之间信任边界的强化全区关键安全措施 。
微软安全团队的这份指导文件 ,主要探讨了在实现VBS安全区时所面临的微软基本安全挑战 。VBS安全区利用管理程序的强化全区虚拟信任级别 ,服务器租用在用户模式进程内隔离内存和代码执行区域 。任边 VBS安全区提供了强大的微软可信执行环境(TEE),可以保护敏感数据(如加密密钥)免受恶意管理员的强化全区访问。然而 ,任边这些保护措施在VTL1安全区和VTL0主机进程之间引入了一个独特的微软信任边界。 与传统的强化全区信任边界不同,安全区存在于其主机进程内部,任边这就要求开发者采取全新的源码库微软安全视角。文件中强调的强化全区主要安全原则是:安全区绝不能信任VTL0 。尽管主机进程无法读取或写入安全区的任边内存区域,但安全区可以访问其主机的内存,如果管理不当 ,就会产生安全漏洞。 指针验证的重要性微软研究人员指出,源码下载一个关键建议是验证从主机进程传递的指针是否在VTL1安全区的地址范围之外。微软通过代码示例展示了这一漏洞 ,恶意主机可能通过操纵指针值来攻击安全区 。例如: 复制`LPVOID GetState(LPVOID lpParam) { State* state = (State*)lpParam; if (state == nullptr) { return (LPVOID)E_INVALIDARG; } *state = g_State; return (LPVOID)S_OK; }`1.如果没有适当的验证 ,该函数可能会无意中允许主机覆盖敏感的安全区内存 。
检查前在VTL1中捕获VTL0结构(来源:微软) 安全实现模式开发者被建议在初始化时使用EnclaveGetEnclaveInformation API来确定安全区的亿华云边界,并验证所有主机提供的指针是否落在这些边界之外。
CRITICAL_SECTION锁(来源:微软) 此外 ,为了防止“检查时间-使用时间”(TOCTOU)攻击,应在验证之前将VTL0的结构复制到VTL1的内存中 。指导文件还强调 ,机密信息应始终在安全区内生成 ,并且不应通过非安全通道暴露。高防服务器 微软警告开发者不要重新发明安全原语,建议使用Windows实现库和RAII包装器。有趣的是 ,微软甚至在文件中提到探索Rust进行安全区开发的可能性,并提到在最近的MORSE黑客马拉松中开发的一个概念验证 ,该验证利用了Rust的内存安全特性。模板下载 |
数据中心电源的五大趋势高铁餐服(高铁餐服的创新与发展)金立S5(金立S5的游戏性能如何?一起来看看吧!)红米37.6.8(超长待机、高性能、优质拍照,红米37.6.8完美融合)外星人声卡(探索未知领域的声音艺术)华为Mate9拍摄视频全方位评测(华为Mate9拍视频功能强大,画质出色,满足各类拍摄需求)使用U盘安装新硬盘系统教程(一步步教你如何利用U盘轻松安装新硬盘系统)华硕笔记本光盘换系统安装教程(轻松学会如何通过光盘更换华硕笔记本系统)探究惠普导航的优势与应用(解密惠普导航的功能和使用体验)HP系统重装教程(详解HP系统重装步骤,让你的电脑焕然一新)企业服务器b2b信息平台亿华云云服务器网站建设香港物理机源码库