首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用内核运行ETW提供程序收集打开的注册表项句柄

是一种在Windows操作系统中进行性能分析和故障排查的技术。ETW(Event Tracing for Windows)是Windows提供的一种高效的事件跟踪机制,可以用于监视和记录系统和应用程序的各种事件。

在这种情况下,使用内核运行的ETW提供程序可以收集打开的注册表项句柄。注册表是Windows操作系统中用于存储配置信息的重要组件,而注册表项句柄则是对注册表项的引用。通过收集打开的注册表项句柄,可以了解系统或应用程序对注册表的访问情况,从而进行性能分析和故障排查。

这种技术的优势包括:

  1. 高效性:ETW是在内核级别实现的,因此具有较低的性能开销和较高的效率。它可以在系统运行时进行事件跟踪,而不会对系统性能产生显著影响。
  2. 精确性:ETW可以提供非常详细的事件信息,包括时间戳、进程ID、线程ID等。这些信息可以帮助开发人员准确定位和分析问题。
  3. 可扩展性:ETW支持多个提供程序同时进行事件跟踪,可以灵活地根据需求选择需要跟踪的事件类型和提供程序。

使用内核运行ETW提供程序收集打开的注册表项句柄的应用场景包括:

  1. 性能优化:通过分析注册表项的访问情况,可以发现性能瓶颈并进行优化,提高系统或应用程序的响应速度。
  2. 故障排查:当系统或应用程序出现问题时,可以通过分析注册表项的访问情况来定位问题的根源,从而进行故障排查和修复。
  3. 安全监控:注册表是系统中重要的配置信息存储区域,通过监控注册表项的访问情况,可以及时发现异常行为和安全威胁。

