VAX v10.8.2029.0-BRD补丁分析 【转载请注明出处】

使用Beyond Compare比较Patch前后 VA_X.dll文件的变化:


ShellCode分析:

1F62D3C7    . -   E9   346C0A00              JMP   VA_X.1F6D4000                                      ;  Jmp to ShellCode

1F6D4000      >   \ 60                       PUSHAD                                                  ;  ShellCode Start
1F6D4001    .    9C                         PUSHFD
1F6D4002    .    8B4C24   24                  MOV   ECX ,DWORD   PTR   SS :[ ESP + 0x24 ]
1F6D4006    .    8139   4F757470              CMP   DWORD   PTR   DS :[ ECX ], 0x7074754F        ;  if OutputDebugStringA
1F6D400C    .    75   1A                      JNZ   SHORT   VA_X.1F6D4028
1F6D400E    .    8179   04   75744465           CMP   DWORD   PTR   DS   :[ ECX + 0x4 ], 0x65447475
1F6D4015    .    75   11                      JNZ   SHORT   VA_X.1F6D4028
1F6D4017    .    8179   08   62756753           CMP   DWORD   PTR   DS   :[ ECX + 0x8 ], 0x53677562
1F6D401E    .    75   08                      JNZ   SHORT   VA_X.1F6D4028
1F6D4020    .  C74424   20   58406D1F         MOV   DWORD   PTR   SS   :[ ESP + 0x20 ], VA_X.1F6D4058
1F6D4028      >     8139   56697274            CMP   DWORD   PTR   DS :[ ECX ], 0x74726956         ;  if VirtualProtect
1F6D402E    .    75   1A                      JNZ   SHORT   VA_X.1F6D404A
1F6D4030    .    8179   04   75616C50           CMP   DWORD   PTR   DS   :[ ECX + 0x4 ], 0x506C6175
1F6D4037    .    75   11                      JNZ   SHORT   VA_X.1F6D404A
1F6D4039    .    8179   08   726F7465           CMP   DWORD   PTR   DS   :[ ECX + 0x8 ], 0x65746F72
1F6D4040    .    75   08                      JNZ   SHORT   VA_X.1F6D404A
1F6D4042    .  C74424   20   8B406D1F         MOV   DWORD   PTR   SS   :[ ESP + 0x20 ], VA_X.1F6D408B
1F6D404A      >     9D                       POPFD
1F6D404B    .    61                         POPAD
1F6D404C    .    8945   E4                 MOV   DWORD   PTR   SS :[ EBP - 0x1C ], EAX                     
1F6D404F    .    837D   E4   00               CMP   DWORD   PTR   SS :[ EBP - 0x1C ], 0x0
1F6D4053    . -   E9   7493F5FF              JMP   VA_X.1F62D3CC

1F6D4058    .    8B0424                         MOV   EAX ,DWORD   PTR   SS :[ ESP ]                 ;  Hook OutputDebugStringA
1F6D405B    .    8178   1E   33511433               CMP   DWORD   PTR   DS   :[ EAX + 0x1E ], 0x33145133
1F6D4062    .    75   23                          JNZ   SHORT   VA_X.1F6D4087
1F6D4064    .  C745 EC C0BA3066            MOV   DWORD   PTR   SS   :[ EBP - 0x14 ], 0x6630BAC0      ;  !! Patch CRC
1F6D406B    .  C745 E4   3457866C               MOV   DWORD   PTR   SS   :[ EBP - 0x1C ], 0x6C865734
1F6D4072    .  C745 E0   73B888F5               MOV   DWORD   PTR   SS   :[ EBP - 0x20 ], 0xF588B873
1F6D4079    .  C745 DC CD9D2AE0            MOV   DWORD   PTR   SS   :[ EBP - 0x24 ], 0xE02A9DCD
1F6D4080    .  C745 D8   13BB96E8               MOV   DWORD   PTR   SS   :[ EBP - 0x28 ], 0xE896BB13
1F6D4087      >     33C0                         XOR   EAX , EAX                                            
1F6D4089    .    40                             INC   EAX                                                
1F6D408A    .  C3                          RETN

1F6D408B    .  C64424   0C   40                   MOV   BYTE   PTR   SS :[ ESP + 0xC ], 0x40                   ;  Hook VirtualProtect
1F6D4090    .    833D   0010D01E   00               CMP   DWORD   PTR   DS   :[ 0x1ED01000 ], 0x0
1F6D4097    .    74   1B                          JE   SHORT   < JMP. &   KERNEL32.VirtualProtect >
1F6D4099    .  C705 DFC2D81E   33C040E9         MOV   DWORD   PTR   DS   :[ 0x1ED8C2DF ], 0xE940C033      ;  Patch-1
1F6D40A3    .  C705 E3C2D81E   39060000         MOV   DWORD   PTR   DS   :[ 0x1ED8C2E3 ], 0x639
1F6D40AD    .  C605   316AE01E   32               MOV   BYTE   PTR   DS   :[ 0x1EE06A31 ], 0x32              ;  Patch-2
1F6D40B4      >-   FF25   34426E1F                JMP   DWORD   PTR   DS   :[<& KERNEL32.VirtualProtect >]  

Patch-1:
1ED8C2DF     8D   45   B0   68   5C   42   29   1F                           
1ED8C2DF       8D45   B0                   LEA   EAX ,DWORD   PTR   SS :[ EBP - 0x50 ]
1ED8C2E2       68   5C42291F                  PUSH   VA_X.1F29425C                                   
-->
1ED8C2DF     33   C0   40   E9   39   06   00   00                           
1ED8C2DF       33C0                             XOR   EAX , EAX
1ED8C2E1       40                               INC   EAX            
1ED8C2E2     E9   39060000                      JMP   VA_X.1ED8C920         ; skip initial Lic Check                                  



Patch-2:

1EE06A30     7F   14                                              
1EE06A30      / 7F   14                        JG   SHORT   VA_X.1EE06A46         
->
1EE06A30     7F   32      
1EE06A30      / 7F   32                       JG   SHORT   VA_X.1EE06A64         ; Fuck "Trial Extension Mode"


About对话框显示信息分析:

在注册表中设置如下信息:

[HKEY_CURRENT_USER\Software\Whole Tomato\Visual Assist X]
"UserKey"=" You will never defeat the riddle of the Black Riders... "
"UserName"="xxxx"

BRD补丁会设置上述两个键值,其中UserKey项为BRD的广告;UserName项为在Patch界面输入的内容,默认为主机名。

按照VAX的设计,如果检测显示已授权的话,则从注册表中读取信息并在About对话框中显示。将检测机制暴破掉以后,只需保证 UserKey和UserName的均为非空字符串即可。
BRD补丁Patch-2的作用就是干预下UserName的显示,抑制"Trial Extension Mode"信息的显示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值