查看: 3831|回复: 22
收起左侧

[金山] 金山深度技术分析:“Q币大盗”如何诱使你主动交出密码

  [复制链接]
skycai
发表于 2011-12-21 11:27:11 | 显示全部楼层 |阅读模式
本帖最后由 skycai 于 2011-12-21 11:37 编辑

一、基本信息




                                                                                   图1 病毒程序图标

    这是一个以盗Q币为主要目的的盗号木马,采用UPX加壳。
        典型行为:
        1.在登陆QQ的机器上,QQ会莫名其妙的退出;
        2.QQ有的时候会弹出彩色的异常登录提示框,提示用户输入验证码;
        3.QQ的Bin目录下出现MSIMG32.dll、SVulStrong.dat等文件。
        4.如果被盗的QQ里有Q币、Q点,则下手窃取。否则,就不动声色继续潜伏。
        5. 病毒由一个母体文件释放的多个不同文件共同完成盗取Q币或Q点的目的,各病毒组件的结构关系如下图所示:

         



                                                                                图2 盗Q病毒关系结构图

二、概述  
      
        1.病毒通过钩子技术盗取qq的用户名和密码。
        2.查询用户QQ账户信息,查询Q币或Q点,余额不为0的,就盗号,将QQ账户和密码发到病毒服务器。

三、盗QQ母体文件-----21.exe
      
        母体文件行为较为简单:检测qq,如果存在的话则结束qq,并且释放病毒文件到QQ的Bin目录,为盗取QQ及相关财产做前期铺垫工作。
        1.创建名称为“...TM345”的互斥量,如果创建失败,退出自身进程,防止多个实例运行,然后释放该互斥量。
        2.创建进程快照,遍历进程查找是否有QQ.exe或者TM.exe进程运行。
        3.如果没有找到QQ.exe进程,通过注册表判断当前系统是否已经安装qq,并尝试通过注册表获取QQ安装路径。
        病毒遍历注册表项
        HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache下的键值,查找是否有QQ2011、QQ2010、QQ、QQ2009、TM2009的键值信息,用于查看用户是否安装了QQ并找到该目录文件。如果没有找到,会继续创建进程快照查找是否存在qq.exe进程,如果没有找到,会循环遍历进程查找QQ进程。
        4.删除QQ相关记录信息,使得QQ无法自动登录,需手动输入密码。(狡猾的病毒作者用这招来欺骗用户重新输入QQ帐号密码)
        A.如果找到QQ.exe进程,查找QQ安装目录的bin目录下是否存在AutoLogin.dat、msimg32.dll,存在则删除相应文件。
        B.如果有文件C:\ProgramFiles\Tencent\QQ\Users\All Users\QQ\Registry.db,则使用StgOpenStorage函数打开Registry.db文件,获得Main_LoginAccountList,销毁记录,从而再次登录时需要手动输入密码。
        5.在QQ安装目录的bin目录下创建文件msimg32.dll(伪造系统文件)和SVulStrong.dat文件,并设置文件属性为系统隐藏。
       注:QQ启动过程中会优先启动自身目录下的msimg32.dll。
        6.遍历进程查找QQ.exe进程,如果找到,结束该进程;然后继续遍历进程查找QQ.exe进程,查看是否已经结束该进程。
        7.创建进程,以命令行方式删除病毒源文件自身,退出自身进程。
        8.QQ启动过程中,加载木马程序创建的msimg32.dll。

