首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
软件逆向
发新帖
3
0
[求助]如何判断自己程序的CALL是不是被非法调用
发表于: 2016-10-2 08:19
4991
[求助]如何判断自己程序的CALL是不是被非法调用
JACK李冰
2016-10-2 08:19
4991
最近在研究一个问题,如何判断自己程序的CALL是不是被非法调用(比如别的程序远程调用或者注入DLL直接用内联汇编调用),如何监视这种行为,想知道其中的原理.希望看雪各位大神有空能解答下,给点思路
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
收藏
・
3
免费
・
0
支持
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
4
)
OXFFFFFFFE
雪 币:
18
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
1
回帖
57
粉丝
0
关注
私信
OXFFFFFFFE
2
楼
栈回溯的
2016-10-2 08:48
0
shenchiyua
雪 币:
96
活跃值:
(64)
能力值:
( LV2,RANK:10 )
在线值:
发帖
85
回帖
284
粉丝
1
关注
私信
shenchiyua
3
楼
call函数里可以查看函数返回地址在不在预期模块里
每次call之前先将某个全局变量赋值,call的时候判断这个变量是否是被赋值了
判断此call调用的当前线程起始地址不是在指定地址
call之前[esp-4]改成某个值
方法很多
2016-10-2 11:16
0
komawangs
雪 币:
1531
活跃值:
(1349)
能力值:
( LV3,RANK:30 )
在线值:
发帖
8
回帖
54
粉丝
3
关注
私信
komawangs
4
楼
检测调用栈就行了,简单点这样两句:
PDWORD pebp;
__asm mov pebp,ebp;
if(!CheckCall(pebp[1])) // pebp[1] 就是上层调用栈的地址空间
return
复杂点的就这样
【原创】ring3反作弊篇——基于EBP遍历调用栈及模块名
2016-10-9 11:48
0
ayunaa
雪 币:
18
活跃值:
(80)
能力值:
( LV2,RANK:10 )
在线值:
发帖
70
回帖
348
粉丝
0
关注
私信
ayunaa
5
楼
程序中多用全局变量能完美解决......
2016-10-10 08:41
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
JACK李冰
35
发帖
102
回帖
10
RANK
关注
私信
他的文章
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部