WEB开发网
开发学院网络安全黑客技术 用OllyDbg脱ASPR 1.3x的壳 阅读

用OllyDbg脱ASPR 1.3x的壳

 2007-01-13 20:12:43 来源:WEB开发网   
核心提示: 我们需要手工选择所有坏地址(不在压缩代码内),然后在它们上面右击鼠标,用OllyDbg脱ASPR 1.3x的壳(6),从菜单里选择 "Cut Thunk(s)",观察窗口在最下…那儿有好的Thunk(s)…现在我们需要修正这些好字节&hell

我们需要手工选择所有坏地址(不在压缩代码内),然后在它们上面右击鼠标,从菜单里选择 "Cut Thunk(s)"。 

观察窗口在最下…那儿有好的Thunk(s)…

现在我们需要修正这些好字节…你可能从fraviamb.cjb.net下载过一些插件

或者看我其他关于如何重建的文章(New2Cracking.cjb.net或者Fraviamb.cjb.net)

这是我修正的:

 0019E2AC-> 017E0F2C ->GetProcAddress 
 0019E2B0-> 017E139C ->GetModuleHandleA 
 0019E2C4-> 017E1408 ->GetCommandLineA 
 0019E35C-> 017E139C ->GetModuleHandleA 
 0019E428-> 017E1420 ->LockResource 
 0019E47C-> 017E13C4 ->GetVersion 
 0019E4AC-> 017E0F2C ->GetProcAddress 
 0019E4B8-> 017E139C ->GetModuleHandleA 
 0019E4FC-> 017E13F8 ->GetCurrentProcessId 
 0019E500-> 017E13F0 ->GetCurrentProcess 
 0019E50C-> 017E1430 ->FreeResource

9. 按"Fix Dump",选择我们抓取的文件… 

imprec将会以在文件名前加"_"的方式保存抓取的文件。 

========================= 

第四步-修正OEP= 

========================= 

1.打开HVIEW /Hex编辑器,跳转到OEP的偏移地址:57ea5b处,

向后移6字节到57ea55处,用"00"替换写入 stolen bytes. 保存为新文件。 

2. 打开ProcDump/Pe-Edit ,点击“Pe-Edit”按纽载入重建的新文件,修改入口点为:57ea55 (因为抽掉的字节) 

3. 如果你现在试图运行程序,它会死掉的!! 

4. 打开Olly并载入我们的修正文件。 

5. 停在OEP: 57ea55处,EAX寄存器的值是什么?还记得我告诉过你在抓取之前保存的EAX的值吗?它是EAX=57E318,两个值的差别意味着有两

个以上的命令: that is stolen: 

MOV EAX, 0157E318 

这条指令占用5个字节(你可自己在 HVIEW里试一下) 

B818E35700   MOV EAX, 0157E318 

这意味着有6+5=11(十进制)个抽掉的字节 

那么,真正的OEP是: 

11=B(hex) 

OLD_OEP-STOLEN_BYTES=57EA5B-B=57EA50 

OEP = 57EA50 

用HVIEW/Hex打开,跳转到新的OEP,写入: 

55,8B,EC,83,EC,54,B8,18,E3,57,00

用ProcDumpPe-Edit修改入口点为:57EA50 

哈哈,这下程序能运行了!!!

收工!!!

翻译后记:俺一直用Softice,没用过OllyDbg,所以有些内容不知道是否准确,再者水平有限,如有错误,请各位大虾指点!!

上一页  1 2 3 4 5 6 

Tags:OllyDbg ASPR

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接