腾讯云提供了一系列与云计算相关的产品,其中包括与性能分析和故障排查相关的产品。具体推荐的产品和产品介绍链接地址如下:

  1. 云监控(https://cloud.tencent.com/product/monitoring):提供全面的监控和告警服务,可以监控系统和应用程序的各种指标,包括注册表项的访问情况。
  2. 云审计(https://cloud.tencent.com/product/cloudaudit):提供全面的日志审计服务,可以记录系统和应用程序的各种操作日志,包括注册表项的访问日志。

请注意,以上推荐的产品和链接地址仅为示例,实际选择和使用产品时应根据具体需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Scheduled-Task-Tampering

ETW替代路线,这将完全抑制与任务计划程序相关大部分日志记录 测绘数据 在试图规避任务计划程序如何记录其事件之前,先简要介绍一下任务计划程序提供日志记录类型,当我们在创建/修改/运行/删除任务时,...将生成以下测绘数据: Microsoft-Windows-TaskScheduler- ETW提供程序提供有关任务调度程序活动原始测绘,基于ETW各种安全解决方案可直接利用此数据源 事件日志中Microsoft-Windows-TaskScheduler.../Operational事件-如果启用了任务历史记录,则此事件将反映上述ETW提供程序将捕获内容 事件4698到4702-为了获得这些事件,需要在本地安全策略高级审计选项中配置对象审计,此源包含与上述类似的信息...攻击者然后修改新创建任务注册表项并将操作更改为C:\legitimate.exe 攻击者可以运行任务,那么C:\evil.exe'将被执行 试图在主机上发现恶意活动防御者将看到创建任务应该已执行C...横向运动 由于权限限制,正如其他研究人员在公开可用工具中提到那样,通常无法手动修改与计划任务关联注册表项,这是因为相关注册表项具有ACL,因此只有SYSTEM用户才能修改它们 为了验证这一点让我们尝试使用

91410

ETW - 事件提供者(Event Provider)

它允许开发人员在应用程序、设备驱动程序内核组件中插入事件,以便在运行收集有关系统行为详细信息。这些事件可以用于诊断性能问题、调试应用程序、监视系统活动等。...事件提供者(Event Provider) 事件提供者(Event Provider): 事件提供者是生成事件并将其发送到 ETW 可执行模块,例如应用程序、设备驱动程序内核组件。...注册事件提供者:事件提供者需要在系统中注册,以便 ETW 能够识别它。注册过程通常包括提供一个 GUID(全局唯一标识符)和事件元数据文件(通常是一个 XML 文件)。...您可以使用它来查看已注册事件提供者,或者更改事件提供配置,以便收集不同类型事件。 - 管理事件跟踪会话:wevtutil.exe 可以用于查询和配置事件跟踪会话。...ETW 提供程序

39010

性能测试必备监控技能windows篇13

打开性能监视器 任务管理器 Windows任务管理器提供了有关计算机性能信息,并显示了计算机上所运行程序和进程详细信息;如果连接到网络,那么还可以查看网络状态并迅速了解网络是如何工作。...重点介绍一个词定义: 句柄是WINDOWS用来标识被应用程序所建立或使用对象唯一整数,WINDOWS使用各种各样句柄标识诸如应用程序实例,窗口,控制,位图,GDI对象等等。...性能监视器 可以使用 Windows 性能监视器实时检查运行程序影响计算机性能方式并通过收集日志数据供以后分析使用。 ?...Windows 性能监视器以指定时间间隔请求性能计数器的当前值。 “事件跟踪数据”是从跟踪提供程序收集,这些跟踪提供程序是操作系统或者用于报告操作或事件个别应用程序组件。...可将多个跟踪提供程序输出合并到一个跟踪会话中。 “配置信息”是从 Windows 注册表项收集。Windows 性能监视器可以在指定时间或间隔记录注册表项值作为日志文件一部分。

3.2K60

如何利用ETW(Event Tracing for Windows)记录日志

由于采用内核(Kernel)层面的缓冲和日志记录机制,所以ETW提供了一种非常高效事件跟踪日志解决方案。...ETW Provider会预先注册ETW框架上,提供程序在某个时刻触发事件,并将标准化定义事件提供ETW框架。...ETW框架可以创建多一个会话来处理由提供程序发送事件,但是ETW Session并不会与某个单一提供者绑定在一起,多个提供程序可以向同一个ETW Session发送事件。...二、针对ETW编程 .NET提供了一种比较独特并且简单编程模式编写针对ETW事件提供和消费程序。...接下来我们就来简单介绍一下如何利用PerfView来启动上面这个程序,并收集运行性能数据。开启PerfView之后,我们选择菜单“Collect”>“Run”打开ETW数据收集窗口。 ?

1.6K100

如何利用ETW(Event Tracing for Windows)记录日志

由于采用内核(Kernel)层面的缓冲和日志记录机制,所以ETW提供了一种非常高效事件跟踪日志解决方案。...ETW Provider会预先注册ETW框架上,提供程序在某个时刻触发事件,并将标准化定义事件提供ETW框架。...ETW框架可以创建多一个会话来处理由提供程序发送事件,但是ETW Session并不会与某个单一提供者绑定在一起,多个提供程序可以向同一个ETW Session发送事件。...二、针对ETW编程 .NET提供了一种比较独特并且简单编程模式编写针对ETW事件提供和消费程序。...接下来我们就来简单介绍一下如何利用PerfView来启动上面这个程序,并收集运行性能数据。开启PerfView之后,我们选择菜单“Collect”>“Run”打开ETW数据收集窗口。 ?

2K50

如何利用ETW(Event Tracing for Windows)记录日志

由于采用内核(Kernel)层面的缓冲和日志记录机制,所以ETW提供了一种非常高效事件跟踪日志解决方案。...ETW Provider会预先注册ETW框架上,提供程序在某个时刻触发事件,并将标准化定义事件提供ETW框架。...ETW框架可以创建多一个会话来处理由提供程序发送事件,但是ETW Session并不会与某个单一提供者绑定在一起,多个提供程序可以向同一个ETW Session发送事件。...二、针对ETW编程 .NET提供了一种比较独特并且简单编程模式编写针对ETW事件提供和消费程序。...接下来我们就来简单介绍一下如何利用PerfView来启动上面这个程序,并收集运行性能数据。开启PerfView之后,我们选择菜单“Collect”>“Run”打开ETW数据收集窗口。 ?

1.9K60

RunAsPPL对抗

打开注册表编辑器 (RegEdit.exe),然后导航到位于以下位置注册表项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa。 2....将注册表项值设置为:“RunAsPPL”=dword:00000001。 3. 重新启动计算机。 2.使用组策略启用 LSA 保护 1. 打开组策略管理控制台 (GPMC)。 2....右键单击“注册表”,指向“新建”,然后单击“注册表项”。出现“新建注册表属性”对话框。 6. 在Hive列表中,单击HKEY_LOCAL_MACHINE。 7....1.minikatz bypass minikatz提供通过数字签名驱动程序来删除内核中 Process 对象保护标志功能,只要把那个标志删除,lsass进程就不会被保护了,具体得使用mimidrv.sys...- 2.自带驱动程序bypass 这个bypass点就是加载一个官方易受攻击驱动程序,可以利用它在内核运行任意代码,在我们加载官方驱动程序后,可以继续利用它来加载我们自己未签名驱动程序,这种技术不仅在此对抗

1.5K20

针对APT攻击终端安全系统大规模评估

这种心态一个例子是 LSASS 转储保护基于内核级别,它处理依赖于 LSASS 句柄打开用户模式转储技术。...,例如阻止程序注册自动运行。...它们还包括内核ETW 提供程序,而不是用户模式挂钩。...其中,Sentinel One收集 ETW 遥测数据并监控系统几乎所有部分。它使用内核回调来收集诸如进程创建、图像加载、线程创建、句柄操作、注册表操作等信息。它还生成详细攻击路径和进程树图。...• 某些软件甚至 Windows 本身使用只读、“无懈可击”注册表项。 图片 其主要目的是利用已签名、合法但易受攻击驱动程序,以访问内核级别并从 ring-0 执行“越狱”。

3.2K121

Windows内核函数

字符串处理 在驱动中一般使用是ANSI字符串和宽字节字符串,在驱动中我们仍然可以使用C中提供字符串操作函数,但是在DDK中不提倡这样做,由于C函数容易导致缓冲区溢出漏洞,针对字符串操作它提供了一组函数分别用来处理...注册表项注册表项类似于目录概念,下面可以有子项或者注册键-值对 2. 注册表子项:类似于子目录概念 3. 键名:通过键名可以寻找到相应键值 4....,以后针对这个项操作都是以这个句柄作为标示 DesiredAccess:访问权限,一般都设置为KEY_ALL_ACCESS ObjectAttributes:用法与文件操作中用法相同 其中应用层中注册表项内核注册表项对应关系如下...Disposition:返回创建状态,如果是REG_CREATED_NEW_KEY表示创建了一个新注册表项如果是REG_OPENED_EXISTING_KEY表示打开一个已有的注册表项 8. #...其他注册表函数 为了简化注册表操作,DDK提供了另外一组以Rtl开头函数,把之前Zw函数进行了封装,下面是这些函数与它们功能对应关系 函数名 描述 RtlCreateRegistryKey 创建注册表项

1K40

volatility 各个选项详解

Commands: amcache:查看Amcache应用程序痕迹信息 apihooks:检测内核及进程内存空间中API hook atoms:列出会话及窗口站atom表 atomscan...:Atom表池扫描(Pool scanner) auditpol:列出注册表HKLMSECURITYPolicyPolAdtEv审计策略信息 bigpools:使用BigPagePoolScanner...gdt:显示全局描述符表 getservicesides:获取注册服务名称并返回SID信息 getsids:打印每个进程SID信息 handles:打印每个进程打开句柄列表...mftparser:扫描并解析潜在MFT条目 moddump:转储内核驱动程序到可执行文件示例 modscan:内核模块池扫描 modules:打印加载模块列表...:_MM_SESSION_SPACE详细信息列表(用户登录会话) shellbags:打印shellbags信息 shimcache:解析应用程序兼容性Shim缓存注册表项 shutdowntime

4.9K20

Shellcode 技术

ETW内核中有组件,主要是为系统调用和其他内核操作注册回调,但也包含一个用户态组件,它是ntdll.dll(ETW 深度潜水和攻击向量)一部分。...当我们在加载器进程空间线程中运行 shellcode 时,更容易混入进程中良性线程执行和内存操作噪音。然而,不利一面是任何崩溃开发后模块也会导致加载程序进程崩溃,从而导致植入程序崩溃。...RelfeXXion 使用直接系统调用NtOpenSection并NtMapViewOfSection获得一个清理ntdll.dll句柄\KnownDlls\ntdll.dll(具有先前加载 DLL...另一种技术是注册一个向量异常处理程序 (VEH),它处理NO_ACCESS违规异常、解密内存段并将权限更改为RX....直接系统调用并绕过 ETW 和 AMSI(不是真正必要,因为我们已经禁用 ETW 并且没有将加载程序注入另一个进程)。

1.6K20

7.5 Windows驱动开发:监控Register注册表回调

在笔者前一篇文章《内核枚举Registry注册表回调》中实现了对注册枚举,本章将实现对注册监控,不同于32位系统在64位系统中,微软为我们提供了两个针对注册专用内核监控函数,通过这两个函数可以在不劫持内核...CmRegisterCallback和CmUnRegisterCallback是Windows操作系统提供两个内核API函数,用于注册和取消注册注册表回调函数。...开发者可以在注册表回调函数中执行自定义逻辑,例如记录日志、过滤敏感数据、或者阻止某些操作。 需要注意是,注册表回调函数注册和取消注册必须在内核模式下进行,并且需要开发者有一定内核开发经验。...,当然为了实现监控则我们必须要使用之前,如果使用之后则只能起到监视而无法做到监控目的。...如上代码只能实现注册表项监视,而如果需要监控则需要在回调函数MyLySharkCallback判断,如果指定注册表项是需要保护则直接返回status = STATUS_ACCESS_DENIED;

50810

Windows编程(操作注册表)

Windows编程(操作注册表) 注册表 存储在二进制文件里面, win32 API 提供了大量函数操作注册表 RegCreateKey 创建指定注册表项 RegCreateKeyW( _ In_...HKEY hKey, //打开的当前项句柄 实际上就是那几个分支 _ In_opt_ LPCWSTR lpSubKey,//打开或者创建表项名称 _ Out_ PHKEY phkResult //...用来接收创建或者打开表项句柄 regclosekey ); RegOpenKeyW( _In_ HKEY hKey, //打开的当前项句柄 实际上就是那几个分支 _ In_opt_ LPCWSTR lpSubKey...RegSetValueW( _In_ HKEY hKey, //打开的当前项句柄 实际上就是那几个分支 _In_opt_ LPCWSTR lpSubKey, //打开或者创建表项名称 _In_...:RegCloseKey(hKey); } } 查询注册表 { HKEY hKey; DWORD dwAge; //创建注册表项 VS2019自带调试器管理员权限运行 自己生成是以用户权限运行

1.4K20

QQ浏览器性能提升之路——windows性能分析工具篇

在WinXP上只能使用旧版Xperf,而且建议用对应xperfview打开分析。...正是基于ETW优秀性能和强大功能,越来越多第三方应用程序开始放弃自己日志系统,逐渐开始使用ETW来追踪和记录其状态和活动,从而进行性能调优或是进行应用程序日常维护。...Provider:所谓Provider,就是事件提供者,它可以是系统组件,驱动程序或者是我们开发应用程序, 我们在最后记录文件中看到事件就是来自于他们。...Session:它存在于内核中,用于表示一个ETW事件记录会话。...2) 如果你正在使用Process Monitor或Process Explorer,需要先关闭它们再启动Xperf,否则会报错,因为这两个工具也会通过ETW收集信息。 ?

4.9K51

Winshark:一款用于控制ETWWireshark插件

Winshark Winshark是一款用于控制ETWWireshark插件,ETW(Event Tracing for Windows)提供了一种对用户层应用程序内核层驱动创建事件对象跟踪记录机制...Wireshark建立了一个庞大网络协议剖析器工具库,为了帮助广大研究人员更好地收集和分析各种类型网络日志,Winshark便应运而生。...在这里,我们需要打开Edit控制面板中Preferences标签页,选择Protocols设置下DLT_USER,然后点击Edit并填写完对话框中信息: 接下来,将etw值设置为DLT = 147...然后使用管理员权限运行“C:\Program Files\Wireshark\WinsharkUpdate.bat”来更新Winshark解析器。...命名管道捕捉 首先,使用管理员权限打开一个cmd.exe命令行窗口,然后使用下列命令开启驱动器: sc start NpEtw 接下来,创建一个ETW会话: logman start namedpipe

85830

驱动开发:内核监控Register注册表回调

在笔者前一篇文章《驱动开发:内核枚举Registry注册表回调》中实现了对注册枚举,本章将实现对注册监控,不同于32位系统在64位系统中,微软为我们提供了两个针对注册专用内核监控函数,通过这两个函数可以在不劫持内核...,当然为了实现监控则我们必须要使用之前,如果使用之后则只能起到监视而无法做到监控目的。...)){g_liRegCookie.QuadPart = 0;return status;}Driver->DriverUnload = UnDriver;return STATUS_SUCCESS;}运行驱动程序...图片如上代码只能实现注册表项监视,而如果需要监控则需要在回调函数MyLySharkCallback判断,如果指定注册表项是需要保护则直接返回status = STATUS_ACCESS_DENIED...= ustrRegPath.Buffer){ExFreePool(ustrRegPath.Buffer);ustrRegPath.Buffer = NULL;}return status;}运行驱动程序

