通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 红客教程 >> 网络攻防 >> 文章正文
寻找Asp1.2X的Stolen code的另一种方法
责任编辑:酷酷の鱼   更新日期:2008-1-23
 

Advanced WMA Workshop 2.04b简单脱壳破解

程序用asp1.24rc4加壳,并用壳的时间保护


作者:lordor
QQ:88378557
Mail:lordor#163.com
来自:www.digitalnuke.com
说明:asp1.24RC4的Stolen code的寻找方法,这个方法对于1.3以上的是否管用,还在研究中。
自由转载请保




一、寻找伪OEP
用od载入程序,设置内存不打钩,其它都 打钩,隐藏od,到如下:
AWMAWork.>PUSH AWMAWork.00632001  ==>先停在这里,看一下寄存器的值
--------------
ECX 0012FFB0
EDX 7FFE0304
EBX 7FFDF000
ESP 0012FFC4  ==>注意这个
EBP 0012FFF0  ==>
ESI 00000024
EDI 00000000
EIP 00401000 AWMAWork.<ModuleEntryPoint>
--------------

经过26个seh后,到这里的特征代码:
00CB39EC  XOR DWORD PTR DS:[EAX],EAX  ==>停在这里
00CB39EE  POP DWORD PTR FS:[0]
00CB39F5  POP EAX
00CB39F6  CMP DWORD PTR DS:[CB7EB0],0
00CB39FD  JE SHORT 00CB3A13
00CB39FF  PUSH 0C
00CB3A01  MOV ECX,0CB7EB0
00CB3A06  LEA EAX,DWORD PTR SS:[EBP-8]
00CB3A09  MOV EDX,4
00CB3A0E  CALL 00CB0B40
00CB3A13  PUSH DWORD PTR SS:[EBP-4]
00CB3A16  PUSH DWORD PTR SS:[EBP-8]
00CB3A19  MOV EAX,DWORD PTR SS:[EBP-C]
00CB3A1C  CMP DWORD PTR DS:[EAX],0
00CB3A1F  JE SHORT 00CB3A23
00CB3A21  PUSH DWORD PTR DS:[EAX]
00CB3A23  PUSH DWORD PTR SS:[EBP-10]
00CB3A26  PUSH DWORD PTR SS:[EBP-14]
00CB3A29  RETN      ==>这里下断,shift+F9运行到这里



打开"Memory Map"窗口
在AWMAWorkshop的"code"段下“Set break-on access”(即按F2),这样当执行完壳的代码后,再执行解压后代码段的内容就会停下来。
置完后,按F9,会到这里
0047DB94  PUSH AWMAWork.0047DCEC                   ; JMP to MSVCR70._except_handler3
0047DB99  MOV EAX,DWORD PTR FS:[0]
0047DB9F  PUSH EAX
0047DBA0  MOV EAX,DWORD PTR SS:[ESP+10]
0047DBA4  MOV DWORD PTR SS:[ESP+10],EBP
0047DBA8  LEA EBP,DWORD PTR SS:[ESP+10]
0047DBAC  SUB ESP,EAX    ==>这里为stack分配局部地址,eax为压入的立即数
0047DBAE  PUSH EBX    ***
0047DBAF  PUSH ESI    ***  
0047DBB0  PUSH EDI    ***
0047DBB1  MOV EAX,DWORD PTR SS:[EBP-8]
0047DBB4  MOV DWORD PTR SS:[EBP-18],ESP
0047DBB7  PUSH EAX    ***
0047DBB8  MOV EAX,DWORD PTR SS:[EBP-4]
0047DBBB  MOV DWORD PTR SS:[EBP-4],-1
0047DBC2  MOV DWORD PTR SS:[EBP-8],EAX
0047DBC5  LEA EAX,DWORD PTR SS:[EBP-10]
0047DBC8  MOV DWORD PTR FS:[0],EAX
0047DBCE  RETN      ==>停在这里
0047DBCF  MOV ECX,DWORD PTR SS:[EBP-10]
0047DBD2  MOV DWORD PTR FS:[0],ECX
0047DBD9  POP ECX
0047DBDA  POP EDI
0047DBDB  POP ESI
0047DBDC  POP EBX
0047DBDD  LEAVE
0047DBDE  PUSH ECX

可以看到这个是VC7的第一个call的代码,看一下寄存器的值,并注意***上面压入了几句(这里只有四句),后面会用到:
------------
ECX 0012FFB0
EDX 7FFE0304
EBX 7FFDF000
ESP 0012FF30  ==>注意这里
EBP 0012FFC0  
ESI 00000000
EDI 00000000
EIP 0047DBCE AWMAWork.0047DBCE

------------
F8一步,到这里
0047D8C5  RETN 10
0047D8C8  ADD BYTE PTR DS:[EAX],AL
0047D8CA  ADD BYTE PTR DS:[EAX],AL
0047D8CC  ADD BYTE PTR DS:[EAX],AL
0047D8CE  NOP        ==>花指令,nop掉
0047D8CF  CALL AWMAWork.0047DB94
0047D8D4  XOR EBX,EBX      ===>到这里,伪OEP,可以看到上一个call(0047DB94)已经在壳中运行了
0047D8D6  PUSH EBX
0047D8D7  MOV EDI,DWORD PTR DS:[4820FC]
0047D8DD  CALL EDI
0047D8DF  CMP WORD PTR DS:[EAX],5A4D
0047D8E4  JNZ SHORT AWMAWork.0047D905
0047D8E6  MOV ECX,DWORD PTR DS:[EAX+3C]
0047D8E9  ADD ECX,EAX

[1] [2] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    固顶文章 2007年度优秀版主评选结果
    普通文章 瑞星公司01月23日发布 每日计算机病毒及木马播报
    普通文章 危害性更大媒体文件木马攻防实战
    推荐文章 推荐:常见的DDoS技术方法与相关防御
    普通文章 你是否知道制定合理信息战略的支柱?
    普通文章 知己知彼 用VLAN技术防御黑客攻击
    普通文章 让电脑裸奔 制作百毒不侵的Windows系统
    普通文章 PEid插件——Generic OEP Finder 原理分析
    普通文章 寻找Asp1.2X的Stolen code的另一种方法
    普通文章 代理蠕虫变种ZJM 借移动介质快速传播
    热门文章
    推荐文章推荐:安全检测Java Web应用网站漏洞
    普通文章千足虫变种强攻杀毒软件
    普通文章QQ开始“封杀”新浪博客? 腾讯称误操作
    普通文章警惕“木马变种TP”专盗魔兽世界帐号
    普通文章操作系统到底谁更好 Vista PK XP
    普通文章微软DirectX 11今年底明年初完成
    普通文章赛门铁克发现攻击iPhone木马程序
    普通文章微软发布Vista SP1 RC更新版补丁
    普通文章SQL注入攻击再度肆虐殃及大量网站
    普通文章利用进程空闲为壳软件打补丁3例
    精彩专题