安全中国首页 > 文章中心 > 脱壳技术
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

ASProtect 2.1x SKE dll文件脱壳+重定位表修复+文件优化(图)

更新时间:2008-6-3 0:10:02
责任编辑:果果龙
热 点:
【文章标题】: ASProtect 2.1x SKE dll文件脱壳+重定位表修复+文件优化
【作    者】: machenglin
【软件名称】: TestDog.dll
【大    小】: 306K
【加壳方式】: ASProtect 2.1x SKE->Alexey Solodovnikov
【编写语言】: Borland Delphi
【工    具】: WinXP、OllyDbg、PEiD、LordPE、RecImport、Dll_LoadEx、ReloX。
【操作平台】: WinXP sp2
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
  
      很多的大侠已经做过N多的ASProtect 2.1x SKE->Alexey Solodovnikov的exe软件的教程,有关ASProtect 2.1x SKE->Alexey
  Solodovnikov的dll教程不是很多。通过对dll脱壳的学习练习,参考了fly、Volx、syscom、linex很多的大侠的教程,菜鸟就将dll脱壳的笔记发出来,希望高手能指正错误,给初学者提供一些思路。
  
  用 PEid 0.94 显示为 ASProtect 2.1x SKE -> Alexey Solodovnikov
  用flyDBG载入,ALT+O, 设置内存访问异常,以及下面“同时忽略以下指定的异常或者异常范围”,其余选项全部忽略。
      
  
  008D2001 >  60               pushad                                     ; OD入口     
  008D2002    E8 03000000      call TestDogj.008D200A
  008D2007  - E9 EB045D45      jmp 45EA24F7
  008D200C    55               push ebp
  008D200D    C3               retn
  008D200E    E8 01000000      call TestDogj.008D2014


-----------------------------------------------------------------------------------------------------------------
    一、找到OEP               
  
  Shift+F9,一直到第二次出现855CCAEF。

  
  Alt+M,在该dll的code段,F2下断。


Shift+F9,来到OEP了。
  

  008BFF4C    55               push ebp
  008BFF4D    8BEC             mov ebp,esp
  008BFF4F    83C4 B4          add esp,-4C
  008BFF52    B8 E4FD8B00      mov eax,TestDogj.008BFDE4
  008BFF57    E8 E064FBFF      call TestDogj.0087643C
  008BFF5C    E8 EF38FBFF      call TestDogj.00873850
  008BFF61    8D40 00          lea eax,dword ptr ds:[eax]
  008BFF64    0000             add byte ptr ds:[eax],al
  ---------------------------------------------------------------------------------------------------------------
  二、发现IAT、call xxxxxxxx。
  
  Ctrl+B:FF 25。


  008711D8  - FF25 A8318C00    jmp dword ptr ds:[8C31A8]                    ; kernel32.CloseHandle
  008711DE    8BC0             mov eax,eax
  008711E0  - FF25 A4318C00    jmp dword ptr ds:[8C31A4]                    ; kernel32.CreateFileA
  008711E6    8BC0             mov eax,eax
  008711E8    E8 13EE2D00      call 00B50000                                ; call xxxxxxxx①
  008711ED    7B 8B            jpo short TestDog1.0087117A
  008711EF    C0E8 0B          shr al,0B
  008711F2    EE               out dx,al
  008711F3    2D 00D48BC0      sub eax,C08BD400                             ; call xxxxxxxx①
  008711F8    E8 03EE2D00      call 00B50000
  
  右键--->数据窗口跟随--->内存地址。
  

1 2 3 下一页

 
相关文章
一日一文章
 
一日一软件
一日一动画