首页
社区
课程
招聘
[求助]如何 拦截 自己进程的 注册表读取操作.
发表于: 2009-2-13 15:46 5794

[求助]如何 拦截 自己进程的 注册表读取操作.

2009-2-13 15:46
5794
事情是这样,编程的时候使用了一个第三方的COM组件.
但是这个COM组件的某个dll需要读取注册表某值的信息才能运行.

由于希望实现软件的完全绿色.
我想最简单的方式是当这个dll读取注册表时,我拦截他,并且给它我想要的值.

我很少接触HOOK技术,但听上去这个能够解决这个问题.
这里是拦截自己进程的操作,可能简单些,不需要些全局的东西.

如果谁了解这个方面的东西,请给个提示.比如哪些关键函数.哪些核心技术.
初来乍到,如果有不合适的地方请提示下.

先谢谢了.

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
2
看它导入了哪些注册表函数,然后IAT Hook就行了,拦到后它要什么就给什么。如果你不了解Hook就自己在论坛上找一下相关资料,很多的
2009-2-13 16:46
0
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
3
像你这种情况其实Inline Hook更容易做,因为不需要调用原函数,用push xxxx/retn和mov eax,xxxx/jmp eax这两种方式吧,如果你不会计算跳转。用到的API只有VirtualProtect
2009-2-13 16:52
0
雪    币: 251
活跃值: (25)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
4
楼主一贴一问题
2009-2-13 18:33
0
雪    币: 254
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
-_-.监控下注册表不就行了吗?然后再看什么情况
2009-2-13 23:25
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
由于希望实现软件的完全绿色.

...读取注册表时,我拦截他,并且给它我想要的值.
2009-2-14 02:45
0
雪    币: 1450
活跃值: (35)
能力值: (RANK:680 )
在线值:
发帖
回帖
粉丝
7
IAT HooK,Inline Hook,或者Dll 劫持都行。
你这种情况不需要调用原函数。它读注册表被拦截时,你看下堆栈中的参数,
比如是字符串指针,就把你准备好的值填到这个地址处。够详细了吧?

其实你为了把软件做成完全绿色搞这些不是很值得,弄个reg不就算了。
2009-2-14 02:58
0
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
8
问题是楼主会不会写。一个从来没接触过Hook的人写起这个来也不会轻松啊
2009-2-14 11:27
0
游客
登录 | 注册 方可回帖
返回
//