Nisy 发表于 2007-9-3 19:06:47

键盘记录器 7.1 简单分析

软件大小:142KB
软件类别:国产软件/系统监视
下载次数: 软件授权:共享版
软件语言:简体中文
运行环境:Win9x/Me/NT/2000/XP/2003
更新时间:2007-9-3 16:53:56
联 系 人:pass_killer163.com

华军下载:http://nmas.onlinedown.net/soft/50911.htm


下载测试了一下 杀软果然不杀, 但我QQ的密码也没被他记录下来呀 /:017莫非放到其他地方了? 还好我的防火墙没有任何提示~~

monitor.exe 这个就是验证是否注册的程序 OD附加 找到如下记录点:



00402E96    6A FF         push    -1
00402E98    68 D0824200   push    004282D0
00402E9D    50            push    eax
00402E9E    64:8925 0000000>mov   dword ptr fs:, esp
00402EA5    83EC 08         sub   esp, 8
00402EA8    55            push    ebp
00402EA9    56            push    esi
00402EAA    57            push    edi
00402EAB    8BE9            mov   ebp, ecx
00402EAD    E8 1E110000   call    00403FD0
00402EB2    8BF8            mov   edi, eax
00402EB4    85FF            test    edi, edi
00402EB6    0F84 DC000000   je      00402F98
00402EBC    E8 9F0B0000   call    00403A60
00402EC1    8BF0            mov   esi, eax
00402EC3    85F6            test    esi, esi
00402EC5    0F84 CD000000   je      00402F98
00402ECB    A1 90454300   mov   eax, dword ptr
00402ED0    894424 10       mov   dword ptr , eax
00402ED4    C74424 1C 00000>mov   dword ptr , 0
00402EDC    894424 0C       mov   dword ptr , eax
00402EE0    8D4424 10       lea   eax, dword ptr
00402EE4    8D8D 98000000   lea   ecx, dword ptr
00402EEA    50            push    eax
00402EEB    C64424 20 01    mov   byte ptr , 1
00402EF0    E8 68AD0100   call    0041DC5D
00402EF5    8D4C24 0C       lea   ecx, dword ptr
00402EF9    51            push    ecx
00402EFA    8D4D 5C         lea   ecx, dword ptr
00402EFD    E8 5BAD0100   call    0041DC5D                                    ; 在这里
00402F02    8B4424 10       mov   eax, dword ptr
00402F06    8B16            mov   edx, dword ptr
00402F08    50            push    eax
00402F09    56            push    esi
00402F0A    FF52 10         call    dword ptr
00402F0D    8B5424 0C       mov   edx, dword ptr
00402F11    8B0E            mov   ecx, dword ptr
00402F13    52            push    edx
00402F14    56            push    esi
00402F15    FF51 14         call    dword ptr
00402F18    8B06            mov   eax, dword ptr
00402F1A    56            push    esi
00402F1B    FF50 18         call    dword ptr                             // 跟进该CALL
00402F1E    84C0            test    al, al                                    ; 标志位比较
00402F20    6A 00         push    0
00402F22    75 13         jnz   short 00402F37                              ; 不跳则挂
00402F24    68 98384300   push    00433898                                    ; ASCII "Warning"
00402F29    68 84384300   push    00433884
00402F2E    8BCD            mov   ecx, ebp
00402F30    E8 DEB80100   call    0041E813
00402F35    EB 3C         jmp   short 00402F73
00402F37    68 78384300   push    00433878                                    ; ASCII "Infomation"
00402F3C    68 6C384300   push    0043386C
00402F41    8BCD            mov   ecx, ebp
00402F43    E8 CBB80100   call    0041E813
00402F48    8B0F            mov   ecx, dword ptr
00402F4A    68 5C384300   push    0043385C                                    ; ASCII "keyboardlog.ini"
00402F4F    57            push    edi
00402F50    FF51 10         call    dword ptr
00402F53    8B4424 10       mov   eax, dword ptr
00402F57    8B17            mov   edx, dword ptr
00402F59    50            push    eax
00402F5A    68 50384300   push    00433850                                    ; ASCII "UserName"
00402F5F    57            push    edi
00402F60    FF52 1C         call    dword ptr
00402F63    8B5424 0C       mov   edx, dword ptr
00402F67    8B0F            mov   ecx, dword ptr
00402F69    52            push    edx
00402F6A    68 44384300   push    00433844                                    ; ASCII "UserCode"
00402F6F    57            push    edi
00402F70    FF51 1C         call    dword ptr
00402F73    8B07            mov   eax, dword ptr
00402F75    57            push    edi
00402F76    FF50 04         call    dword ptr
00402F79    8D4C24 0C       lea   ecx, dword ptr
00402F7D    C64424 1C 00    mov   byte ptr , 0
00402F82    E8 00D40100   call    00420387
00402F87    8D4C24 10       lea   ecx, dword ptr
00402F8B    C74424 1C FFFFF>mov   dword ptr , -1
00402F93    E8 EFD30100   call    00420387
00402F98    8BCD            mov   ecx, ebp
00402F9A    E8 DE9C0100   call    0041CC7D
00402F9F    8B4C24 14       mov   ecx, dword ptr
00402FA3    5F            pop   edi
00402FA4    5E            pop   esi
00402FA5    5D            pop   ebp
00402FA6    64:890D 0000000>mov   dword ptr fs:, ecx
00402FAD    83C4 14         add   esp, 14
00402FB0    C3            retn


