Whitzard OJ Introduce to packing

1.概述

这个就是个smc,为什么会归于加壳,我个人理解是和UPX的运行方式有点像把,不对应该是说和压缩壳的运行方式

很相似,都是先运行一段解密代码,之前的符号表也替换了下

2.解题

有两种方式一种是类似elf脱壳的方式

gdb attach,这里其实就是一种让程序先运行起来,先运行必然先执行解密代码,自然把程序自动还原了

我们在坐收渔翁之利就好,attach进程,然后把内存中运行,解密后的机器码dump出来,就是解密过的了

不过这题有点坑啊,dump不出来,不知道是不是我手法的问题。。记录下过程

先运行这个程序,再另外开一个终端,

先查pid

 

 再根据 cat /proc/pid/maps查看它的虚拟内存空间分布

 

 

再gdb attach pid 上去

然后 dump binary memory [PATH] startadr endadr就完事了。

2.ida写脚本,直接还原

这里真的太简单了。。没有啥操作好记录的,

 

posted @ 2020-09-02 16:32  YenKoc  阅读(100)  评论(0编辑  收藏  举报