简单过QQ的nProtect键盘驱动加密

本文探讨了如何绕过QQ的nProtect键盘驱动加密保护。通过监测WM_SETFOCUS和WM_KILLFOCUS消息,模拟消息来触发nProtect的关闭。此外,利用SetWindowsHookEx Hook键盘钩子,进一步确保在应用层就能拦截和处理加密保护。尽管这种方法在QQ2007的早期版本中有效,但随着版本更新,QQ加强了保护措施,使得这种破解方法可能不再奏效。
摘要由CSDN通过智能技术生成
 

谁都知道nProtect是驱动层的键盘加密保护,
但是这个nProtect也不是时刻接管着我们的键盘,仅仅在用户输入密码的时候才真正启动,
而程序是如何获知用户开始输入密码了呢?
用简单的windows编程方法就能想到,就是处理WM_SETFOCUS消息,
一旦某控件获得焦点windows就会发送WM_SETFOCUS到那个hwnd,
而一旦那个控件失去焦点的时候,nProtect需要关闭,否则就影响到用户的其他输入动作了,很明显这就是处理WM_KILLFOCUS消息。

所以,当你发现某控件获得焦点的时候,你可以无耻的冒充windows发送WM_KILLFOCUS消息,这样nProtect就自动退出保护啦~~~
当然会有其他问题,就是那个Edit控件接收到WM_KILLFOCUS后一闪一闪的光标也停掉了,这个问题有兴趣的自行解决~~~~~

或者用其他的思路,比如你的程序直接冒充qq向它的驱动发送退出保护的消息?这需要调试他的程序来了解是发送什么消息,
我曾把他的内存中的那个消息的值给patch了然后发送个WM_KILLFOCUS叫它退出保护,然后再发送个WM_SETFOCUS,让那个控件又呈现正常的输入状态。
可是它获得WM_SETFOCUS消息后想向驱动发送开启保护的消息已经让我patch了,于是保护一直没启动。

以上是很早前我测试过的,

写这个代码的时候还记得个有趣的猫腻~~~~
郁闷我获得的密码框控件句柄总是不正确,可明明就一个可视的具有密码风格的edit控件啊~~~~~
原来,还有个透明的。何苦呢~~~

在获得正确的密码控件句柄后下面这点代码读取密码效果还不错
asterisk = (char

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值