阅读:1430回复:7
关于REGMON的一个问题,谢谢先
请问在注册表监控时怎么知道对注册表的操作是从一个进程中的哪个模 块发出的?用REGMON只能知道是哪个进程在对注册表操作,我具体要知道 是这个进程中的哪个DLL对注册表的操 作,有没有可能做到这个?怎么做呢?谢谢
|
|
|
沙发#
发布于:2004-12-18 16:02
我明白了,所有应用层的DLL对注册表的操作都 是通过调用AdvApi32.dll中输出的函数,所以如果在REGMON中即使能看到是哪个DLL发出的操 作,也只能看到是AdvApi32.dll发出的。所以在REGMON中根本不可能知道 是哪个DLL对注册表的操 作,看来只能在应用层中想办法了。谢谢 嘿嘿,明白就好。 有个想法:hook advapi输出的Reg...函数,能得到返回地址,EnumProcessModules等能知道进程加载的各模块的base address,看返回地址落在哪个模块地址之后 如果你在上海,可以找wowo |
|
板凳#
发布于:2004-12-18 05:26
我明白了,所有应用层的DLL对注册表的操作都 是通过调用AdvApi32.dll中输出的函数,所以如果在REGMON中即使能看到是哪个DLL发出的操 作,也只能看到是AdvApi32.dll发出的。所以在REGMON中根本不可能知道 是哪个DLL对注册表的操 作,看来只能在应用层中想办法了。谢谢
|
|
|
地板#
发布于:2004-12-17 22:23
用户被禁言,该主题自动屏蔽! |
|
地下室#
发布于:2004-12-17 17:38
[quote]REGMON只能监控进程,关不能知道 是进程中的哪个模块操 作的注册表 这么作有什么必要吗? regmon监视的是内核态的ZwOpenKey,zwXXX系列的 调用他的模块有两种: 一是内核态的驱动程序 一是AdvApi32.dll的调用 AdvApi32.dll模块输出RegOpenKey,regXXX系列函数 供用户态的程序调用 如果是那样好像要搞清模块间的调用关系? 以上是个人观点 [/quote] 那再往上呢??EXE和AdvApi32.dll中可能还有其他DLL的存在. |
|
|
5楼#
发布于:2004-12-17 13:25
REGMON只能监控进程,关不能知道 是进程中的哪个模块操 作的注册表 这么作有什么必要吗? regmon监视的是内核态的ZwOpenKey,zwXXX系列的 调用他的模块有两种: 一是内核态的驱动程序 一是AdvApi32.dll的调用 AdvApi32.dll模块输出RegOpenKey,regXXX系列函数 供用户态的程序调用 如果是那样好像要搞清模块间的调用关系? 以上是个人观点 |
|
|
6楼#
发布于:2004-12-17 11:41
REGMON只能监控进程,关不能知道 是进程中的哪个模块操 作的注册表
|
|
|
7楼#
发布于:2004-12-17 08:54
regmon好像可以,你可以看看
|
|
|