ARM单进程脱壳之FtpRush v1.0

【目    标】:FTPRush v1.0
【工    具】:Olydbg1.1(diy版)、LORDPE、ImportREC1.6F
【任    务】简单的脱一下壳
【操作平台】:Windows Xp sp1
【作    者】:loveboom[DFCG][FCG][US]
【简要说明】:因为程序和其它的ARM的加的程序有所不同,程序的部分代码跑到壳内去了.。所以就写一下。

【详细过程】:
设置:

忽略全部异常,隐藏好你的OD,载入后到壳的入口处:

007E4DE0 >/$  55            PUSH EBP             ;标准的C的入口来的

007E4DE1  |.  8BEC          MOV EBP,ESP

007E4DE3  |.  6A FF         PUSH -1

在程序的EP处下断HE GetModuleHandleA,然后运行,当然中途会中断好几次的,我们注意下堆栈,当出现这个样子的时候就接近我们要找的东西了.

00127A48   01049B22  /CALL to GetModuleHandleA from 01049B1C

00127A4C   00127B84  /pModule = "MSVBVM60.DLL"

看到这样子后,小心按几次f9,现在到这里:

00127A48   01049B22  /CALL to GetModuleHandleA from 01049B1C

00127A4C   00127B84  /pModule = "advapi32.dll"

再按一次F9:

看到这里的时候,取消硬件断点hd GetModuleHandleA,然后返回到程序代码:

01065EC0    FF15 CCF00601   CALL DWORD PTR DS:[106F0CC]              ; kernel32.GetModuleHandleA

01065EC6    3985 9CC4FFFF   CMP DWORD PTR SS:[EBP-3B64],EAX          ; 返回到这里

01065ECC    75 0F           JNZ SHORT 01065EDD

01065ECE    C785 98C4FFFF 5>MOV DWORD PTR SS:[EBP-3B68],1073B58

01065ED8    E9 C4000000     JMP 01065FA1

01065EDD    83A5 74C2FFFF 0>AND DWORD PTR SS:[EBP-3D8C],0

01065EE4    C785 70C2FFFF 9>MOV DWORD PTR SS:[EBP-3D90],1074198

01065EEE    EB 1C           JMP SHORT 01065F0C

01065EF0    8B85 70C2FFFF   MOV EAX,DWORD PTR SS:[EBP-3D90]

01065EF6    83C0 0C         ADD EAX,0C

01065EF9    8985 70C2FFFF   MOV DWORD PTR SS:[EBP-3D90],EAX

01065EFF    8B85 74C2FFFF   MOV EAX,DWORD PTR SS:[EBP-3D8C]

01065F05    40              INC EAX

01065F06    8985 74C2FFFF   MOV DWORD PTR SS:[EBP-3D8C],EAX

01065F0C    8B85 70C2FFFF   MOV EAX,DWORD PTR SS:[EBP-3D90]

01065F12    8338 00         CMP DWORD PTR DS:[EAX],0                 ; 直接按f4执行到这里,然后把[eax],置0

01065F15    0F84 86000000   JE 01065FA1

具体可见下图:

改好后就可以得到全部的IAT的。

修改完毕,在code段下f2断点:

这样子很快就到了程序的OEP处:

0076C0AC    55              PUSH EBP                                 ; oep

0076C0AD    8BEC            MOV EBP,ESP

0076C0AF    83C4 F0         ADD ESP,-10

0076C0B2    B8 A4B77600     MOV EAX,0076B7A4

这里先别急着DUMP看看代码先吧:

0040525A  - E9 5FC73303     JMP 037419BE                             ; 看看吧,怎么样,代码进壳里去了

0040525F    0FC8            BSWAP EAX

00405261    76 00           JBE SHORT 00405263

00405263    0FC8            BSWAP EAX

00405265    C740 04 B851400>MOV DWORD PTR DS:[EAX+4],004051B8

0040526C    8968 08         MOV DWORD PTR DS:[EAX+8],EBP

0040526F    A3 40467700     MOV DWORD PTR DS:[774640],EAX

00405274    C3              RETN

00405275    8D40 00         LEA EAX,DWORD PTR DS:[EAX]

00405278    31D2            XOR EDX,EDX

0040527A    A1 40467700     MOV EAX,DWORD PTR DS:[774640]

0040527F    85C0            TEST EAX,EAX

00405281    74 1C           JE SHORT 0040529F

00405283    64:8B0A         MOV ECX,DWORD PTR FS:[EDX]

00405286    39C8            CMP EAX,ECX

00405288    75 08           JNZ SHORT 00405292

0040528A  - E9 55C73303     JMP 037419E4                             ; 这里也是

0040528F    C3              RETN

现在我们要动一下手术了,用lordpe全部他dump一下,然后在OD中打开内存页面找到我们要DUMP的那个段双击后,保存数据到文件:

保存后,我们计算一下03740000-400000(imgbase)=03340000,好了记下先.

用lordpe载入我们刚才保存下来的段。并改一下VA为我们刚才记下的那个值:

改好后,重建一下文件,重建选项为:

