UPX脱壳(2)

UPX脱壳(2)UPX简单脱壳

大家好,又见面了,我是你们的朋友全栈君。

很多壳是没法用Ollydump弄好的,所以需要用其他的工具

这里的工具是:PETools和Import REConstructor

先按照UPX脱壳的方法,找到OEP

UPX脱壳(2)

现在已经到达了OEP

用PETools来实现程序的DUMP

UPX脱壳(2)

找到对应的程序,完整转存,保存好久可以运行了~~~

但是,当我们换个版本的PETools~

UPX脱壳(2)

dump成功后,运行程序

UPX脱壳(2)

程序竟然报错了~~~

(论工具的重要性)

这个时候就需要用到Import REC了

首先在程序里找到IAT的位置

UPX脱壳(2)

先点击自动查找IAT,获取输入表

然后手动检查下:OEP应该是00001000(相对偏移RVA)

UPX脱壳(2)

3180是IAT的RVA

然后一直往下看,查看IAT的大小

UPX脱壳(2)

所以终点是3290(UPX是最简单的壳,IAT是存在同一个地方的,很多高级壳IAT可能有错误,也可能存在不同的地方,需要一段一段处理)

所以SIZE = 0x3290 – 0x3180 = 0x110

然后看一眼输入表函数信息,有没有无效的

UPX脱壳(2)

点击转储到文件(刚才的DUMP文件)

UPX脱壳(2)

这时候还是报错,我们需要再使用一次PETools

UPX脱壳(2)

选择Rebuild PE,选中刚才的DUMP文件

UPX脱壳(2)

再执行程序,发现可以正常运行了~~~

UPX脱壳(2)

附上实验的程序和工具~

OD可以从52pojie或者看雪下载咯~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159792.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 小旋风asp服务器出错_小旋风服务器用来干什么的

    小旋风asp服务器出错_小旋风服务器用来干什么的 点击是出现下列的对话框:可能是因为因为开着迅雷,因为迅雷是用的80号端口,可以关了迅雷试试,

    2022年10月24日
    0
  • linux默认安装路径在哪里_linux进入根目录命令

    linux默认安装路径在哪里_linux进入根目录命令Nginx安装安装路径 /usr/local/nginx配置文件 /usr/local/nginx/conf/nginx.conf启动:进入到/usr/local/nginx/sbin下,./nginx关闭:进入到/usr/local/nginx/sbin下 ./nginx -s stop 重启:同上, -s reload停止 kill -9 线程号查看 ps -ef|grep nginxhttps://www.jianshu.com/p/9f2c162ac77c 可参考安装ng

    2022年8月19日
    4
  • UART和USART的区别(UART vs USART)[通俗易懂]

    UART和USART的区别(UART vs USART)[通俗易懂]很多工程师都知道UART和USART都是一样的,没有区别。但实际上,两者彼此不同,并且具有不同的属性。这就是我在这里写一篇文章UARTvsUSART的原因。但在研究UART和USART(UART与USART)之间的主要区别之前,我想先解释一下什么是异步和同步通信。异步串行传输:在异步通信中,发送方和接收方之间没有公共时钟。它广泛用于面向字节的传输,这意味着它一次可以发送1个字节或字符。与同步相比,异步通信速度较慢,并且还具有启动和停止位的开销。在异步通信中…

    2022年5月19日
    52
  • AVX2整数向量运算「建议收藏」

    AVX2整数向量运算「建议收藏」在C/C++程序中,使用AVX2指令有很多种方法。嵌入汇编是一般的方法,但是对于不熟悉汇编语言的人来说,有点勉为其难。gcc编译支持AVX2指令的编程。程序中需要使用头文件和,这样通过调用其中定义的一些函数,达到使用AVX2指令的目的,即用C/C++调用SIMD指令(单指令多数据)。这里给出的样例程序是有关浮点向量运算的例子。其中函数_mm_add_epi32()实现的是整数向量(

    2022年5月25日
    29
  • IT行业分析(华为裁员)「建议收藏」

    IT行业分析(华为裁员)「建议收藏」近来忙于各种麻烦事务,知识图谱的多路归并一直未能跟进。但在写多路归并前,我想是时候先总结下我的这几年。总结的经验,不仅包括我个人这几年的见闻感悟与得失,也是80后这代的一个缩影,以及对社会的一些思考。首先直插正题,华为的裁员。华为我确实没呆过,不过这不妨碍我认定华为是一个人员流动性非常大的公司,和BAT、美团、京东、360、小米等等互联网公司一样大。谁更大我不知

    2022年7月18日
    35
  • java 数组转换_java数组转json

    java 数组转换_java数组转json 1.Arrays.asList坑点说明在开发中,我们有时候会需要将数组转换为集合List,这时候可能会想到Arrays.asList(),毕竟它是java提供的,肯定专业。。。吗?Integer[]a={1,2,3};List<Integer>list=Arrays.asList(a);System.out.println(list);但是实际上这里面有个大坑,如果不熟悉很容易GG。就是它转换成的其实是个“假List”,为什么这么说呢,因为它返回的其实

    2022年8月23日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号