主页 PC知识 网管技术 黑客帝国 安全技术 开放系统 程序设计 搜索 技术论坛

 

相关联接
 
RHU本级分类

新手入门
入侵实例
工具使用
安全防范
黑客人物
软件破解
漏洞研究

 
RHU阅读排行
·直面"拿来主义"—浅谈共享软件的破解方法
·《疯狂单词》“中级”教程
·ACCESS密码查看器算法分析[简单]
·goldeneye使用教程
·网络验证——Nok2Phone V3.41 (VB)(算法分析)
·软件狗[Dongles]的加密与解密技术
·加密算法之BLOWFISH算法
·新版aspr脱壳方法(完全版)
·凯撒密文的破解编程实现
·逆向追踪+模拟跟踪方法寻找暗桩 解除脱UPX后的校验

 
 
RHU最新文章
·Tray.Commander.v2.3 注册算法分析
·带壳分析易语言+简单浮点算法
·WinKawaks 1.45脱壳笔记
·破解高手常用的破解工具介绍
·用内存注册机方式破解X-NetStat
·<好帮手进销存>算法分析
·解密宝典——十招教你学会软件破解
·对付自校验的杀手锏 -- 偷天换日
·简单分析"冰狐浪子下载运行512生成器
·脱壳高级篇之认识Import表

 
 
RHU相关搜索









 
 
RHU广而告之

 
 
>您的位置:首页 -> 黑客帝国-> 软件破解
[MSLRH]0.31脱壳法

作者:RHU-TAC编辑员 来自:RHU网络编辑 时间:2005-3-2 双击滚屏 收藏本页 字体:


点击 查看RHU2004全年文章


[工具]: Ollydbg,lordpe,imprec
[介绍]:(from jingulong)
1.它主要的手段是用RDTSC(时间差)来Anti trace
2.OutputDebugStringA+ZwQueryInformationProcess+IsDebuggerPresent
3.修改文件头anti dump
4.CreateFileA 独占方式打开文件anti ImportREC
5.CRC
[起初办法]:
1、运行mslrh 0.31
2、close mslrh file handle
 用一些进程管理器:http://www.sysinternals.com/files/procexpnt.zip这个选择mslrh进程,然后查看handle,把mslrh.exe的handle给关闭掉。
3、ollydbg attach
4、find oep   ***根据api查找的***
5、dump & iat
其中第四步是靠经验猜的

[真正快速脱壳方法](比较另类,逃避RDTSC跟踪):
RDTSC anti trace穿插在代码中,用ollydbg跟踪实在是麻烦、头痛。
1、ollydbg载入
2、查找68????????c3 (push ???????? retn),把retn的c3 改成int3(cc)
3、保存修改,关闭ollydbg
4、运行mslrh.exe,发生异常,ollydbg调试
5、把int3改成retn,F8
6、查找 61e9,来到了popad jmp ??????
7、f4到jmp处,F8
8、dump & imprec fix iat

[过程]:
ollydbg载入[mslrh].exe

引用:
--------------------------------------------------------------------------------

00456000 > $ 60             PUSHAD     ;***POEP****
00456001   . D1CB           ROR EBX,1
00456003   . 0FCA           BSWAP EDX
00456005   . C1CA E0        ROR EDX,0E0
00456008   . D1CA           ROR EDX,1
0045600A   . 0FC8           BSWAP EAX
0045600C   . EB 01          JMP SHORT [MSLRH].0045600F
0045600E   . F1             INT1
0045600F   > 0FC0C9         XADD CL,CL

--------------------------------------------------------------------------------


查找二进制: 68????????c3,修改retn成int3

引用:
--------------------------------------------------------------------------------

0046207E   . 68 ADE29F00    PUSH 9FE2AD
00462083   . C3             RETN  ;**** 改成int3 (cc)
00462084     33             DB 33                                    ;  CHAR '3'
00462085     C9             DB C9
00462086     E8             DB E8
00462087     00             DB 00
00462088     00             DB 00
00462089     00             DB 00
0046208A     00             DB 00
0046208B     5F             DB 5F                                    ;  CHAR '_'
0046208C     81             DB 81


--------------------------------------------------------------------------------


保存修改,关闭ollydbg
运行mslrh.exe,发生异常,ollydbg调试

引用:
--------------------------------------------------------------------------------

00462083   CC               INT3  ; 停在这里,改成retn
00462084   33C9             XOR ECX,ECX
00462086   E8 00000000      CALL [MSLRH].0046208B
0046208B   5F               POP EDI
0046208C   81C7 C5090000    ADD EDI,9C5
00462092   33D2             XOR EDX,EDX
00462094   83C2 15          ADD EDX,15


--------------------------------------------------------------------------------


把int3改成retn,F8
查找 61e9,来到了popad jmp...

引用:
--------------------------------------------------------------------------------

00452A12   61               POPAD
00452A13  ^E9 3E13FCFF      JMP [MSLRH].00413D56
00452A18   0000             ADD BYTE PTR DS:[EAX],AL
00452A1A   0000             ADD BYTE PTR DS:[EAX],AL
00452A1C   0000             ADD BYTE PTR DS:[EAX],AL
00452A1E   0000             ADD BYTE PTR DS:[EAX],AL

--------------------------------------------------------------------------------


把光标放置到452a13处,F4
F8,看看我们来到了哪里?哈哈

引用:
--------------------------------------------------------------------------------

00413D56   6A 00            PUSH 0  ; yeah,OEP
00413D58   E8 F10F0000      CALL [MSLRH].00414D4E                    ; JMP to kernel32.GetModuleHandleA
00413D5D   A3 A08F4100      MOV DWORD PTR DS:[418FA0],EAX
00413D62   E8 6B100000      CALL [MSLRH].00414DD2                    ; JMP to comctl32.InitCommonControls
00413D67   6A 00            PUSH 0
00413D69   68 843D4100      PUSH [MSLRH].00413D84
00413D6E   6A 00            PUSH 0
00413D70   6A 65            PUSH 65
00413D72   FF35 A08F4100    PUSH DWORD PTR DS:[418FA0]
00413D78   E8 0D100000      CALL [MSLRH].00414D8A                    ; JMP to USER32.DialogBoxParamA
00413D7D   6A 00            PUSH 0
00413D7F   E8 BE0F0000      CALL [MSLRH].00414D42                    ; JMP to kernel32.ExitProcess
00413D84   55               PUSH EBP
00413D85   8BEC             MOV EBP,ESP
00413D87   8B45 0C          MOV EAX,DWORD PTR SS:[EBP+C]
00413D8A   3D 10010000      CMP EAX,110
00413D8F   0F85 3D030000    JNZ [MSLRH].004140D2
00413D95   6A 01            PUSH 1
00413D97   FF35 A08F4100    PUSH DWORD PTR DS:[418FA0]
00413D9D   E8 00100000      CALL [MSLRH].00414DA2                    ; JMP to USER32.LoadBitmapA
00413DA2   A3 C8934100      MOV DWORD PTR DS:[4193C8],EAX
00413DA7   50               PUSH EAX

 


OVER

[1] 页 RedHyphone.Union 投稿邮箱
[特别声明]:
本站文章大多搜索转载自网络中,如果侵犯了您的权利,请告之我们。本站将立即删除。
本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
查看评论】【向上滚屏】【关闭窗口】【 打印
-相关文章
  • openSUSE 11.1 Final - 正式发布
  • [视频]Opera Mini 4.2 正式版发布
  • dll注入系统进程(开源代码)
  • 认知盲区 解惑双网卡双线路DNS解析
  • FlashFXP 简体中文版 3.7.5 Build 1303 Beta[烈火]
  • -文章评论 (关闭)
    ·还没有相关的评论!

    网上大名:
    红旋风网络技术联盟 RHUTech.Union
     
    Copyright © 2000-2007 RedHyphone.Union All Rights Reserved. 红旋风联盟版权所有.皖ICP备05011033号
    中国红旋风网络技术联盟 | www.RedHyphone.net
    Mailto:Redhyphone@gamil.com