首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
付费问答
发新帖
0
0
[旧帖]
[求助]请问MessageBox的内部实现
0.00雪花
发表于: 2011-2-28 22:29
1626
[旧帖]
[求助]请问MessageBox的内部实现
0.00雪花
yarpee
1
2011-2-28 22:29
1626
MessageBox的显示,内部实现是不是有操作过注册表呢?
最近在写Hook SSDT注册表相关函数的代码,测试中驱动程序先获取g_listMutex互斥体,然后应用程序MessageBox,用户“确定”后,驱动程序释放g_listMutex互斥体。与此同时Hook的ZwSetValueKey中也在等待g_listMutex互斥体的释放。
结果是,驱动程序先获取g_listMutex互斥体,然后应用程序MessageBox,只有声音,没有界面。用户没法“确定”,驱动程序不释放g_listMutex互斥体,ZwSetValueKey也就无法执行。
因此,想请问MessageBox的内部实现中是不是有ZwSetValueKey的操作,导致了死锁?
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
收藏
・
0
免费
・
0
支持
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
4
)
blueapplez
雪 币:
458
活跃值:
(421)
能力值:
( LV9,RANK:610 )
在线值:
发帖
90
回帖
1047
粉丝
6
关注
私信
blueapplez
14
2
楼
好像是这么回事
你用windbg 调试一下 附件的程序
bp MessageboxA
bp ZwSetValueKey
bp ExitProcess
发现 调用MessageboxA 后 确实是调用了 ZwSetValueKey 然后才到 ExitProcess的
不太清楚 MessageboxA具体怎么实现的 但是确实是你说的这么回事
ps 1 pe。exe的代码超级简单 就是 Messagebox 然后ExitProcess
2 最好在一台没有杀软的干净的机器上调试
上传的附件:
PE.rar
(0.35kb,3次下载)
2011-2-28 23:19
0
yarpee
雪 币:
343
活跃值:
(40)
能力值:
( LV5,RANK:60 )
在线值:
发帖
6
回帖
156
粉丝
0
关注
私信
yarpee
1
3
楼
感谢blueapplez的帮助,我也去调试下。
2011-3-1 00:12
0
jerrynpc
雪 币:
284
活跃值:
(16)
能力值:
( LV2,RANK:10 )
在线值:
发帖
18
回帖
695
粉丝
0
关注
私信
jerrynpc
4
楼
用个内核调试器 我跟到win32k.sys里
2011-3-1 09:00
0
yarpee
雪 币:
343
活跃值:
(40)
能力值:
( LV5,RANK:60 )
在线值:
发帖
6
回帖
156
粉丝
0
关注
私信
yarpee
1
5
楼
刚刚一直在用windbg调试MessageBoxW和MessageBoxA
bp main
g
bp MessageBoxW或MessageBoxA
bp ntdll!ZwSetValueKey
在XP SP2和Win7下都是弹出MessageBox然后执行完了,没发现在ZwSetValueKey处有停及调用堆栈中也没发现。
你是怎么调出来的呢?
2011-3-1 21:27
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
yarpee
1
6
发帖
156
回帖
60
RANK
关注
私信
他的文章
[原创]逆向RegisterClass
6216
想了解下Windows的PE Loader,希望大家分享点资源
8521
[翻译]API hooking revealed(自己翻译的)
8258
[求助]如何安全地结束阻塞线程
1181
[求助]请问MessageBox的内部实现
1627
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部