Windows利用技术:通过路径查找赢得竞争条件
本文最初于2016年为Project Zero博客撰写。但最终它被单独发表在PoC||GTFO期刊第13期以及印刷版的第二卷中。为了庆祝我们的新博客,我们在此博客上重新发布它,并包含了一个更新的分析,以查看它在现代Windows 11系统上是否仍然有效。 在我的Windows研究过程中,我倾向于发现...
28 篇文章
本文最初于2016年为Project Zero博客撰写。但最终它被单独发表在PoC||GTFO期刊第13期以及印刷版的第二卷中。为了庆祝我们的新博客,我们在此博客上重新发布它,并包含了一个更新的分析,以查看它在现代Windows 11系统上是否仍然有效。 在我的Windows研究过程中,我倾向于发现...
作者:Mateusz Jurczyk,Google Project Zero 在本系列的前三篇博客文章中,我试图概述Windows注册表究竟是什么、它的作用、历史以及在哪里可以找到更多相关信息。在随后的三篇文章中,我的目标是详细描述这个机制在内部是如何工作的——从其客户端(例如,在Windows上运...
作者:Mateusz Jurczyk,Google Project Zero 欢迎回到 Windows 注册表探险之旅!在本系列的上一篇文章中,我们深入探讨了 regf 配置单元格式的内部原理。理解注册表的这一基础方面至关重要,因为它揭示了该机制背后的设计原则及其固有的优缺点。存储在 regf 文件...
作者:James Forshaw,Google Project Zero 面向对象的远程处理技术,如DCOM和.NET Remoting,使得开发能够跨越进程和安全边界的面向对象服务接口变得非常容易。这是因为它们被设计为支持广泛的对象,不仅包括服务中实现的对象,还包括任何其他兼容远程处理的对象。例如...
作者:James Forshaw,Google Project Zero 早在2021年,我写过一篇博客文章,介绍了在Windows上构建虚拟内存访问陷阱原语的多种方法。其目标是使虚拟内存地址的读取者或写入者暂停相当长(例如1秒或更长时间)的时间,通常是为了利用内核中的TOCTOU内存访问漏洞。 那...
作者:Mateusz Jurczyk,Google Project Zero 正如之前在本系列博客文章的第二部分("功能简史")中提到的,从 Windows NT 3.1 到现代 Windows 11 用于编码注册表配置单元的二进制格式称为 regf。在某种程度上,它非常特殊,因...
作者:James Forshaw,Google Project Zero 这是一篇关于我对 OleView.NET 工具所做的一些近期改进的简短博文,这些改进已作为 1.16 版本的一部分发布。该工具旨在发现 Windows COM 的攻击面,并查找权限提升和远程代码执行等安全漏洞。这些更新最近在雷...
作者:Mateusz Jurczyk,Google Project Zero 对于普通用户甚至Win32应用程序开发者来说,注册表布局可能看起来很简单:我们从Regedit中知道有五个根键(缩写为HKCR、HKLM、HKCU、HKU和HKCC),每个根键都包含一个嵌套的树结构,在系统中扮演特定角色。...
作者:Mateusz Jurczyk,Google Project Zero 在着手研究一个新的漏洞研究目标时,尤其是闭源目标,我优先考虑尽可能多地收集相关信息。当目标是一个像 Windows 注册表这样古老且基础的子系统时,这就变得特别有趣。在这种情况下,有价值的信息碎片可能隐藏在被人遗忘的文档、...
作者:Mateusz Jurczyk,Google Project Zero 在深入探讨注册表的底层安全特性之前,了解它在操作系统中的作用及其背后的历史背景非常重要。本质上,注册表是一个由命名的“键”和“值”组成的层次化数据库,Windows 和应用程序用它来存储各种设置和配置数据。它表现为一种树形...