首页
社区
课程
招聘
[讨论]如何实现一个进程检测另一个进程中函数的调用执行情况
发表于: 2010-6-30 16:03 6162

[讨论]如何实现一个进程检测另一个进程中函数的调用执行情况

2010-6-30 16:03
6162
由于攻击实验的需要,需要编写一个spy来检测另一个同步运行的进程的函数执行情况。
为了便于讨论,举个例子吧。
program A:

int sum(int x,int y);//求和函数
int main()
{
     int i,a;
     a=0;
     for(i=0;i<100;i++)
     {
         if(i%2==0)
           a=sum(a,i);
     }
}
int sum(int x,int y)
{
   return x+y;
}
如何编写另外一个程序program B?让它能够和A同时运行,检测sum函数的执行情况,比如在不知道循环次数的情况下,通过B能够检测出sum函数调用的时机和次数等信息。
查阅了相关资料,据了解用hook技术能够实现,但是看到的多是注入的手段,那样的话就成了一个进程了,和本题不符。下面是我查阅的链接。请大家多提思路,谢谢!实现用c或c++,vc都ok
http://home.54master.com/space.php?uid=585083&do=blog&id=79
http://club.it.sohu.com/read_elite.php?b=program&a=186960

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 254
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
想裸体进去的话,就只能shellcode patch了吧?
2010-6-30 17:29
0
雪    币: 21
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
能具体讲解一下吗?
2010-6-30 22:30
0
雪    币: 378
活跃值: (702)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
4
调试器?加指令记录?
类似下面这种吗?
2010-7-1 00:52
0
雪    币: 21
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
先反汇编程序指令,找到要监测的逻辑地址。回楼上的,肯定要用到调试器,不知你想表达什么?具体一点。
2010-7-1 10:22
0
雪    币: 378
活跃值: (702)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
6
我只是问下调试器的指令记录功能可以达到你的要求不,前面有指令执行的次数!
2010-7-1 10:38
0
雪    币: 21
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
调试器能得到指令的执行次数,请问用什么调试器?
但是调试器能获取指令的执行时机吗》?
2010-7-3 13:49
0
游客
登录 | 注册 方可回帖
返回
//