通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 红客教程 >> 网络编程 >> 文章正文
新手脱壳系列教程——CI Crypt V0.1 手动脱壳
责任编辑:水土不服   更新日期:2007-11-3
 

//es:[edi]=[00401000]=00
//复制回各区段数据
0057142F    5E                  pop esi
00571430    48                  dec eax
//原始 NumberOfSections
00571431    75 D8               jnz short 0057140B
//依次复制回所有的区段数据
00571433    8B55 F4             mov edx,dword ptr ss:[ebp-C]
00571436    2B55 FC             sub edx,dword ptr ss:[ebp-4]
00571439    74 5C               je short 00571497
//判断是否需要重定位处理,DLL使用
0057143B    8B45 F4             mov eax,dword ptr ss:[ebp-C]
0057143E    89C3                mov ebx,eax
00571440    035B 3C             add ebx,dword ptr ds:[ebx+3C]
00571443    8B9B A0000000       mov ebx,dword ptr ds:[ebx+A0]
00571449    85DB                test ebx,ebx
0057144B    74 4A               je short 00571497
0057144D    01C3                add ebx,eax
0057144F    8B43 04             mov eax,dword ptr ds:[ebx+4]
00571452    85C0                test eax,eax
00571454    74 41               je short 00571497
00571456    8D48 F8             lea ecx,dword ptr ds:[eax-8]
00571459    D1E9                shr ecx,1
0057145B    8D7B 08             lea edi,dword ptr ds:[ebx+8]
0057145E    0FB707              movzx eax,word ptr ds:[edi]
00571461    52                  push edx
00571462    89C2                mov edx,eax
00571464    C1E8 0C             shr eax,0C
00571467    8B75 F4             mov esi,dword ptr ss:[ebp-C]
0057146A    66:81E2 FF0F        and dx,0FFF
0057146F    0333                add esi,dword ptr ds:[ebx]
00571471    01D6                add esi,edx
00571473    5A                  pop edx
00571474    48                  dec eax
00571475    75 07               jnz short 0057147E
00571477    89D0                mov eax,edx
00571479    C1E8 10             shr eax,10
0057147C    EB 06               jmp short 00571484
0057147E    48                  dec eax
0057147F    75 08               jnz short 00571489
00571481    0FB7C2              movzx eax,dx
00571484    66:0106             add word ptr ds:[esi],ax
00571487    EB 05               jmp short 0057148E
00571489    48                  dec eax
0057148A    75 02               jnz short 0057148E
0057148C    0116                add dword ptr ds:[esi],edx
0057148E    47                  inc edi
0057148F    47                  inc edi
00571490    E2 CC               loopd short 0057145E
00571492    035B 04             add ebx,dword ptr ds:[ebx+4]
00571495    EB B8               jmp short 0057144F


_____________________________________________________________
三.修改PEB中信息

新手可以跳开这个部分,直接看第四部分的Dump
PEB (Process Environment Block)——进程环境块,存放进程信息。
PEB +008 处是ImageBaseAddress
CODE

00571497    8B4D F4             mov ecx,dword ptr ss:[ebp-C]
//ECX=[ebp-C]=00400000 新基址
0057149A    8B55 B0             mov edx,dword ptr ss:[ebp-50]
0057149D    0155 B4             add dword ptr ss:[ebp-4C],edx
005714A0    64:8B05 30000000    mov eax,dword ptr fs:[30]
//获得PEB首地址
005714A7    837D BC 00          cmp dword ptr ss:[ebp-44],0
005714AB    75 03               jnz short 005714B0
005714AD    8948 08             mov dword ptr ds:[eax+8],ecx
//写入00400000新基址
005714B0    8B40 0C             mov eax,dword ptr ds:[eax+C]
005714B3    8B40 0C             mov eax,dword ptr ds:[eax+C]
005714B6    89C6                mov esi,eax
005714B8    8B50 18             mov edx,dword ptr ds:[eax+18]
005714BB    3B55 B0             cmp edx,dword ptr ss:[ebp-50]
005714BE    75 27               jnz short 005714E7
005714C0    8B50 1C             mov edx,dword ptr ds:[eax+1C]
005714C3    3B55 B4             cmp edx,dword ptr ss:[ebp-4C]
005714C6    75 1F               jnz short 005714E7
005714C8    8B50 20             mov edx,dword ptr ds:[eax+20]
005714CB    3B55 B8             cmp edx,dword ptr ss:[ebp-48]
005714CE    75 17               jnz short 005714E7
005714D0    8948 18             mov dword ptr ds:[eax+18],ecx
005714D3    038D 30FEFFFF       add ecx,dword ptr ss:[ebp-1D0]
005714D9    8948 1C             mov dword ptr ds:[eax+1C],ecx
//写入新的EP
005714DC    8B8D 58FEFFFF       mov ecx,dword ptr ss:[ebp-1A8]
005714E2    8948 20             mov dword ptr ds:[eax+20],ecx
//写入新的SizeOfImage
005714E5    EB 08               jmp short 005714EF
005714E7    3930                cmp dword ptr ds:[eax],esi
005714E9    74 04               je short 005714EF
005714EB    8B00                mov eax,dword ptr ds:[eax]
005714ED    EB C9               jmp short 005714B8
  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    固顶文章 爱国者安全网2007年度优秀版主评选
    普通文章 瑞星公司01月11日发布 每日计算机病毒及木马播报
    普通文章 破解博彩神助(专注彩票) V2.8.01
    推荐文章 推荐:跨站脚本执行漏洞代码的六点思路
    普通文章 Windows系统下的远程堆栈溢出 实战篇
    普通文章 Windows系统下的远程堆栈溢出 原理篇
    普通文章 MsSQLServer是如何加密口令的
    普通文章 浅谈国内的渗透评估过程
    普通文章 Dvbbs8.1 0DAY(通杀Access和mssql版本)
    普通文章 微软:我们的代码比赛门铁克更安全
    热门文章
    普通文章REAL蛀虫利用播放器漏洞下载恶意程序
    普通文章李彦宏:中国要在互联网领域逐渐超越美国
    普通文章马云:阿里巴巴的成功是一个生态链的成功
    普通文章Ingres用户认证非授权访问漏洞
    普通文章TCPreen FD_SET()函数远程栈溢出漏洞
    普通文章Winace UUE文件解压堆溢出漏洞
    普通文章Pclxav木马猎手第一代特征码引擎源代码
    普通文章IE收藏夹管理小精灵算法分析
    普通文章Extra Drive Pro算法分析历程
    普通文章雨过天晴自我注册
    精彩专题