重建文件完毕,FIXDUMP一下就行了,OK这次脱壳就这样结束了.现在程序也显示已经注册了J.

Greetz:

Fly.Jingulong,yock,tDasm.David.ahao.UFO(brother).alan(sister).all of my friends and you!

By loveboom[DFCG][FCG]

Email:bmd2chen@tom.com

ARM单进程脱壳之FtpRush v1.0相关推荐

  1. 手脱EZIP v1.0

    一.单步 1.载入PEID查壳 EZIP v1.0 2.载入OD,一上来就是一个大跳转,F8单步一直走 0040D0BE > $ /E9 19320000 jmp Notepad.004102D ...

  2. Subversion之路--实现精细的目录访问权限控制(v1.0 更新于2006.12.05)(二)

    深入 ==== 本章将详细介绍前一章所涉及的两个配置文件, svnserve.conf 和 authz.conf,通过对配置逐行的描述,来阐明其中的一些细节含义.除此之外的其他配置.安装等内容,不是本 ...

  3. 看这里!带你快速体验MindSpore V1.0(For ubuntu 18.04)

    摘要: 本文介绍了如何在Ubuntu 18.04上安装CPU版本的MindSpore V1.0.并使用安装好的MindSpore进行了LeNet的模型训练. Part One:引言 在HC2020大会 ...

  4. 【正点原子Linux连载】第四十一章 嵌入式Linux LED驱动开发实验 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0

    1)实验平台:正点原子阿尔法Linux开发板 2)平台购买地址:https://item.taobao.com/item.htm?id=603672744434 2)全套实验源码+手册+视频下载地址: ...

  5. 安卓安全技能树整理v1.0

    声明 以下只是搬运下我公众号的东西.很早就发过了.原帖地址: 安卓安全技能树整理v1.0 已经发公众号的为什么还发csdn 有的圈内朋友,不经过我的允许,删减摘录我公众号的内容,这里就不提谁了,心里清 ...

  6. 智慧农业平台解决方案(商业报价) V1.0

    完整文档智慧农业平台农业解决方案 V1.0.docx 免费下载 1 产品解决方案简介... 5 1.1 标识... 5 1.2系统概述... 5 1.2.1 背景... 5 1.2.2 相关方... ...

  7. 沿微平台械业用Burk.Engineering.Process.Utilities.v1.0.4 1CD

    沿微平台械业用Burk.Engineering.Process.Utilities.v1.0.4 1CD Gibbscam.v12.0.2.0.Win64 1DVD     这种直接面向制造业的定位使 ...

  8. 电脑psp模拟器(ppsspp) v1.0.0 中文版​

    电脑psp模拟器(ppsspp) v1.0.0 中文版 软件大小:10.3MB 软件语言:简体中文 软件类别:游戏工具 软件授权:免费版 更新时间:2015-02-03 应用平台:/Win8/Win7 ...

  9. 【正点原子Linux连载】第四十五章 pinctrl和gpio子系统实验 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0

    1)实验平台:正点原子阿尔法Linux开发板 2)平台购买地址:https://item.taobao.com/item.htm?id=603672744434 2)全套实验源码+手册+视频下载地址: ...

最新文章

  1. java实现验证码功能
  2. SQLServer:执行计划
  3. web浏览器_2019版 web 浏览器现状
  4. junit return null该怎么测试_3 分钟生成一个单元测试报告,这个样式爱了
  5. Http压力测试工具HttpTest4Net
  6. 秒杀系统设计的关键点思考
  7. 资深研发转变为架构师意味着什么
  8. Linux系统chmod命令读、写、执行
  9. 内网外网服务器时间同步解决方案
  10. 中国电子科技集团公司成员单位一览表
  11. python microbit typeerror_Microbit python无效语法
  12. 读《达·芬奇密码》| 一场侦探式的宗教传道
  13. 云计算机概念,云计算是什么意思?
  14. QT5开发之 信号与槽机制
  15. C#数据库sqlit,未能加载文件或程序集“System.Data.SQLite, Version=
  16. 迷城国度---久违了的ARPG
  17. Windows2012R2配置SQLSERVER2012集群Alwayson配置高可用性
  18. neuromaps: structural and functional interpretation of brain maps 多模态、多尺度脑科学数据综合分析的利器
  19. 使用distance.squareform时进行向量矩阵转换以及出现“The matrix argument must be square“报错的解决方案
  20. OceanBase携手天阳科技推出新一代信用卡核心系统联合解决方案,为信用卡业务稳健增长提供创新活力与数据动力

热门文章

  1. Hashed password with salted value——利用salt对密码进行散列
  2. mysql wow_WOW私服搭建过程小记 | 学步园
  3. 微信小程序直播系统有哪些优势?
  4. uni-app选择带搜索与简单的筛选
  5. 中文顿号怎么输入_如何打顿号?详细教您键盘上的顿号怎么打出来
  6. 统计大写字母个数 C语言实现
  7. Python中级 —— 03进程与线程
  8. 新基建专题报告:未来发展方向及重点产业分析
  9. 通达信,底峰形(买入信号之一)
  10. Python爬虫学习之API与模拟ajax请求