首页
社区
课程
招聘
PECompact壳的问题
发表于: 2004-6-19 12:28 5915

PECompact壳的问题

2004-6-19 12:28
5915
我按照fly兄的脱PECompact的dll文件方法
http://bbs.pediy.com/showthread.php?s=&threadid=1248&highlight=PECompact
去脱一个ocx的文件,确实和fly兄说的样式一样,但我的
是1111F000 > EB 06            JMP SHORT kk.1111F008
1111F002   68 1C7F0000      PUSH 7F1C
1111F007   C3               RETN
1111F008   9C               PUSHFD
1111F009   60               PUSHAD
1111F00A   E8 02000000      CALL kk.1111F011
我按fly兄在11007f1c上下断点,但下断点就会提示
checksum failure!
this executable is corrupt!please obtain a new copy.
如果不下断点,却能正常初始化了,是怎么回事?
我用的是ollydbg 1.10汉化版.

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 4
支持
分享
最新回复 (9)
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
2
你可以在11007f1c转存处下内存断点或硬件断点看看
2004-6-19 13:39
0
雪    币: 226
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
硬件中断成了,剩下的按你说的在试
2004-6-19 13:55
0
雪    币: 226
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
随便从程序找一个API调用,如:
100095C4 FF15 60B10110 call dword ptr ds:[1001B160]; kernel32.GetVersion
在转存中跟随1001B160,上下看到许多函数地址,很明显的可以找到IAT开始和结束的地址:

这段话我不怎么理解啊,"随便从程序找一个API调用"这段话怎么操作完成,我对ollydbg的这种用法不清楚.
另外我用硬件中断后,是否就可以象你说的那样用lordpe进行Dump了.
2004-6-19 14:21
0
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
5
1、1001B160这个地址是IAT其中一个地址,你只要转存到这个地址,你就会看到很多像这样的代码:1001B160 jmp Kernel32.GetVersion。这些都是IAT地址,在这里你可以分析出程序的IAT大小。
2、不能,用硬件断点中断只是接近入口点,但还未到入口点。而用LorePE软件Dump程序时必须先找到入口点才能Dump程序。
2004-6-19 14:53
0
雪    币: 226
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
在11007f1c下硬件中断还不能dump吗,可按fly兄的说法11007f1c就是oep处啊.
另外,我在11007f1c处中断后重分析我发现该ocx是用vb编写的,IAT标志好像不同啊.
另外附上一个我写的vb的ocx控件,没有加壳的.能告诉我哪到哪是IAT吗?
标志是什么?小弟在此先谢谢了.

