qq安全原理

    故事总要有缘由,那么这个故事的缘由就是,当我以前写了一个获取其它进程密码框密码的时候(前几篇博客中有描述),我抱着试一试的心情去试探了一下能不能得到 QQ 的密码,当我抓到密码框的句柄,然后输入给程序的时候,结果令人失望,并没有任何结果,或许这根本就是一个假的密码框。这便激发了我的兴趣,便有了这次探究。

        QQ 的安全密码框果然是下了功夫的。网上搜索相关内容,才发现,以前腾讯用了韩国的技术来保证密码的安全性,但由于涉及到驱动,造成了一部分的不稳定性,所以最后取消掉了这种方法,那么最新的方法是如何做到密码安全呢?这种密码安全是否还有提升的空间呢?我决定试一试。

        首先想到的办法便是键盘钩子,大家都知道,键盘钩子可以监听系统中所有的击键信息,马上编码实现,主要调用为:

[cpp] view plaincopy

  1. HHOOK SetWindowsHookEx(          int idHook,  
  2.     HOOKPROC lpfn,  
  3.     HINSTANCE hMod,  
  4.     DWORD dwThreadId  
  5. );  

        传入的参数是:WH_KEYBOARD

        打开程序监听,目标程序选择了大家不太关注的QQMusic(手头上暂时只有这个程序),打开密码框输入我的密码,结果没有任何有用信息,为什么呢?我们知道如果在钩子链中前面的钩子没有显示调用后面的钩子,后面是得不到信息的,我们能不能把自己的钩子放到最前面呢。有两点需要注意,一,后安装的钩子会在钩子链的最前面,二,我们安装的是普通钩子,还有一种低级的键盘钩子会在其前面执行。那我们直接安装低级钩子并且尽量迟的调用不就行了么。

        程序完成后,我发现,确实可以收到键盘信息了,不过在收到的信息中有许多干扰信息,基于纯理论分析这一做法,可以猜测,肯定有一个定时发送模拟按键消息的 Timer 在执行,去掉这个 Timer,当然就没有了干扰信息。但事情进行的不是那么简单,我发现,每次我接收到的键盘消息并不是我真正按下去的按键,莫非它安装了一个在我前面的钩子,改掉了按键信息?于是我便写了一个程序,去分析当前系统中的钩子的信息,结果如下:

[cpp] view plaincopy

  1. 0x64b012d       0xc2cbf81               QQMusic.exe  
  2. 0x64b012d       0xc2cbf81               QQMusic.exe  
  3. 0x64c012d       0xc2cbf81               QQMusic.exe  
  4. 0x64c012d       0xc2cbf81               QQMusic.exe  
  5. 0x64c012d       0xc2cbf81               QQMusic.exe  
  6. 0x64d012d       0xc2cbf81               QQMusic.exe  
  7. 0x64d012d       0xc2cbf81               QQMusic.exe  
  8. 0x64d012d       0xc2cbf81               QQMusic.exe  
  9. 0x64e012d       0xc2cbf81               QQMusic.exe  
  10. 0x64e012d       0xc2cbf81               QQMusic.exe  
  11. 0x64e012d       0xc2cbf81               QQMusic.exe  
  12. 0x64f012d       0xc2cbf81               QQMusic.exe  
  13. 0x64f012d       0xc2cbf81               QQMusic.exe  
  14. 0x64f012d       0xc2cbf81               QQMusic.exe  
  15. 0x650012d       0xc2cbf81               QQMusic.exe  
  16. 0x650012d       0xc2cbf81               QQMusic.exe  
  17. 0x650012d       0xc2cbf81               QQMusic.exe  
  18. 0x651012d       0xc2cbf81               QQMusic.exe  
  19. 0x651012d       0xc2cbf81               QQMusic.exe  
  20. 0x652012d       0xc2cbf81               QQMusic.exe  
  21. 0x652012d       0xc2cbf81               QQMusic.exe  
  22. 0x652012d       0xc2cbf81               QQMusic.exe  
  23. 0x652012d       0xc2cbf81               QQMusic.exe  
  24. 0x652012d       0xc2cbf81               QQMusic.exe  
  25. 0x652012d       0xc2cbf81               QQMusic.exe  

        第一列便是钩子的句柄值,我是每隔一秒钟扫描一次的,可以清楚的发现,值在不断的变化,那么很容易便可以猜想到,它肯定在不断去设置新的钩子来达到使其在钩子最前端这一效果。那么去掉这个钩子,我们便能够使自己的钩子监听到键盘信息了。

        本文只给出了思路,可以看出,在密码安全这一方面,还是做了不少工夫的,现在密码的安全也越来越受到各个公司的重视,希望能够以此文互相交流,使我们的密码安全做到更好。

时间: 2024-09-27 05:24:58

qq安全原理的相关文章

qq-如何纯java实现类似QQ聊天时候的气泡功能,最好有代码。请给位大神指教

问题描述 如何纯java实现类似QQ聊天时候的气泡功能,最好有代码.请给位大神指教 如何纯java实现类似QQ聊天时候的气泡功能,请给位大神指教一下 解决方案 最近在用Java做一个类似QQ聊天系统 原理:就是给你每次发的消息加一个背景面板panel,每次发送消息,都加载一次,不过这样在聊天框显示比较慢, 暂时我没找到好方法

