冥界3大法王 发表于 2016-6-16 13:20

给IDA 5.5 做手术 系列之一:



楼下肯定会问,楼主为啥不用最新版本的? 非要用老版本的?
原因1:老版本的运行速度快
原因2:老版本的界面字体大,楼主看得舒服
原因3:老的配套的教程稍微多点
原因4:老的尚且还没把功能研究明白呢,还用新的岂不是浪费?


为啥修改以下内容?纯属D痛好了(楼主使用系统在影子模式下,不想让程序过多的修改注册表之类的,要全权全权自己做主,好么?再有为了让程序让自己的意愿运行,不想出的对话框一个不要,把神器折腾的顺手才用得舒服好不?)



static/image/hrline/line3.png




干掉IDA 启动的对话框


00402376 .E8 81A40600   call idag.0046C7FC 这句F8 就过了,必须进入(F7)


0046C9C7|.E8 6C080800   call idag.004ED238                                           ;这句没出
0046C9CC|.8A55 C3       mov dl,byte ptr ss:
0046C9CF|.84D2          test dl,dl
0046C9D1      75 07         jnz short idag.0046C9DA                                    ;ZF为1 果然跳过,所以JMP
0046C9D3|.8A4D C2       mov cl,byte ptr ss:
0046C9D6|.84C9          test cl,cl
0046C9D8|.74 04         je short idag.0046C9DE
0046C9DA|>33C0          xor eax,eax
0046C9DC|.EB 05         jmp short idag.0046C9E3
0046C9DE|>B8 01000000   mov eax,0x1
0046C9E3|>E8 84160300   call idag.0049E06C                                           ;就是这句出来的对话框(同时也是叫你授权一下点击的对话框)




