upx脱壳日记

一、静态方法

upx -d

有时候可能会失败,需要切换使用正确的UPX版本。Windows下内置对各UPX版本的第三方图形化界面UPXShell工具,可以方便的切换版本,通过go按钮,可以切换upx加壳版本与脱壳版本

   

二、动态方法(手脱)

虽然UPX本身可以脱壳,但是UPX是基于加壳后可执行文件内存储的标识来查找并操作的,由于UPX是开源的,软件保护者可以随意修改这些标识,从而导致官方标准版本的UPX脱壳失败。因为UPX中可以改动的地方太多,所以人们在这种情况下一般采用动态脱壳

x86的汇编指令pushad可以轻松将所有寄存器一次性压入栈,UPX使用了这样的方式,被形象的称为“保护现场”,所以将这里的下一步执行后,在esp下硬件读取断点,再次调用就是esp返回的时候,我们直接就可以回到原来的程序执行流

执行过程:

先F8到pushad的下一步,然后在寄存器那边右键ESP,"HW break [ESP]"下硬件断点

设置完成后,F9运行,再次中断到一个地址

实际上这是一个将栈空间向上清零0x80长度的循环,并不是程序真实代码,后面有一个向前的大跳转,从0x430638跳到0x404ddc,这样就跳到原程序的位置

单击这一按jmp指令,然后F4,使程序跳到此指令上执行,然后F8,此时看起来已经很正常了

然后对程序dump。在OD中选择“插件”-“OllyDump”-“脱壳正在调试的进程”,然后单击获取EIP作为OEP,再单击脱壳,保存后可完成脱壳

此时IDA中和程序执行都已正常

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/352874.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

利用ESP定律的upx脱壳实践

背景: 除了命令行upx -d脱壳,还有手动脱壳。ESP定律的本质是堆栈平衡,又称堆栈平衡定律,是应用频率最高的脱壳方法之一,脱壳的目的就是找到真正的OEP(源文件的EP代码) 方法: 从push…

在线教育APP小程序系统开发 教培行业一站式解决方案

移动互联网如今已经深入到我们生活的方方面面,教育行业也不例外。如今市面上的在线教育APP小程序系统开发大受欢迎,很多学校、培训机构等都争相开发应用软件,以求通过全新的模式来满足不断扩大的市场需求,为用户提供更高质量的服务…

upx脱壳工具_攻防世界simple_unpack_逆向之旅003

攻防世界simple_unpack_逆向之旅003 前言一、使用exeinfo PE查看该文件二、使用upx脱壳三.使用ida打开脱壳处理后的文件总结 前言 先给出题目的链接: https://adworld.xctf.org.cn/task/answer?typereverse&number4&grade0&id5077&page1 题目说是…

[已发表,转载勘误]Android upx脱壳

已发在https://www.anquanke.com/post/id/197643 不过有部分内容发布之后无法编辑,勘误后如下。 Android upx脱壳 写在前面 因为我不是pc平台过来的,而是直接从Android入门的,所以upx壳其实一开始并不了解,后来接触到&#xff…

UPX压缩脱壳

该方法可针对 upx 变种,但Android Linker 的时候不需要section表, 所以我们不能修复 section 表 进行SO层代码脱壳 1. 使用IDA 打开libexec.so,在导出函数中找到.init_proc 函数(0x39A79), 搜索特征码7D 27 00 DF 搜索到下面语句 2.自己编译一个load程序 , 然…

UPX脱壳总结

我近期研究了一下UPX壳的脱壳方法,下面给出脱壳示例: UPX作为一款元老级PE加密壳,在以前的那个年代盛行,著名病毒【熊猫烧香】就是使用这款加密壳。 现在我们一起来脱UPX壳来揭开它的神秘面纱。 首先,PEiD载入含UPX壳…

记一次没遇到过的UPX脱壳

关于壳的介绍见CTF-WIKI 这里就不多赘述了 拿到我们的程序,先查看 64位upx壳,首先直接upx -d试一下,结果是失败报错提示下图 (一开始也有怀疑过是不是版本不兼容的问题,后来尝试高版本还是兼容低版本的) …

CTF逆向-Upx脱壳攻防世界simple unpack

