飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2165|回复: 2

UPX+IAT加密的问题

[复制链接]
  • TA的每日心情
    开心
    2018-2-26 08:32
  • 签到天数: 19 天

    [LV.4]偶尔看看III

    发表于 2006-2-26 12:03:35 | 显示全部楼层 |阅读模式
    我是新手,正在学习脱壳,有几个问提请教各位大侠。

    PEiD 查壳:UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo

    OD载入 有提示:……可能被压缩,加密,或包含大量的嵌入数据……。
    选“否”来到:

    0057BE60 >  60              PUSHAD          壳入口关键词:PUSHAD
    0057BE61    BE 00404800     MOV ESI,TGL.00484000
    0057BE66    8DBE 00D0B8FF   LEA EDI,DWORD PTR DS:[ESI+FFB8D000]

    bp LoadLibraryA

    7C801D77 >  8BFF            MOV DI,EDI       ; 断在此
    7C801D79    55              PUSH EBP

    F2   Alt+F9  

    0057BF9C    95              XCHG EAX,EBP    返回程序领空后在此
    0057BF9D    8A07            MOV AL,BYTE PTR DS:[EDI]
    0057BF9F    47              INC EDI
    0057BFA0    08C0            OR AL,AL
    0057BFA2  ^ 74 DC           JE SHORT TGL.0057BF80
    ……中间省略部分代码……
    0057BFF1  ^ EB E2           JMP SHORT TGL.0057BFD5     回跳
    0057BFF3    61              POPAD           关键词:POPAD
    0057BFF4  - E9 9F22C9FF     JMP TGL.0020E298           跳往 OEP

    OllyDump脱壳

    0020E298    55              PUSH EBP       JMP 飞到此
    0020E299    8BEC            MOV EBP,ESP
    0020E29B    B9 06000000     MOV ECX,6
    0020E2A0    6A 00           PUSH 0
    0020E2A2    6A 00           PUSH 0
    0020E2A4    49              DEC ECX

    OllyDump脱壳后:
    PEiD 再查:Borland Delphi 4.0 - 5.0

    有几个问题请教:
    1.这样脱壳正确吗?0020E298处是OEP吗?
    2.有自校验,IAT加密,ImportREC不能重建输入表,是否一定要重建输入表后才能去除有自校验。
    3.在脱壳后的文件中作如下改动后:
    00066AE4    E8 AB85FBFF     CALL zh.0001F094
    00066AE9    84C0            TEST AL,AL
    00066AEB    74 07           JE SHORT zh.00066AF4  JE 改成 JNE
    00066AED    6A 00           PUSH 0
    00066AEF    E8 8022FBFF     CALL <JMP.&USER32.PostQuitMessage>
    00066AF4    C3              RET         
     程序可以运行了,但不能退出,退出时出错,能提示一下问题出在什么地方吗?
    4.在0020E298处(我以为是OEP)处,光标往上拖动一下想看上面的代码,代码就变成如下:
    0020E285    DC20            FSUB QWORD PTR DS:[EAX]
    0020E287    00C4            ADD AH,AL
    0020E289    DC20            FSUB QWORD PTR DS:[EAX]
    0020E28B    0094DC 20000000 ADD BYTE PTR SS:[ESP+EBX*8+20],DL
    0020E292    0000            ADD BYTE PTR DS:[EAX],AL
    0020E294    EC              IN L,DX           
    0020E295    DC20            FSUB QWORD PTR DS:[EAX]
    0020E297    0055 8B         ADD BYTE PTR SS:[EBP-75],DL
    0020E29A    EC              IN L,DX                   ; I/O 命令
    0020E29B    B9 06000000     MOV ECX,6
    0020E2A0    6A 00           PUSH 0
    0020E2A2    6A 00           PUSH 0
    0020E2A4    49              DEC ECX

    0020E298不见了,不知是什么原因。


    希望能得到高手的指点,先谢了。

    [ 本帖最后由 wzwgp 于 2006-2-26 04:08 编辑 ]
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2006-3-14 20:24:05 | 显示全部楼层
    脱壳正确,OEP也正确,这个文件会自己修改PE,脱壳的时候尽量使用LOADPE来脱壳,所以,你不能重建输入表是很正常的,再者,你修改这个文件的时候由于没有使用LOADPE脱壳,改动的话,肯定是要出问题的...偶也是刚刚开始学脱壳的,才学到FSG,不知能否知你的联系方式

    [ 本帖最后由 CorpUlent 于 2006-3-14 12:27 编辑 ]
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2018-2-26 08:32
  • 签到天数: 19 天

    [LV.4]偶尔看看III

     楼主| 发表于 2006-3-15 09:08:25 | 显示全部楼层
    谢谢提示,不知你要我的哪种联系方式,可以给我发短信和邮件,我估计我找到的OEP不对。
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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