基于HOOK和MMF的Windows密码渗透技术

基于HOOK和MMF的Windows密码渗透技术,第1张

基于HOOK和MMF的Windows密码渗透技术,第2张

随着计算机和网络的普及,信息安全已经成为人们关注的焦点。密码渗透和反渗透在这个领域愈演愈烈。本文深入分析了各种版本windows密码的特点,特别是在提高windws2K/XP安全性的情况下,提出了获取windows密码的关键技术和方法。
进一步分析windows钩子和MMF的技术细节。基于MMF的核心类CIPC提供了共享内存中钩子句柄的方法,解决了线程间的同步问题。然后深入讨论了WM_COPYDATA消息的特点。然后,分析了示例程序的重要代码和注意事项,并展示了结果。最后,给出了一些防范密码渗透的对策。

记忆图像文件;Windows挂钩;进程间通信;多线程操作

1.介绍

90年代用过windows3.x的人,很少有人知道这种操作系统在密码保护上存在漏洞。如果您在密码控件中选择文本“* * * * *”,并将其复制到剪贴板,您将看到密码的原始文本,而不是“* * * * *”。微软发现了windows3.x的问题,在新版Windows 95中修改了这个漏洞。然而,windows95存在新的安全漏洞。间谍软件可以被设计为从当前运行的程序中获取密码控件中的密码。这些间谍软件程序不像softice。不过,微软在window2000中修复了这个问题。如何利用MMF和钩子技术获取任意版本windows密码控件的内容是本文讨论的重点问题。


图1 Windows 2K/XP密码验证

获取windows密码的技术主要是利用Windows的安全漏洞。在windows NT/95/98/ME等操作系统下,如果将WM_GETTEXT消息发送给间谍软件中的密码控制,返回的文本将不是“* * *”,而是实际的文本内容,而在windows2K/XP中,微软增加了安全控制。如果WM_GETTEXT被发送到密码控制,系统将检查请求的进程,以确定它是否有权限。如图1所示:如果请求进程与密码控件是同一个进程,WM_GETTEXT消息仍然会返回密码的真实文本。如果两个进程不同,则返回ERROR_ACCESS_DENIED错误。因此,获取windows2K/XP密码的关键技术是从密码控件所在的进程中获取WM_GETTEXT消息,而不是在渗透进程中获取。这种在其他进程中运行用户代码的技术可以通过使用windows hook技术来实现。首先,我们要知道什么是钩子。

2.Windows挂钩

Windows系统基于事件驱动机制,即整个系统通过消息的传递来实现。Hook是一种特殊的消息处理机制,可以监听系统或进程中的各种事件消息,拦截发送到目标窗口的消息并进行处理。这样就可以在系统中安装自定义钩子,监控系统中特定事件的发生,完成特定的功能,比如拦截键盘鼠标输入,取屏幕上的文字,监控日志等等。钩子有很多种,每个钩子都可以拦截和处理相应的消息,比如键盘钩子可以拦截键盘消息,shell钩子可以拦截、启动和关闭应用程序消息。图2是全局钩子的示意图。

在实例程序中使用WH_GETMESSAGE钩子,它监视传递到消息队列的Windows消息。


图2全局钩子示意图

3.Windows钩子在这里的应用

钩子安装函数是SetWindowsHookEx,可以用来为整个系统或者某个特定的进程安装钩子。不同的钩子监控特定钩子事件的发生,当事件被触发时,系统会调用相应的代码。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 基于HOOK和MMF的Windows密码渗透技术

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情