文章目录 前言UPX技术原理应用范围软件使用 CTF实战程序查壳UPX脱壳 总结 前言 加壳软件分两类: 压缩壳:压缩的目的是减少程序体积,如 ASPack、UPX、PECompact 等;加密壳:加密是为了防止程序被反编译(反汇…

UPX脱壳逐一跟踪分析

UPX脱壳逐一跟踪分析 写在前面OD跟踪命令先结合PE知识分析分析“新年快乐.exe” 写在前面 之前看到的UPX脱壳文章都只是教了方法,对UPX的原理少有提及。看了《逆核》的UPX脱壳一章后,俺尝试把UPX脱壳与PE文件结构的知识结合起来整理了一些(也…

逆向:UPX脱壳

2020/05/18 - 引言 本身对加壳这种东西只是知道,只知道可以使用软件进行自动化脱壳,没有具体了解过原理。然后,最近部署的蜜罐经常下载UPX加壳的样本。这次就来分析一下。 学习到的东西 利用vim修改十六进制内容upx脱壳 样本 首先&#xff0c…

对于UPX脱壳的解决

(upx学习ing,不定期更新一些自己遇到的一些关于此的比较好的题目或者感悟) 对于手动脱壳,我们有两种常用的安全工具,一个是od,另一个是ida。两个方法略有不同。对于脱一般的程序壳的时候,我主要用的是ida来脱壳&#…

Linux4.9 Tomcat部署及优化

文章目录 计算机系统5G云计算第六章 LINUX Tomcat部署及优化一、Tomcat概述1.Tomcat核心组件2.什么是 servlet3.什么是 JSP4.Tomcat 功能组件结构5.Container 结构分析6.Tomcat 请求过程7. 配置文件 二、Tomcat 服务部署1.关闭防火墙,将安装 Tomcat 所需软件包传到/…

elf 变异upx 脱壳

题目 是某ctf题 首先使用IDA打开: 函数极少,有壳。 查看函数 这个跳转比较可疑 下面进行IDA动态调试 进入loc_52D516 再进入 直到找到jmp r13 运行到这里,F8跳转 直接retn下断点F9,直接retn下断点F9重复, 直到…

upx手动脱壳

工具 upx:upx是一个开源的压缩壳工具,可以到github下载upxStudy_PE工具,可以到看雪论坛下载 upx简单的用法 upx src.exe命令将src.exe加壳 upx src.exe -o dst.exe命令将src.exe加壳并另存为dst.exe upx手动脱壳 脱壳原理 平衡堆栈法(又…

upx脱壳教程(buuctf逆向题新年快乐)

upx脱壳 脱壳教程步骤:工具: 实际操作OEP导出内存文件(dump)修复 题目链接 脱壳教程 步骤: 1.找到OEP 2.导出内存文件(dump) 3.修复 工具: 吾爱破解OD x32dbg/x64dbg 实际操作 …

微信小程序开发之云函数本地调试

环境 微信开发者工具 Stable 1.06.2303220云开发控制台 v1.5.47 简介 微信云开发提供了云函数本地调试功能,在本地提供了一套与线上一致的 Node.js 云函数运行环境,让开发者可以在本地对云函数调试: 在本地调试时,可以设置断点…

全面的软件测试

1 全过程的软件测试图解 传统的软件测试,开发人员完成任务之后,最后交付给测试人员,这种模式下,测试人员不能及早发现需求阶段的缺陷,同时测试工作的开展也滞后了,产品质量得不到有效的过程控制和分析&…

List of USB ID's

为什么80%的码农都做不了架构师&#xff1f;>>> # # List of USB IDs # # Maintained by Stephen J. Gowdy <linux.usb.idsgmail.com> # If you have any new entries, please submit them via # http://www.linux-usb.org/usb-ids.html # or send entries a…

FastAPi上传文件报错,There was an error parsing the body

问题描述 通过postman调用fastapi编写的文件接口报错&#xff0c;如下图&#xff1a; {"detail": "There was an error parsing the body" } 问题的解决过程 postman本身的问题 postman有个work directory的概念&#xff0c;所以再使用postman上传的文…

Arm NN 成功适配 openEuler Embedded,提供高性能神经网络推理能力

近期&#xff0c;RISC-V SIG 完成了 Arm NN 在 openEuler Embedded 系统的适配&#xff0c;于 2023 年 1 月合入系统构建工程代码库&#xff0c;经测试验证可用&#xff0c;实现了神经网络加速库在 openEuler Embedded 嵌入式系统上的加速和优化。 系统构建工程下载地址&#x…