ctrl+F8 下来后
0049E5D4|.E8 EB0C0200   call idag.004BF2C4 这里出来的license user字样(寄存器中
继续的话 出来了



004BF384|. /74 0B         je short idag.004BF391
004BF386|. |68 DBC75900   push idag.0059C7DB                                           ;ASCII "You have to agree with the license in order to use IDA Pro"
004BF38B|. |E8 DC40F5FF   call idag.0041346C
004BF390|. |59            pop ecx
004BF391|> \6A 00         push 0x0
004BF393|.8D85 D0FAFFFF lea eax,
004BF399|.B9 01000000   mov ecx,0x1
004BF39E|.B2 01         mov dl,0x1
004BF3A0|.E8 CF520300   call idag.004F4674
004BF3A5|>8B55 D4       mov edx,
004BF3A8|.8BC7          mov eax,edi
004BF3AA|.E8 E1500200   call idag.004E4490
004BF3AF|.8B4D D8       mov ecx,
004BF3B2|.64:890D 00000>mov dword ptr fs:,ecx
004BF3B9|.5F            pop edi
004BF3BA|.5E            pop esi
004BF3BB|.5B            pop ebx
004BF3BC|.8BE5          mov esp,ebp
004BF3BE|.5D            pop ebp                  ;F2 (我们点完同意后,会来到这里,我们的目的让程序自已点同意而不是跳过
004BF3BF\.C3            retn






004BF371|.E8 FE790A00   call idag.00566D74
004BF376|.A1 38035C00   mov eax,dword ptr ds:
004BF37B|.8B10          mov edx,dword ptr ds:
004BF37D      FF92 E8000000 call dword ptr ds:          ;这句出来的 那个授权要点击的 对话 2
004BF383|.48            dec eax                               ;kernel32.BaseThreadInitThunk
004BF384|.74 0B         je short idag.004BF391                ;nop掉之后 还是出,点agree后来到这里!
004BF386|.68 DBC75900   push idag.0059C7DB                  ;ASCII "You have to agree with the license in order to use IDA Pro"





所以我们这么改:

我们直接在在那个对话框3的call上 JMP到 push的那句上







0046C9E3|> \E8 84160300   call idag.0049E06C                                           ;就是这句出来的对话框1,内有对话框2
0046C9E8|.8B15 440A5D00 mov edx,dword ptr ds:[<&vcl60.Forms::Application>]         ;vcl60.Forms::Application
0046C9EE|.8B0A          mov ecx,dword ptr ds:
0046C9F0|.8A81 9C000000 mov al,byte ptr ds:
0046C9F6|.84C0          test al,al
0046C9F8|.74 07         je short idag.0046CA01
0046C9FA|.6A 00         push 0x0
0046C9FC|.E8 5BD30F00   call <jmp.&IDA.qexit>
0046CA01|>6A 00         push 0x0
0046CA03|.8B15 CCC05B00 mov edx,dword ptr ds:                              ;idag._IdaWindow
0046CA09|.8B02          mov eax,dword ptr ds:
0046CA0B|.E8 78BD0F00   call <jmp.&vcl60.Controls::TWinControl::GetHandle>
0046CA10|.50            push eax                                                   ; |hWnd = NULL
0046CA11|.E8 00DB0F00   call <jmp.&USER32.EnableWindow>                              ; \EnableWindow
0046CA16|.66:C745 D4 20>mov word ptr ss:,0x20
0046CA1C|.C645 F0 02    mov byte ptr ss:,0x2
0046CA20|.33D2          xor edx,edx
0046CA22|.8B0D DCC05B00 mov ecx,dword ptr ds:                              ;idag._FOptions
0046CA28|.8955 F1       mov dword ptr ss:,edx
0046CA2B|.FF45 E0       inc
0046CA2E|.66:C745 D4 2C>mov word ptr ss:,0x2C
0046CA34|.8B01          mov eax,dword ptr ds:
0046CA36|.8B90 B0040000 mov edx,dword ptr ds:
0046CA3C|.8A4A 57       mov cl,byte ptr ds:
0046CA3F|.84C9          test cl,cl
0046CA41|.74 26         je short idag.0046CA69
0046CA43|.8D4D F0       lea ecx,
0046CA46|.BA A93D5800   mov edx,idag.00583DA9                                        ;ASCII "count(/ida/templates/category/template)"
0046CA4B|.B8 B4095C00   mov eax,idag.005C09B4
0046CA50|.E8 234C0800   call idag.004F1678
0046CA55|.84C0          test al,al
0046CA57|.74 10         je short idag.0046CA69
0046CA59|.0FBE45 F0   movsx eax,byte ptr ss:
0046CA5D|.83F8 02       cmp eax,0x2
0046CA60|.75 07         jnz short idag.0046CA69
0046CA62|.8B55 F1       mov edx,dword ptr ss:
0046CA65|.85D2          test edx,edx
0046CA67|.7F 04         jg short idag.0046CA6D
0046CA69|>33D2          xor edx,edx
0046CA6B|.EB 05         jmp short idag.0046CA72
0046CA6D|>BA 01000000   mov edx,0x1
0046CA72|>A1 CCC05B00   mov eax,dword ptr ds:
0046CA77|.8B08          mov ecx,dword ptr ds:
0046CA79|.8B81 F4020000 mov eax,dword ptr ds:
0046CA7F|.E8 5AB80F00   call <jmp.&vcl60.Actnlist::TCustomAction::SetVisible>
0046CA84|.8A55 C3       mov dl,byte ptr ss:
0046CA87|.84D2          test dl,dl
0046CA89|.75 0E         jnz short idag.0046CA99
0046CA8B|.8A4D C2       mov cl,byte ptr ss:
0046CA8E|.84C9          test cl,cl
0046CA90|.75 07         jnz short idag.0046CA99
0046CA92|.E8 11280300   call idag.0049F2A8                                           ;出来第3个对话框



0049F2A8/$55            push ebp
0049F2A9|.8BEC          mov ebp,esp
0049F2AB|.83C4 D0       add esp,-0x30
0049F2AE|.53            push ebx
0049F2AF|.56            push esi
0049F2B0|.B8 A4455900   mov eax,idag.005945A4
0049F2B5|.E8 BE620B00   call idag.00555578
0049F2BA|.6A 00         push 0x0
0049F2BC|.B8 1DBB5A00   mov eax,idag.005ABB1D               ;ASCII "DisplayWelcome"
0049F2C1|.B9 01000000   mov ecx,0x1
0049F2C6|.33D2          xor edx,edx
0049F2C8|.E8 A7530500   call idag.004F4674
0049F2CD|.85C0          test eax,eax
0049F2CF|.0F95C0      setne al
0049F2D2|.83E0 01       and eax,0x1
0049F2D5|.84C0          test al,al
0049F2D7      0F84 6A010000 je idag.0049F447                      ;这句如果 jmp的话 就直接 进到IDA调试器里边去了


总结:
调试上面这段程序时我们要配合Revo Uninstaller Pro的清空注册表操作

static/image/hrline/1.gif
下一部预告: 自动复选框 挑勾,不想要的对话框再继续折腾。















凡凡之呗 发表于 2016-6-16 13:25

感觉可以申请精华啊

冥界3大法王 发表于 2016-6-16 13:36


这些全是比较D痛和不顺眼的。


这里默认我要它自己 主动 挑上勾勾

anda789 发表于 2016-6-16 13:45

对于我小白来说我只能顶贴赞一个了、、、、
膜拜啊

LOVE_TT 发表于 2016-6-16 14:03

问一下大神 IDA 没有保护吗?{:1_937:}

KevINBy 发表于 2016-6-16 14:30

学习学习

a2523188267 发表于 2016-6-16 14:35

感谢大神

天坑霸气 发表于 2016-6-16 15:20

感谢分享收藏了

朱朱你堕落了 发表于 2016-6-16 15:33

有时间的话,楼主做几课IDA基本使用的教程吧。{:301_997:}

枫恋蓝点 发表于 2016-6-16 16:31

楼主的草莓蛮诱人的
页: [1] 2
查看完整版本: 给IDA 5.5 做手术 系列之一: