美文网首页
.NetReactor 3.6——体验另类的脱壳法

.NetReactor 3.6——体验另类的脱壳法

作者: 看雪学院 | 来源:发表于2019-03-21 18:05 被阅读0次

前言

最近一直在看脱壳的相关资料,看到了Tuts4you社区脱壳脚本的教程,这个壳我感觉很不错挺有意思的,于是打算将内容整理下分享出来。

查壳

这个壳是.NetReactor 3.6.0.0的版本。根据作者的介绍,这个壳只是一个包装器,它包装目标程序,然后将其全部解包到内存中执行。但是这是一种不安全的方法,因为有人可以将内存中的目标程序转储回文件并完全恢复程序集。这个壳的重点在于转储之后的修复,需要对PE文件有一定的了解。

脱壳

接下来直接载入OD,F9让程序运行起来。

接着调出内存窗口,为了锁定目标程序被解压的位置,因为这个crackme实际上也是作者写的,所以选择通过搜索关键字符串的方法,搜索Crackme。

搜索到关键字符串之后向上滚动,查找PE文件,如果找到了说明这里就是目标文件解压缩的地方。

经过搜索和寻找,我们在第六次搜索结果中找到了要找的PE文件。

接着右键->备份->保存数据到文件。

选择保存类型为任何文件,并修改后缀名为exe。

接着测试运行一下,弹出一个错误框,无法在电脑上运行。这很正常,因为直接dump下来的文件在PE头总是会出现问题。因为我是在本机上跑的,如果是W7的话应该是显示不是有效的W32程序。

修复目标程序

接下来用CFF Explorer这款PE工具来修复一下目标程序。

载入目标程序,点击Header部分,错误提示为Out of memory。

接下来进入到Driectory部分,修复MetaData Header的错误。我们需要修复这个错误的RVA和Size,Size明显是错的,太小了。

接着来到Address Converter部分,点击这个放大镜,查找字符串BSJB。至于为什么搜索这么一串字符串,作者给出的解释是这个字符串的Offset就是要修复的Meta Data的Offset。(我也是一脸蒙蔽,这解释有点太勉强了吧)

接着点击查找,找到了0x9400这个地址,那么Meta Data的Offset就是0x9400。

接着把9400输入到Offset中,会自动计算出我们要的RVA是0xA400。

回到Directoy部分,将正确的RVA填入。至于Size我们可以根据一个公式计算得出:

MetaDataSize=Import Directory RVA-MetaDataRVA,Import Directory RVA的值如下图:

最后算出Size为0x194C。

接着修改回正确的RVA,然后点击保存。

接着再次双击测试运行,还是无法运行。这里作者的原话是根据我之前的经验,我应该是忘记修改文件头属性了。

不得不感叹大神的经验就是强大。好吧,继续修复。

点击文件头 找到Characteristics,双击。

属性显示这是一个DLL,难怪会报错。把勾去掉,再次保存。

OK,程序完美运行,这个壳也算是脱完了。

最后附上相关文件,也可以到我的Github下载:

Github:https://github.com/TonyChen56/Unpack-Practice

CSDN:https://blog.csdn.net/qq_38474570/article/details/88426831

鬼手_277636 其他文章:

对WannaCry的深度分析

原文作者:鬼手_277636

原文链接:https://bbs.pediy.com/thread-250012.htm

转载请注明:转自看雪学院

更多阅读:

SandHook 第四弹,Android Q 支持 & Inline 的特别处理

炒冷饭之穿山甲的传说1

快速转换dll到shellcode工具

QT信号槽简易分析_如何查看与分析QT的源码实现

相关文章

  • .NetReactor 3.6——体验另类的脱壳法

    前言 最近一直在看脱壳的相关资料,看到了Tuts4you社区脱壳脚本的教程,这个壳我感觉很不错挺有意思的,于是打算...

  • 另类的体验

    办公室一同事因为要回家订婚,请假四天,我们班的英文课就给搁置了,觉得天数过长,担心孩子们拉下,我便自告奋勇...

  • Android 加壳与脱壳方式总结

    介绍 说到加壳,之前接触的主要都是pc端的壳,当时的脱壳就是用的esp脱壳法,大概意思就是程序运行到将当前环境保存...

  • 另类体验

    端午节前夕,我梦到了一个曾经很好奇,但却从没想到过要去的世界。 好像是我们几个人送宝宝去医院的途中,不知怎么的,我...

  • 另类体验

    单位体检套餐中这次加了核磁共振的项目。体检当天,因为人太多,没有预约上,后来又因为设备的原因第二次也没体检成这一项...

  • 另类死法

    第一则 自戗之亡 高一那年,父母在一次谈话中,突然说到,***死了。其实死亡在日常中本是极平常之事,如同某...

  • 写作的另类体验

    186班的战友写作群的小伙伴儿大家晚上好。我是四组的卜艳军,感谢班委给我这次分享的机会,我是一名地产从业者。平时喜...

  • 150本书单完成情况统计

    3.1《六顶思考帽》 3.2《超效率手册》 3.5《高效时间法》 3.6《高效经营法》 3.7《细节:如何轻松影响...

  • 另类“跨年”体验

    ”” 这是我头一次感受这样跨年,罗胖的年终演讲。看了这种演讲,我确实和罗胖产生了很多共鸣,这不光是形式上的,...

  • 作曲法(3.6 - 3.8)

    更多优秀的国外作曲编曲教程请戳这里哦:作曲编曲相关讲座资料翻译整理 原文地址:作曲法 3.6 课题15:11型(半...

网友评论

      本文标题:.NetReactor 3.6——体验另类的脱壳法

      本文链接:https://www.haomeiwen.com/subject/mckcvqtx.html