56230

驱动开发:内核注册表增删改查

注册表是Windows中一个重要数据库,用于存储系统和应用程序设置信息,注册表是一个巨大树形结构,无论在应用层还是内核层操作注册表都有独立API函数可以使用,而在内核中读写注册表则需要使用内核装用...在Windows内核中,注册表是一种存储系统配置信息机制,包括应用程序、硬件、驱动程序和操作系统各种设置。内核提供了一些API函数,可以让驱动程序通过代码访问和修改注册表,以实现系统配置和管理。...这两个函数都需要指定键句柄和要查询名称,查询结果将返回在指定缓冲区中。 注册表修改 在内核中,可以使用ZwSetValueKey函数修改指定键值。...ZwCreateKey: 创建注册表Key键,内核函数ZwCreateKey可用于创建新注册表项打开现有注册表项。...ZwRenameKey是Windows内核一个函数,用于重命名一个指定注册表键。它通常被驱动程序使用来更改配置信息或者重命名键。

28750

驱动开发:内核注册表增删改查

注册表是Windows中一个重要数据库,用于存储系统和应用程序设置信息,注册表是一个巨大树形结构,无论在应用层还是内核层操作注册表都有独立API函数可以使用,而在内核中读写注册表则需要使用内核装用...在Windows内核中,注册表是一种存储系统配置信息机制,包括应用程序、硬件、驱动程序和操作系统各种设置。内核提供了一些API函数,可以让驱动程序通过代码访问和修改注册表,以实现系统配置和管理。...这两个函数都需要指定键句柄和要查询名称,查询结果将返回在指定缓冲区中。注册表修改在内核中,可以使用ZwSetValueKey函数修改指定键值。...因此,在实现这些技术时,需要遵循操作系统和安全软件规定,以确保系统安全和稳定。ZwCreateKey: 创建注册表Key键,内核函数ZwCreateKey可用于创建新注册表项打开现有注册表项。...ZwRenameKey是Windows内核一个函数,用于重命名一个指定注册表键。它通常被驱动程序使用来更改配置信息或者重命名键。

