脱壳第一讲,手工脱壳ASPack2.12的壳.ESP定律 一丶什么是ESP定律 首先我们要明白什么是壳.壳的作用就是加密PE的....而ESP定律就是壳在加密之前,肯定会保存所有寄存器环境,而出来的时候,则会恢复所有寄存器的环境. 这个就成为ESP定律....二丶利用工具脱掉ASPACK2.12的壳 首先,我们找一个带壳的工具,利用PEID查壳.查看是什么壳. ? OD附加进程. ?...这个地方则是出来的地方,那么ASPack的壳有一个特征,就是出来之后会跳转,然后有两个ret 因为程序是32位程序,所以我们要放到32位的虚拟机里面去脱壳....默认选择方式1 脱壳之后,查看是否还有加密. ? 没有pushad保存寄存器环境了,已经成功脱壳.
编译环境 xp + vc6 加壳过程 把源文件(被保护的exe),加密后放入到壳子程序的最后一个节里 实现代码 宏 #define ENDPATH "C:\\LOADSHELL.exe" //加壳后文件存放的路径...} pshellImageBuffer = ImageBuffer; free(NewBuffer); free(FileBuffer); return; } 加密程序...//写入二进制到文件 *FileBuffer = p; fclose(pFile);//关闭文件 return fileSize; } }这里的加密算法可以更复杂...解壳过程就是编写壳子的过程,因为解壳程序都在壳子程序中,也是最关键的一环 实现代码 一些要用到的函数:内存对齐,文件对齐,拉伸过程等 DWORD FileAlignment(int n) {...程序入口和镜像大小都完全改变,已经在壳子中看不到任何cmd的影子 至此加密壳子实现完成
ACProtect是个很老的加密壳了,现在也已经挂掉不再更新了,更多的是做研究脱壳的一个基础,经过深入研究和学习,让我对加壳概念有了更深入的理解,欢迎各位大佬一起讨论脱壳手法。...值得额外提一点的是,ACProtect壳是Delphi编写的,经过测试发现它对Delphi程序的支持是最好的,其他语言编写的程序经过ACProtect加壳后可能导致程序本身异常退出,这可能也是ACProtect...IAT加密处理的资料。...通过google,终于还是找到了IAT加密处理的部分,不过这帖子是全英的,我看完之后还是有所感悟,终于还是通过各方面的调试成功破开了ACProtect的IAT加密部分。...分析总结 作为曾经对新手极具杀伤力壳,现如今却成为了练手的基本功,脱壳与加壳就如同加密与解密,彼此相辅相成,亦或是盾与矛的关系。从ACProtect中也学到了一些关于脱壳的心得,也是略有所成吧。
加壳就是用来压缩或者保护软件不被非法修改破解的一种工具,而脱壳就是将已经加壳的程序从壳中剥离出来,既然能给程序进行加壳,那也就会有相应的脱壳方法,本节课我们将讲解几种常见的脱壳方法,让你能够应对一部分软件的加壳保护...压缩壳:upx ,aspack ,fsg ,pecompach 加密壳:ASProtect ,Armadillo(穿山甲),EXEcryptor,Themida,ZProtect 虚拟机壳:VMProtect...接下来我们将使用不同的方法来脱几个常见的壳(UPX,Aspack,FSG,PECompact) ----------------------------------------------------...1.首先我们使用OD载入附件中的【Aspack.exe】程序,然后会看到以下代码,第一条指令是Pushad,发现第一条命令是它,就能使用ESP定律搞。...如上图,默认的如果被调试程序被加密了,OD在运行时就会弹出这个提示框,这里点是点否都可以,我就点否了节约时间。
跳转到原始入口点(OEP)继续执行 1.2 打包器分类 根据保护强度和实现复杂度,打包器可以分为以下几类: 打包器类型 代表工具 特点 解包难度 基本压缩壳 UPX、ASPack 仅压缩,无额外保护 低...中等保护壳 PECompact、RLPack 压缩+基本反调试 中 高强度保护壳 VMProtect、Themida 虚拟化+加密+多层保护 高 定制恶意壳 勒索软件自写壳 针对性设计,混淆性强 很高...IAT 8.2 ASPack解包 ASPack是一种古老但仍然常用的打包器,具有较高的压缩率。...8.2.1 ASPack特征 区段特征:通常包含".aspack"区段 入口点特征:特定的指令序列 8.2.2 ASPack解包技巧 使用ESP定律快速定位OEP 注意ASPack可能使用的代码混淆技术...密码学破解:量子算法可能加速破解某些加密保护 新型保护机制:针对量子计算的新型保护技术 后量子密码学:采用抗量子计算的加密算法 结论 打包器解包是逆向工程中的重要环节,从简单的UPX到复杂的虚拟机保护壳
因此,学习 PE 文件结构时,可以通过修复壳来加深对 PE 文件结构的学习。 本文介绍以下 Aspack 修复 IAT 的步骤。...请出 Peid 进行查看,查壳的结果是“什么也没发现”。换一个查壳工具接着查壳,用 Detect it Easy 0.64 查壳结果是 “Aspack2.12” 的壳。...Aspack 的壳是压缩壳,是非常好脱的一个壳。...我们较为详细的分析了对 ASPACK2.12 的脱壳过程,和脱壳后对导入表的修复过程。希望大家能够举一反三,从中学到更多的知识。...注:文章时很久以前写的,crackme 文件已经找不到了,自己用 Aspack 压缩后测试即可。
至于说packer,你们一般叫它加壳。...加壳的一个主要目的是避免被查杀,不过由于emp3r0r的自身设计,每个目标主机上运行的agent都是不同的文件(靠hash来查杀的懒人们可以歇歇了),一般是不太容易被常见的主机防护软件查杀了。...不过为了高级些,也为了配合内存加载的需要,我还是搞了个加密的packer。 接下来进入正题。 Dropper 与Shellcode 怎么生成 先说下为什么用shellcode。因为 1....Packer加密与运行 这个packer完全使用Go开发,改编自https://github.com/guitmz/ezuri。...思路是把agent的ELF文件进行AES加密,拼接到stub上,stub运行的时候,会定位原ELF的位置,将它解密。 解密之后用memfd_create给它找个匿名内存fd,写进去,并执行。 ?
脚本的用处非常的大,比如我们要对按钮事件进行批量下断点,此时使用自动化脚本将大大减小我们的工作量,再比如有些比较简单的压缩壳需要脱壳,此时我们也可以写出属于自己的脱壳脚本,以后遇到了对应的壳就可以使用对应脚本快速的搞定...几个常用的脱壳脚本 我们使用CM_14.zip里面加过壳的案例。...1.脱 Aspack 脚本 // 脱 Aspack 壳的脚本 findop eip,#61# // 查找popad bphws $RESULT,"x" // 返回查找到的地址...,处理IAT的加密*/ find eip,#8901#//查找特征加密语句 bp $RESULT //对返回的地址处F2下断 run//运行到该处 bc $RESULT //取消断点 repl eip..., #8901#, #9090#, 10 //把加密语句NOP掉,即替换为9090 /*下面就去OEP了*/ run//由于刚才已经下好了硬件断点,现在只要运行即可 bphwc addr //取消断点
、加密),以达到缩小文件体积或者加密程序编码,甚至是躲过杀毒软件查杀的目的。...目前较常用的壳有UPX、ASPack、PePack、PECompact和UPack等。...砸壳原理 其中用到的砸壳工具就是dumpdecrypted,其原理是让app预先加载一个解密的dumpdecrypted.dylib,然后在程序运行后,将代码动态解密,最后在内存中dump出来整个程序。...砸壳的步骤: 1、找到app二进制文件对应的目录; 2、找到app document对应的目录; 3、将砸壳工具dumpdecrypt.dylib拷贝到ducument目录下;//目的是为了获取写的权限...I、砸壳的准备工作 用ssh进入连上的iPhone(确保iPhone和Mac在同一个局域网)。
加壳压缩 使用比如 UPX,ASPack 等加壳工具对可执行程序进行压缩。...但是实际发现,在 EXE 文件特别小时,比如像上面已经精简到 3584 字节后,再使用 ASPack 工具压缩会反而令 EXE 文件更大。
以前phonegap中,用来JS与native通信的模块,现在叫做cordova,也就是现在要套壳的话,是套cordova。
一步直达法 适用于大部分的UPX壳和aspack壳 进入程序时为pushed进栈命令,需要查找对应的出栈命令。 CRRL+F查找popad出栈命令,然后运行到该位置。单步进入跳转位置。 ?
3、识别加密算法与哈希算法代码特征,识别算法中魔改的部分。 4、代码混淆, 代码虚拟化, 修改代码流程, 反调试等。 5、软件加密壳是软件保护技术的集中应用。...2、加密比较验证: 密钥一般会进行如异或、base64、MD5、RC4等形式的加密,此类题型需要识别出其加密方式,然后再根据其算法特点还原出相应的key值,现实CTF比赛中可能出现密钥用不同加密算法分段加密或嵌套验证等多种加密组合起来的方式...不同外壳的侧重方面是不一样的,有的侧重压缩,有的侧重加密。例如压缩壳的特点就是减少软件的体积,加密保护就不是它的重点。...: 压缩壳有:UPX、ASPack、PECompact等等 UPX是开源:https://upx.github.io/ ASPack壳的官网:http://www.aspack.com 加密壳:AsProtect...Android加壳方案 目前市面上加固产品种类:360加固、爱加密加固、梆梆加固、腾讯乐固、网易易盾、几维加固、顶象加固。
名称介绍:hacker cracker honke 木马:灰鸽子、黑洞、PcShare rootkit 工具:ntroorkit IPC$: 命名管道 加壳: UPX、ASPack、Pepack、PECompact
加壳: 就是利用特殊的算法,将EXE可执行程序或者DLL动态连接库文件的编码进行改变(比如实现压缩、加密),以达到缩小文件体积或者加密程序编码,甚至是躲过杀毒软件查杀的目的。...目前较常用的壳有UPX,ASPack、PePack、PECompact、UPack、免疫007、木马彩衣等等。...软件脱壳: 顾名思义,就是利用相应的工具,把在软件“外面”起保护作用的“壳”程序去除,还文件本来面目,这样再修改文件内容或进行分析检测就容易多了。...免杀: 就是通过加壳、加密、修改特征码、加花指令等等技术来修改程序,使其逃过杀毒软件的查杀。 暴力破解: 简称“爆破”。
恶意代码分析:识别加壳类型(UPX、ASPack),追踪文件操作、网络请求等恶意行为。...生态扩展性:多语言插件开发支持自动化分析(如批量提取字符串、加密算法识别),集成 BinDiff 等工具提升协作效率。
在上一篇文章中,我们已经初尝了Shell的好处。由于我们后面将大量借助Shell,所以在这里先简要介绍一下这件工具。 什么是Shell 我们已经说过,Shell...
有时是恶而不是善,对人的吸引力更大——陀思妥耶夫斯基 今天需要一个https测试,想到了内网穿透,找到了这款付费的软件 花生壳官网 价格也不贵,6元 进入后点击控制台 一系列操作后,找到内网穿透
防止协议直接被盗刷-加密协议通信 常见加固厂商 加固保360 360加固保 娜迦nagapt 娜迦加固 梆梆安全bangcle 梆梆加固 爱加密ijm 爱加密加固 腾讯乐固 顶象安全...使用厂商:娜迦,爱加密,梆梆等。...Dex加密 Dex字符串加密资源加密对抗反编译反调试自定义DexClassLoader 第二代壳 Dex抽取与So加固 对抗第一代壳常见的脱壳法Dex Method代码抽取到外部(通常企业版)Dex...动态加载So加密 第三代壳 Dex动态解密与So混淆 Dex Method代码动态解密So代码膨胀混淆对抗之前出现的所有脱壳法 第四代壳 arm vmp 第一代 DEX加密、字符串加密、资源加密...用jadx打开apk发现加壳了 先进行脱壳 打开app 然后执行 python main.py 03-24/10:54:56 INFO [DEXDump]: found target [16242]