分享
 
 
 

Encryptpe 2003.518

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

简单脱壳EncryptPE 2003.5.18篇

【目 标】:win98's notepad

【工 具】:Olydbg1.1(diy版)、LORDPE、ImportREC1.6F

【任 务】:当然是脱马甲了

【操作平台】:WINDOWS 2000 ADV

【作 者】:loveboom[DFCG]

【相关链接】: 不记得了,自己去搜一下吧。

【简要说明】:今天有点时间,也算是打发一下,不想自己太难过了。所以就玩了一下,不知道和fly的同不同,我现在还没看fly的,不是说fly写的不好,只是我觉得如果自己能够脱了之后再看别人的文章更能学到点东西,如果没能力脱的话就先看再脱(非常感谢fly给我等菜鸟这么多好的文章)。这个壳还比较好玩的。如果可能的话,最好自己动手后再看文章。

【详细过程】:

设置:

取消int3异常,其它选上加上0EEDFADE和C0000008(INVALID HANDLE)两个异常地址。

加壳后用peid找一下它说是upx的,好晕呀 ,不过我是我自己加的所以当然知道它是“冒牌”的了。这样我的petools也就多“认识”一款壳了。

第一步找OEP:

这步不难,在第八次int 3异常之后,在内存CODE(一般是40xxxx)段下断,这样就到了入口处。

第二步修复输入表

按第二次Shift+f9之后,下Mr GetProcAddress如果发现像这样子就第二次没错:

0012FECC 004061B4 ASCII "6e"

0012FED0 785C0000 OFFSET shell32.#465

0012FED4 00000202

0012FED8 77E69AC1 kernel32.GetProcAddress

0012FEDC 711A41BE RETURN to V1200351.711A41BE from V1200351.71126CF4

0012FEE0 785C0000 OFFSET shell32.#465

0012FEE4 00CFC77C ASCII "DragFinish"

0012FEE8 0012FEF4 Pointer to next SEH record

如果是这样子的话就要第三次Shift+f9后下mr GetProcAddress了:

0012FF90 0040D29A /CALL to GetProcAddress from notepad.0040D298

0012FF94 71120000 |hModule = 71120000 (V1200351)

0012FF98 0040D170 \ProcNameOrOrdinal = "EncryptPE_Init"

下断后第一次到这里:

7119D310 8B00 MOV EAX,DWORD PTR DS:[EAX]

7119D312 3C CC CMP AL,0CC

7119D314 74 14 JE SHORT V1200351.7119D32A

再按F9一次中断在系统中,现在看看当前堆栈的地址:

0012FEDC 711A41BE /CALL to GetProcAddress from V1200351.711A41B9

0012FEE0 785C0000 |hModule = 785C0000 (shell32)

直接在711A41BE处下断,按F9停下,向下不远处看到这段代码:

711A41FE 8B55 B8 MOV EDX,DWORD PTR SS:[EBP-48]

711A4201 E8 E2F0FFFF CALL V1200351.711A32E8 //这里跟进

711A4206 E9 B7010000 JMP V1200351.711A43C2

711A420B 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]

跟进后,我们要找IAT了,这个不难, 看代码先。

711A32E8 55 PUSH EBP

711A32E9 8BEC MOV EBP,ESP

711A32EB 83C4 F8 ADD ESP,-8

711A32EE 53 PUSH EBX

711A32EF 56 PUSH ESI

711A32F0 57 PUSH EDI

711A32F1 8BF9 MOV EDI,ECX ; notepad.004063F8

//在数据窗口里直接到4063f8(ECX的值),这样向上找一下就可以看到IAT的位置和大小了

711A32F3 8955 FC MOV DWORD PTR SS:[EBP-4],EDX

再一直按F8来到这里:

711A3379 8908 MOV DWORD PTR DS:[EAX],ECX

711A337B 8BC3 MOV EAX,EBX

711A337D 83C0 0B ADD EAX,0B

711A3380 8BCA MOV ECX,EDX

711A3382 83C1 05 ADD ECX,5

711A3385 334D FC XOR ECX,DWORD PTR SS:[EBP-4] //这里[EBP-4]=正确API

//所以这里改成mov ecx, dword ptr ss:[ebp-4]

711A3388 8908 MOV DWORD PTR DS:[EAX],ECX

711A338A 8955 F8 MOV DWORD PTR SS:[EBP-8],EDX //这里改IAT的成员

//所以这里改成NOP。

711A338D 85FF TEST EDI,EDI

711A338F 74 29 JE SHORT V1200351.711A33BA

711A3391 33D2 XOR EDX,EDX

改好后,md删除内存断点,再按f9异常后按Shift+f9直到全部解压完成(判断很易的,看看状态栏就知道了)。完成后CTRL+P打开Patches窗口,这里可以看到我们改过的代码,双击代码并"清场"(反原代码),这样不会让壳发现你已经改了的。

后面就按Shift+f9准备到入口处,到入口之后你就会发现全部API修复好了。现在用lordpe dumped下来并去掉壳启动的那个节(如果是delphi的程序就不要去了,去了程序无法运行的),修复输入表,Rebuilder之后就可以。壳也就此脱完了。

献给我亲爱的DFCG,愿它能够蒸蒸日上!

Thank all of my friends,best wish for you!

Thanks:

Fly 辉仔yock、jingulong、二哥、tDasm、所有曾经关心支持或帮助过我的朋友!谢谢您们!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有