跟进关键CALL 00402F1B:

00403B60    E8 CB000000   call    00403C30
00403B65    8BF0            mov   esi, eax
00403B67    85F6            test    esi, esi                                    ; monitor.00438448
00403B69    75 09         jnz   short 00403B74
00403B6B    32C0            xor   al, al
00403B6D    5E            pop   esi
00403B6E    83C4 0C         add   esp, 0C
00403B71    C2 0400         retn    4

小做修改 使AL返回数值为01:

00403B67    85F6            test    esi, esi                                    ; monitor.00438448
00403B69    32C0            xor   al, al
00403B6B    FEC0            inc   al
00403B6D    5E            pop   esi
00403B6E    83C4 0C         add   esp, 0C
00403B71    C2 0400         retn    4


最后一步 生成破解DLL文件 放到原目录即可成为注册版

简单提示下: 作者的设计思路应该是这样的 做一个时间函数 然后每到一分钟后检测一下是否注册 若不注册则弹出注册对话框 不妨这样做一些验证思路的修改每隔1分钟,10分钟,半小时,一小时,5小时来做一次验证,/:017这样的话 就得逼迫调试者来分析算法了 时间有限 不再弄这程序了 只是好奇想测试下杀软是否杀它而已.

Nisy 发表于 2007-9-3 19:10:38

PS: 没事别装这种程序/:017

pw2000 发表于 2007-9-3 20:23:00

谢谢Nisy大哥分享。

Nisy 发表于 2007-9-4 07:45:00

以上的是搞定不再弹出对话框 还有一处验证 由于是调用我们修改后的CALL 所以此暗桩飞走~~


004031C7    E8 040E0000   call    00403FD0
004031CC    8BF0            mov   esi, eax
004031CE    85F6            test    esi, esi
004031D0    74 42         je      short 00403214
004031D2    8B06            mov   eax, dword ptr
004031D4    68 5C384300   push    0043385C                         ; keyboardlog.ini
004031D9    56            push    esi
004031DA    FF50 10         call    dword ptr
004031DD    8B0E            mov   ecx, dword ptr
004031DF    8D5424 04       lea   edx, dword ptr
004031E3    68 80000000   push    80
004031E8    52            push    edx
004031E9    6A 00         push    0
004031EB    68 50384300   push    00433850                         ; UserName
004031F0    56            push    esi
004031F1    FF51 18         call    dword ptr
004031F4    8B06            mov   eax, dword ptr
004031F6    8D8C24 84000000 lea   ecx, dword ptr
004031FD    68 80000000   push    80
00403202    51            push    ecx
00403203    6A 00         push    0
00403205    68 44384300   push    00433844                         ; UserCode
0040320A    56            push    esi
0040320B    FF50 18         call    dword ptr
0040320E    8B16            mov   edx, dword ptr
00403210    56            push    esi
00403211    FF52 04         call    dword ptr
00403214    E8 47080000   call    00403A60
00403219    8BF0            mov   esi, eax
0040321B    85F6            test    esi, esi
0040321D    74 2B         je      short 0040324A
0040321F    8B06            mov   eax, dword ptr
00403221    8D4C24 04       lea   ecx, dword ptr
00403225    51            push    ecx
00403226    56            push    esi
00403227    FF50 10         call    dword ptr
0040322A    8B16            mov   edx, dword ptr
0040322C    8D8424 84000000 lea   eax, dword ptr
00403233    50            push    eax
00403234    56            push    esi
00403235    FF52 14         call    dword ptr
00403238    8B0E            mov   ecx, dword ptr
0040323A    56            push    esi
0040323B    FF51 18         call    dword ptr                ; 这里就是访问我们的修改的关键CALL
0040323E    84C0            test    al, al                           ; 得到返回数值为AL=1
00403240    75 08         jnz   short 0040324A
00403242    5E            pop   esi
00403243    81C4 00010000   add   esp, 100
00403249    C3            retn
0040324A    B0 01         mov   al, 1
0040324C    5E            pop   esi
0040324D    81C4 00010000   add   esp, 100
00403253    C3            retn

VC8 发表于 2007-9-4 07:50:58

占个沙发,好好学习,感谢分享:loveliness:

dreamz 发表于 2007-9-4 07:52:37

好帖子哇,学习一下/:good

wck 发表于 2007-9-4 08:14:46

感谢分享

网际飞鹰 发表于 2007-9-5 14:56:41

学习了一下,,很好的教程 ,,谢谢老大

youcn28 发表于 2007-9-13 22:17:35

谢谢分享,受用。。。

iXie5 发表于 2007-9-14 12:28:07

不错哦 .应该支持下下.,,
页: [1]
查看完整版本: 键盘记录器 7.1 简单分析