四、盗取QQ密码,查询QQ币信息-----msimg32.dll
      
        此模块为病毒核心模块,主要功能为盗取qq号和密码及对应QQ账号的QQ币、Q点。
        此文件是伪造的系统文件,释放到qq的安装目录下会使得qq运行时自动加载此文件。当用户启动QQ后,伪造的msimg32.dll被QQ加载运行,并执行以下行为:
        1.加载系统真正的msimg32.dll文件
        2.修改qq载入的文件,从而hook关键函数,获得账号密码。
            A.使用多种方法干扰QQ帐号保护模块的正常运行,截取QQ帐号。
            B.在MSIMG32.dll内存块中搜索用户输入的QQ密码。





                                                              图3 Woshimima是病毒成功截取示例QQ登录密码

       3. 传输QQ账号密码,查询q币和q点信息。
           A.检测QQ是否上线成功。
           B.上线成功,则检测当前用户Q币Q点的情况。
        病毒使用URL的方式访问我的钱包,登陆之后查询QQ币信息,把需要的验证码下载到本地,以虚假的异常登陆方式骗取用户输入验证码。
        1)  病毒在后台,偷偷通过URL直接访问“我的钱包”。
        正常情况下,QQ用户这样访问“我的钱包”:点击QQ主程序界面左下角的企鹅图标->所有服务->财付通->我的钱包。如下图所示:



                                                                              图4 正常访问我的钱包

       而病毒程序MSIMG32.dll则通过以下地址(URL),直接访问“我的钱包”
      http://ptlogin2.tenpay.com/clien ... s&ADUIN=%s&ADSESSIO
      https://wallet.tenpay.com/main/c ... n=%s&COOKIE_skey=%s





                                                                     图5 病毒通过Url直接访问我的钱包

       2)查询QQ币信息和QQ点信息。
       A.通过https://www.tenpay.com/cgi-bin/v1.0/getimage.cgi?t=1320%lu获得验证码的图片



                                                                                  图6 通过URl获得相关验证码

       B.获取到验证码的图片之后,会调用另一个病毒文件SVulStrong.dat的相关函数,来诱骗用户输入验证码,然后查询QQ币和QQ点信息。


                                                                          图7 查询Q币Q点信息填写验证码

        通过SVulStrong.dat,创建假冒的QQ异常对话框,诱骗用户输入验证码。(见接下来对病毒组件SVulStrong.dat的分析)
        C.解析相关XML文件,得到Q币Q点信息。
        具体:通过URL可以获得一个包含有Q币Q点等QQ帐户信息的XML文件,通过解析XML文件,即可以得到想要知道的Q币Q点等信息。
        XML中包含以下几个节点:<jifen_balance>15分</jifen_balance><not_check_dirty_list/><qb_balance>0.00个</qb_balance><qb_balance>0.0点</qd_balance><retcode>00</retcode><retmsg>交易成功</retmsg>如果<retmsg>包含“成功的字样”,则证明已成功返回Q币等信息,进而读取节点<qb_balance>(Q币的信息)和<qb_balance>(Q点)的信息。
        4.向病毒服务器发送QQ账号密码。
        A.如果成功返回,则判断QQ币和QQ点是否为零。
        B.不为零,则向病毒服务器发送QQ账号和密码。
        服务器地址为:http://121.10.107.117:8015/kkasdf1/lldfa1.asp,经查证,此IP为淮安市残联,黑客霸占了这台服务器,用来收集盗窃来的QQ帐号密码。

五、创建假冒QQ异常登陆框,获取验证码

    此文件功能较为简单,主要就是弹出假冒的QQ异常框。
    参考下图可以识别“帐号存在异常”对话框的真假,其中彩色验证码图片为假:



                                                           图8 病毒弹出的QQ异常对话框与正常对话框的对比

六、技术点剖析     
  
       1. 释放虚假的系统文件msimg32.dll到qq目录中,使得QQ自动加载,运行病毒。
       2.然后通过挂接键盘输入来截取用户输入的帐号密码,同时修改QQ安全保护相关代码,破坏qq的密码保护机制。
       3.获得账号密码之后,后台偷偷查询Q币、Q点信息,再欺骗用户填写验证码。将Q点或Q币余额不为零的帐号密码发送到黑客服务器。
       4.病毒突破了qq的密码保护,在同类病毒中尚不多见。


ll82wz
发表于 2011-12-21 11:34:59 来自手机 | 显示全部楼层
非常完整,不错,支持个
itcql
发表于 2011-12-21 11:39:05 | 显示全部楼层
详细,不错
seehere
发表于 2011-12-21 11:51:58 | 显示全部楼层
嗯,比较详细的介绍
wudiwusuowei
头像被屏蔽
发表于 2011-12-21 12:09:14 | 显示全部楼层
不错,过来瞻仰一下。。
qwe12301
发表于 2011-12-21 12:40:15 | 显示全部楼层
这木马牛逼啊。。
tomochan
发表于 2011-12-21 12:42:37 | 显示全部楼层
所以这类木马金山已经可以拦截了对不...
迷惘的执著
发表于 2011-12-21 13:00:38 | 显示全部楼层
学习下~
22667999
发表于 2011-12-21 13:11:20 | 显示全部楼层
还好不用qq。。。不然就被盗了了。
happybaihe6666
发表于 2011-12-21 13:30:03 | 显示全部楼层
希望能多点这样的帖子
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2025-1-22 16:12 , Processed in 0.164155 second(s), 16 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表