揭秘QQ 安全password框的原理
这篇文章也算是朝花夕拾。事实上非常早曾经就知道的原理,如今拿出来和大家交流分享一下。
故事总要有缘由。那么这个故事的缘由就是,当我曾经写了一个获取其他进程password框password的时候(前几篇博客中有描写叙述)。我抱着试一试的心情去试探了一下能不能得到 QQ 的password。当我抓到password框的句柄。然后输入给程序的时候,结果令人失望。并没有不论什么结果,也许这根本就是一个假的password框。
这便激发了我的兴趣,便有了这次探究。
QQ 的安全password框果然是下了功夫的。网上搜索相关内容,才发现。曾经腾讯用了韩国的技术来保证password的安全性,但因为涉及到驱动,造成了一部分的不稳定性,所以最后取消掉了这样的方法,那么最新的方法是怎样做到password安全呢?这样的password安全是否还有提升的空间呢?我决定试一试。
首先想到的办法便是键盘钩子,大家都知道,键盘钩子能够监听系统中全部的击键信息,立即编码实现,主要调用为:
HHOOK SetWindowsHookEx( int idHook, HOOKPROC lpfn, HINSTANCE hMod, DWORD dwThreadId );
传入的參数是:WH_KEYBOARD
打开程序监听,目标程序选择了大家不太关注的QQMusic(手头上临时仅仅有这个程序),打开password框输入我的password,结果没有不论什么实用信息,为什么呢?我们知道假设在钩子链中前面的钩子没有显示调用后面的钩子,后面是得不到信息的,我们能不能把自己的钩子放到最前面呢。有两点须要注意。一。后安装的钩子会在钩子链的最前面。二。我们安装的是普通钩子,另一种低级的键盘钩子会在其前面运行。那我们直接安装低级钩子而且尽量迟的调用不即可了么。
程序完毕后。我发现,确实能够收到键盘信息了。只是在收到的信息中有很多干扰信息。基于纯理论分析这一做法,能够推測。肯定有一个定时发送模拟按键消息的 Timer 在运行,去掉这个 Timer,当然就没有了干扰信息。但事情进行的不是那么简单。我发现。每次我接收到的键盘消息并非我真正按下去的按键。莫非它安装了一个在我前面的钩子,改掉了按键信息?于是我便写了一个程序,去分析当前系统中的钩子的信息,结果例如以下:
0x64b012d 0xc2cbf81 QQMusic.exe 0x64b012d 0xc2cbf81 QQMusic.exe 0x64c012d 0xc2cbf81 QQMusic.exe 0x64c012d 0xc2cbf81 QQMusic.exe 0x64c012d 0xc2cbf81 QQMusic.exe 0x64d012d 0xc2cbf81 QQMusic.exe 0x64d012d 0xc2cbf81 QQMusic.exe 0x64d012d 0xc2cbf81 QQMusic.exe 0x64e012d 0xc2cbf81 QQMusic.exe 0x64e012d 0xc2cbf81 QQMusic.exe 0x64e012d 0xc2cbf81 QQMusic.exe 0x64f012d 0xc2cbf81 QQMusic.exe 0x64f012d 0xc2cbf81 QQMusic.exe 0x64f012d 0xc2cbf81 QQMusic.exe 0x650012d 0xc2cbf81 QQMusic.exe 0x650012d 0xc2cbf81 QQMusic.exe 0x650012d 0xc2cbf81 QQMusic.exe 0x651012d 0xc2cbf81 QQMusic.exe 0x651012d 0xc2cbf81 QQMusic.exe 0x652012d 0xc2cbf81 QQMusic.exe 0x652012d 0xc2cbf81 QQMusic.exe 0x652012d 0xc2cbf81 QQMusic.exe 0x652012d 0xc2cbf81 QQMusic.exe 0x652012d 0xc2cbf81 QQMusic.exe 0x652012d 0xc2cbf81 QQMusic.exe
第一列便是钩子的句柄值。我是每隔一秒钟扫描一次的。能够清楚的发现,值在不断的变化。那么非常easy便能够猜想到,它肯定在不断去设置新的钩子来达到使其在钩子最前端这一效果。
那么去掉这个钩子,我们便能够使自己的钩子监听到键盘信息了。
本文仅仅给出了思路,可以看出,在password安全这一方面。还是做了不少工夫的。如今password的安全也越来越受到各个公司的重视,希望可以以此文互相交流。使我们的password安全做到更好。
相关文章
- 让input支持 ctrl v上传粘贴图片? 让input支持QQ截图或剪切板中的图像数据(Java实现保存)
- 【TYVJ】1338 QQ农场(最大流+最大权闭合图)
- 大量用户反馈 QQ 账号被盗;AirPods Pro2 或支持查找功能;Spring Boot 2.7.1发布|极客头条
- 转载 WPF -- 控件模板 (ControlTemplate)(一) https://blog.csdn.net/qq_23018459/article/details/79899838
- 从QQ运维的历史遗留问题看公司运维的进化过程
- 怎么让别人点击文字“加我为qq好友”就能够加你qq的网页链接
- 仿qq表情输入框
- html 超链接如何跳转至qq聊天
- Ubuntu下安装qq方法及疑难问题解决
- TsFltMgr.sys系统蓝屏的原因就在于QQ电脑管家!
- 截获网易云、酷狗、QQ音乐播放器桌面歌词画面心德
- Android自定义View,高仿QQ音乐歌词滚动控件!
- QQ登录, 腾讯开放平台和QQ互联的坑
- VC调用JavaScript函数--处理QQ网页登录密码加密(空间、农场、WEB QQ等)