模仿QQ好友列表的ExpandableListView实现的效

先是在网上找到了一个人的例子,见:http://www.cnblogs.com/chenyingz ... /07/23/2114692.html     其实现和QQ实现原理不太一样,但效果也可以. 我在看其例子后,发现原来和我原来实现的基本一样.只是在有分组上顶时,他使用了Margin实现浮动层的上滚效果.遂想把其从demo转为一个控件类,为以后重用方便. 我的控件类想实现的是,在控件内部获取当前控件所在的父控件对象,然后动态创建一个LinearLayout出来,在滚动时把这个LinearL

jQuery判断复选框是否勾选的原理及示例_jquery

今天要实现一功能就是:复选框勾选时给input表单赋值,复选框取消时将表单值清除. 效果如图:  实现源码:cyfID为复选框的id 复制代码 代码如下: $("#cyfID").click(function(){ var ischeck=$(this).attr("checked"); if(ischeck==undefined){ //清除输入框 alert(""); }else{ //给输入框赋值 alert("qq")

北京朝阳法院正式受理腾讯诉360不正当竞争案

资料图片 中国经济网北京11月3日讯 近日,中国经济网从北京朝阳法院获悉,该院已正式受理腾讯公司诉360涉嫌不正当竞争案."隐私"正式走上公堂,使这场备受关注.牵扯进安全软件行业多家企业的竞争对手之争全面升级. 腾讯公司一举把北京奇虎科技有限公司.奇智软件(北京)有限公司.北京三际无限网络科技有限公司告上法庭.其在起诉书中称,今年9月27日, 360隐私保护器监测了腾讯QQ聊天软件的运行,并利用虚假宣传手段,误导和欺骗用户,诬蔑腾讯QQ窥视用户的隐私,给原告及原告的产品和服务的声誉造成

腾讯正式起诉360不正当竞争

或将启蒙用户网络隐私维权 事件 专家 360"抹黑"QQ遭起诉 9月27日,奇虎及其关联公司通过各种途径传播"360隐私保护器".该隐私保护器直接针对QQ,将QQ安全检查模块的例行安全检查和QQ用户的正常操作列为"QQ窥视用户隐私"行为. 对此,腾讯公司当天发表声明称,该保护器是对腾讯QQ安全功能的误解,但360方面继续通过各种方式扩大事件影响.10月11日,腾讯QQ产品团队发布"关于腾讯QQ被诬蔑'窥视用户隐私'的严正声明"

QQ消息炸弹原理解析及防御方法

什么是QQ消息"炸弹"? 它是指攻击者在瞬间向受害者的QQ发送大量的垃圾信息,开启无数个消息窗口,让QQ应接不暇,从而无法正常使用.由于这种"炸弹"大量占用有限的网络带宽,阻塞网络,所以会导致用户上网速度变慢,当大量的系统资源被占用后,还有可能造成电脑死机.这种消息"炸弹"所发出的QQ消息其实和我们正常聊天时所发出的消息一样,只不过它的内容无意义,发送速度非常短,势如洪水不可抵挡. QQ消息"炸弹"类的攻击软件非常多,具有代表

账号保存-[求助]类似于QQ的记住密码的实现原理

问题描述 [求助]类似于QQ的记住密码的实现原理 现在想要实现自动登录的功能(c#),数据库用的是MySQL. QQ的记住密码功能是如何实现的,他的密码保存在哪里并且是如何调用的? 求指导 解决方案 目前记住密码或自动登录都是基于cookie实现.用户登录时候可以先判断客户端cookie有没有保存如果有就回显密码(当然cookie存密码最好加密)或者直接登录, 相反可以将用户的信息比如加密后密码等存入客户端cookie中. 解决方案二: 存在数据库中,当使用是系统会自动调取资料 解决方案三: 存

安卓软件-QQ设备锁原理获取设备哪些信息

问题描述 QQ设备锁原理获取设备哪些信息 QQ设备锁是根据手机的什么来确定是否为已验证手机,可以登录的.比如说可能获取设备的,IME,机型,等等,具体有哪些 解决方案 机型,串号,Android ID,wifi网卡mac地址,版本,分辨率,内置存储空间大小(/system和/data的大小),CPU版本,CPU核心数,CPU型号,内存RAM大小,基带版本,,,,,,,等等 解决方案二: 获取设备信息获取设备信息

基于P2P思想的QQ蠕虫的原理与防治 附主要源代码

一.背景    以QQ为代表的即时通讯软件,在网络时代迅速而轻易地赢得了无数用户的心,然后以更加惊人的速度普及开去,目前,网络上使用QQ软件的注册人数已经超过1个亿,但树大招风,从今年病毒的发作情况来看,已经有将近100种QQ类型的病毒出现.由此可以看出,利用QQ这类即时通讯工具来进行传播的病毒,已经逐渐成为新病毒的流行趋势.         2002年8月25日,瑞星全球病毒监控中心截获了一个传染能力极强的恶性QQ病毒--"爱情森林"(trojan.sckiss).病毒的制作者利用