在没有windbg的情况下调试Windows服务条目
逆向工程
内核模式
x64dbg
视窗 10
2021-07-02 07:44:47
1个回答
我会在这里发布我自己的答案,以便将来可以再次找到它。
- 使用CFF Explorer打开服务二进制文件。
- 找到
AddressOfEntryPoint
的Optional Header
。 - 在 中找到
.text
条目Section Headers
。 - 计算
raw_offset = raw_address - virtual_address + AddressOfEntryPoint
。 - 在内置的十六进制编辑器中,导航到
raw_address
. - 将那里的两个字节更改为
EB FE
. - 保存并退出。
- 修改
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServicesPipeTimeout
为0xFFFFFFFF
(需要重启)。 - 用补丁版本替换服务并启动(其状态应变为“正在启动”)。
- 在
x64dbg
检查Enable Debug Privilege
后,重新启动x64dbg
。 - 附加到服务。
EB FE
用它们的原始值替换字节。- 现在可以调试入口点。
其他注意事项 -x64dbg
不会停在正在运行的服务的入口点。使用该命令:EntryPoint
显示其地址并滚动到视图中。
其它你可能感兴趣的问题