点击下载:附件!
2004-6-19 15:10
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
7
上面都是函数呀
看看《加密与解密》2吧
2004-6-19 15:24
0
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
8
不对,看图上说OEP应该是1100153D:D
2004-6-19 15:27
0
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
9
以下都是IAT
11001000 > .  06880F66      DD MSVBVM60._CIcos
11001004 > .  79FE0E66      DD MSVBVM60._adj_fptan
11001008 > .  4CEA0F66      DD MSVBVM60.__vbaFreeVar
1100100C > .  DB0D0E66      DD MSVBVM60.__vbaStrVarMove
11001010 > .  E4630D66      DD MSVBVM60.__vbaAptOffset
11001014 > .  4EC10D66      DD MSVBVM60.rtcRgb
11001018 > .  A2721066      DD MSVBVM60.__vbaFreeVarList
1100101C > .  3AF70E66      DD MSVBVM60._adj_fdiv_m64
11001020 > .  CF8B1066      DD MSVBVM60.__vbaRaiseEvent
11001024 > .  3B9A0D66      DD MSVBVM60.__vbaFreeObjList
11001028 > .  C1FD0E66      DD MSVBVM60._adj_fprem1
1100102C > .  4BAD0D66      DD MSVBVM60.__vbaRecAnsiToUni
11001030 > .  6B9B0D66      DD MSVBVM60.__vbaCopyBytes
11001034 > .  5AC20C66      DD MSVBVM60.__vbaSetSystemError
11001038 > .  B8AC0D66      DD MSVBVM60.__vbaRecDestruct
1100103C > .  EC9C0D66      DD MSVBVM60.__vbaHresultCheckObj
11001040 > .  EEF60E66      DD MSVBVM60._adj_fdiv_m32
11001044 > .  BFB60D66      DD MSVBVM60.__vbaAryDestruct
11001048 > .  0D3F0E66      DD MSVBVM60.__vbaExitProc
1100104C > .  C8410E66      DD MSVBVM60.__vbaI4Abs
11001050 > .  699A0D66      DD MSVBVM60.__vbaObjSet
11001054 > .  623E0E66      DD MSVBVM60.__vbaOnError
11001058 > .  F3C50D66      DD MSVBVM60.rtcMsgBox
1100105C > .  86F70E66      DD MSVBVM60._adj_fdiv_m16i
11001060 > .  809A0D66      DD MSVBVM60.__vbaObjSetAddref
11001064 > .  86F80E66      DD MSVBVM60._adj_fdivr_m16i
11001068 > .  25020E66      DD MSVBVM60.__vbaBoolVar
1100106C > .  6E890F66      DD MSVBVM60._CIsin
11001070 > .  BEB50D66      DD MSVBVM60.__vbaErase
11001074 > .  6A570F66      DD MSVBVM60.__vbaChkstk                  ;  ASCII "QWP="
11001078 > .  949A0C66      DD MSVBVM60.EVENT_SINK_AddRef
1100107C > .  D1B80D66      DD MSVBVM60.__vbaGenerateBoundsError
11001080 > .  038A0E66      DD MSVBVM60.__vbaStrCmp
11001084 > .  6FBB0D66      DD MSVBVM60.__vbaAryConstruct2
11001088 > .  BA0E0E66      DD MSVBVM60.__vbaI2I4
1100108C > .  19A00066      DD MSVBVM60.DllFunctionCall
11001090 > .  F39B0D66      DD MSVBVM60.__vbaCastObjVar
11001094 > .  76FE0E66      DD MSVBVM60._adj_fpatan
11001098 > .  658B1066      DD MSVBVM60.__vbaLateIdCallLd
1100109C > .  CBB70D66      DD MSVBVM60.__vbaRedim
110010A0 > .  11AD0D66      DD MSVBVM60.__vbaRecUniToAnsi
110010A4 > .  A79A0C66      DD MSVBVM60.EVENT_SINK_Release
110010A8 > .  138A0F66      DD MSVBVM60._CIsqrt
110010AC > .  40920D66      DD MSVBVM60.__vbaObjIs
110010B0 > .  A5990C66      DD MSVBVM60.EVENT_SINK_QueryInterface
110010B4 > .  A40E0E66      DD MSVBVM60.__vbaUI1I4
110010B8 > .  A43C0E66      DD MSVBVM60.__vbaExceptHandler
110010BC > .  3DBE0C66      DD MSVBVM60.__vbaStrToUnicode
110010C0 > .  09FB0E66      DD MSVBVM60._adj_fprem
110010C4 > .  3AF80E66      DD MSVBVM60._adj_fdivr_m64
110010C8 > .  53751066      DD MSVBVM60.__vbaFPException
110010CC > .  E6420E66      DD MSVBVM60.__vbaI2Var
110010D0 > .  AB880F66      DD MSVBVM60._CIlog
110010D4 > .  EEE30C66      DD MSVBVM60.__vbaErrorOverflow
110010D8 > .  AF9C0D66      DD MSVBVM60.__vbaNew2
110010DC > .  BAF70E66      DD MSVBVM60._adj_fdiv_m32i
110010E0 > .  BAF80E66      DD MSVBVM60._adj_fdivr_m32i
110010E4 > .  0E610E66      DD MSVBVM60.__vbaStrCopy
110010E8 > .  A4CF0D66      DD MSVBVM60.rtcImmediateIf
110010EC > .  C5600E66      DD MSVBVM60.__vbaFreeStrList
110010F0 > .  EEF70E66      DD MSVBVM60._adj_fdivr_m32
110010F4 > .  29F20E66      DD MSVBVM60._adj_fdiv_r
110010F8 > .  053C0966      DD MSVBVM60.VBDllUnRegisterServer
110010FC > .  B1390966      DD MSVBVM60.VBDllCanUnloadNow
11001100 > .  F4420E66      DD MSVBVM60.__vbaI4Var
11001104 > .  7D3B0966      DD MSVBVM60.VBDllRegisterServer
11001108 > .  283A0966      DD MSVBVM60.VBDllGetClassObject
1100110C > .  3D380966      DD MSVBVM60.UserDllMain
11001110 > .  9ABB0D66      DD MSVBVM60.__vbaAryLock
11001114 > .  B2A10066      DD MSVBVM60.__vbaStrToAnsi
11001118 > .  366E1066      DD MSVBVM60.__vbaVarDup
1100111C > .  B0751066      DD MSVBVM60.__vbaFpI4
11001120 > .  85AD0D66      DD MSVBVM60.__vbaRecDestructAnsi
11001124 > .  40870F66      DD MSVBVM60._CIatan
11001128 > .  F4600E66      DD MSVBVM60.__vbaStrMove
1100112C > .  1D5F1066      DD MSVBVM60.__vbaCastObj
11001130 > .  6DE30E66      DD MSVBVM60._allmul
11001134 > .  C48A0F66      DD MSVBVM60._CItan
11001138 > .  BDBB0D66      DD MSVBVM60.__vbaAryUnlock
1100113C > .  91D10E66      DD MSVBVM60._CIexp
11001140 > .  279A0D66      DD MSVBVM60.__vbaFreeObj
11001144 > .  B0600E66      DD MSVBVM60.__vbaFreeStr
2004-6-19 15:33
0
雪    币: 226
活跃值: (100)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
IAT的开始和结束的标志是什么?
我发现我stop在oep出发现,DD 函数名很散的.
2004-6-19 17:43
0
游客
登录 | 注册 方可回帖
返回
//