38430

使用Backstab终止受保护进程

工具运行机制 ProcExp有一个在启动时加载带签名内核驱动器,而这个驱动器将允许ProcExp终止那些即使作为管理员也无法终止句柄。...当我们查看到UI时,你可能无法终止受保护进程,但可以终止它句柄,因为ProcExp UI会指示内核驱动程序终止这些句柄。而Backstab能做到同样事情,只不过没有提供UI。...NtLoadDriver加载驱动器以避免创建服务; 创建注册表项被删除(执行期间服务不可见); 通过DeviceIoControl与驱动器通信; 调用NtQuerySystemInformation实现进程句柄枚举... [options] -n, 通过名称选择进程,需包含.exe后缀 -p, 通过PID选择进程 -l, 列举所有受保护进程句柄 -k, 选择要终止受保护进程句柄...-x, 选择一个指定句柄 -d, 指定ProcExp提取路径 -s, 指定服务名称注册表键 -u, 卸载ProcExp驱动器 -a, 添加SeDebugPrivilege -h, 显示该帮助菜单

1.3K20

通用流氓软件手动清理方法「建议收藏」

) 4.registry workshop(注册表编辑器,用来搜索注册表) 5.traymgr(托盘图标管理程序) 6.句柄查看精灵或spy++(前者win10下不能用,主要用来搜索句柄,再定位到相关进程...上图用句柄查看精灵搜索句柄,win10下可能无法使用,可以用spy++,参考我另一篇文章“右下角托盘广告消息弹窗?如邮件图标广告等通用解决方法”。...卸载后文件还在的话,可能需要右击反安装程序管理员运行。 3.如果之前暴力删除了软件文件夹,又因为流氓软件运行中,部分文件无法删除,反安装程序也没有了。怎么手动清理残留文件和注册表?...,软件就没有运行了,可以随便删除文件和注册表项。...考虑到部分文件夹和注册表项,可能需要TrustedInstaller权限才能删除,可以用nsudo,启用全部特权运行everything、registry workshop。

1.7K30
领券