【原创】脱UPX加壳的notepad.exe
【文章标题】: 脱UPX加壳的notepad.exe
【文章作者】: 微微虫[S.T.C][DCT]
【作者邮箱】: ]nuxgod@163.com
【作者主页】: http://wwcgodsoft.ys168.com
【作者QQ号】: 86742748
【软件名称】: WinXP的记事本
【软件大小】: 48KB
【加壳方式】: UPX加壳
【使用工具】: OllyDBG v1.10[S.T.C]、PEiD v0.94
【操作平台】: WinXP SP2
【作者声明】: 我的破解水平很菜,请高手们不吝教正。有些不足的地方请论坛上的朋友们帮忙修
改一下。
--------------------------------------------------------------------------------
【详细过程】
一、UPX是最广泛使用的压缩壳之一,它除了与Windows系列版本外,还有Linux下的版本。它是
在命令提示符界面下进行加壳。
UPX壳的出口点关键字是:popad。加了UPX的notepad.exe可以到我的主页http://wwcgodsoft.ys168.com下载。
二、先用PEiD检测是加了什么壳,一拿程序不要就进行调试,要先判别是否加壳。经检查是:
UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo
三、脱UPX壳的三个方法:
1、用[S.T.C]专用OD载入notepad.exe手动脱壳,跟到最后popad处就行拉。脱壳过程中有有
好多循环。对付循环,须让程
序往前运行,不能让它往回跳。
2、重新载入notepad.exe,按键盘Ctrl+F搜索关键字popad,然后F4运行到此处。不远处有个
跳转,它能到程序真正的入口点:
010143DD 61 POPAD -->F4到这里
010143DE 8D4424 80 LEA EAX,DWORD PTR SS:[ESP-80] -->F8单步步过,以下
都是按F8
010143E2 6A 00 PUSH 0
010143E4 39C4 CMP ESP,EAX
010143E6 ^ 75 FA JNZ SHORT notepad.010143E2 -->要回跳到010143E2,不
使它回跳,在下一行按F4
010143E8 83EC 80 SUB ESP,-80
010143EB - E9 AD2FFFFF JMP notepad.0100739D -->就是这个跳转可以到OEP
0100739D 6A 70 PUSH 70 -->程序的OEP处,现在可以转存
了。点这一行右击,选择“Dump debugged process”
0100739F 68 98180001 PUSH notepad.01001898
010073A4 E8 BF010000 CALL notepad.01007568
010073A9 33DB XOR EBX,EBX
010073AB 53 PUSH EBX
3、下断点进行脱壳:bp GetProcAddress
按F9运行程序,停在这里:
7C80AC28 > 8BFF MOV EDI,EDI ; notepad.0101301C -->按F2进行切
换,再按Ctrl+F9 来到下面
7C80AC87 C2 0800 RETN 8 -->到这里了,按F2切换,F8单步
过
0101439D 09C0 OR EAX,EAX ; kernel32.GetCurrentThreadId -
->回到程序自己的领空了,F8过
0101439F 74 07 JE SHORT notepad.010143A8
010143A1 8903 MOV DWORD PTR DS:[EBX],EAX
010143A3 83C3 04 ADD EBX,4
:
:
:
0100739D 6A 70 PUSH 70 -->来到程序的OEP处,现在可以转存了。
0100739F 68 98180001 PUSH notepad.01001898
010073A4 E8 BF010000 CALL notepad.01007568
010073A9 33DB XOR EBX,EBX
四、脱完壳别忘了检验一下,测试结果如下:
Microsoft Visual C++ 7.0 Method2,是VC++编写的,正确!
今天就介绍一下怎么脱UPX壳,未完待续!
--------------------------------------------------------------------------------
【版权声明】: 本文纯属技术交流,转载请注明作者并保持文章的完整,谢谢!有什么不懂和疑问,请联系我!
2006年08月13日 3:14:12
【原创】脱UPX加壳的notepad.exe相关推荐
- 用ollydbg手脱UPX加壳的DLL
用Ollydbg手脱UPX加壳的DLL 作者:fly [目标程序]:UPX加壳的EdrLib.dll.附件中还有输入表.重定位数据.UPXAngela以及UnPacked以供参考. [作 ...
- 实验四:使用UPX加壳与脱壳
一.实验目的 了解程序加壳.脱壳原理 掌握PE文件结构 学习利用UPX Shell.LoardPE.IDA等工具完成软件的加.脱壳操作 二.实验题目 UPX加壳:对crackme加上UPX壳,用 Lo ...
- 易语言自己动手修改配置 添加UPX加壳
1.易语言可以自己加壳 首先把以前 5.11 完美版里面带的 tools\auto_DOIT.exe 这个程序 这个用来调用UPX壳 自动加壳 tools\UPX Shell 这个 ...
- Android so文件保护——使用upx加壳
最近有人问我关于UPX加壳的问题,关于UPX如何加壳以及脱壳,网上说的很清楚了,这里不细说了,附件是很早之前我配置UPX加壳环境的一些资料和配置包以及成功的实例,有需要的小伙伴可以下下来玩. 附件:点 ...
- 逆向-新年快乐(UPX加壳)-学习笔记
先用IDA打开 查看段信息 UPX加壳了. 用Ollydbg调试: 从内存视图,UPX0入口调试,设置内存访问断点,进入CPU视图,F9运行. 不知如何跳转(应该在另一个段中): 设置断点: F9运行 ...
- Android UPX加壳源码解析
目录 一. UPX加壳的原理 1. UPX的工作原理 2. UPX实时解压的原理和流程 3. UPX加壳应用的场景 4. 修改UPX源码需要注意以下几点 二. UPX加壳Android so的方法和 ...
- experiment : EXE使用UPX加壳后, 用OD查找OEP
测试程序 #include "stdafx.h" #include <windows.h> #include <tchar.h>int _tmain(int ...
- 软件安全-UPX加壳
加壳的全称应该是可执行程序资源压缩,压缩后的程序可以直接运行. 其原理是将可执行程序按照一定算法进行压缩,达到程序源代码的加密效果,执行时在先脱壳内存中解压缩,还原,再执行原程序部分.从而达到防修改与 ...
- 使用Metasploit生成攻击载荷——msfvenom免杀、upx加壳
文章目录 前言 一.免杀 1.msfvenom的使用 2.多重编码 二.加壳 1.upx的使用 总结 前言 本文详细介绍了使用Metasploit创建攻击载荷(使用攻击载荷生成器msfvenom),以 ...
最新文章
- python资源百度云_Python Selenium 百度云分享链接资源 批量保存
- 队列化栈栈化队列(力扣)
- HBNIS-crypto
- Spring MVC讲解
- 一维傅里叶变换后的复数怎样理解?
- Oracle死锁情况
- 响应式编程 函数式编程_函数式编程的基本原理简介
- mysql5.7的客户端软件_mysql数据库管理客户端工具|mysql数据库管理软件 v5.7.22 64位官方版 - 软件下载 - 绿茶软件园|33LC.com...
- 设备名称和设备责任人输出写反了,重新写了,重新发送邮箱
- 雪球:如果让你选择一本影响你一生的好书,你会选择哪一本
- 利用python绘制雪景图_用AI绘制冬季雪景森林场景插画图片
- 论文阅读-目标检测(2019)-CenterNet:目标检测转化为关键点检测及其属性回归
- EXCEl快速删除大量空白行
- 如何用PS的量度标尺工具调整图片
- 直接ISO启动工具ventoy
- c语言1GB转成B,2018职称计算机考试WPS_Office精选习题9
- centos7安装ifconfig命令
- 4万字【Python高级编程】保姆式教学,Python大厂高频面试题解析
- 精准鉴别初级、中级、高级程序员,你是哪一种?
- 如何写好CSS?(OOCSS DRY SMACSS)