加壳软件upx linux linux upx加壳
发布日期:2020-10-11摘要:脱壳和加壳是什么意思?有什么能破解吗 壳,脱壳,加壳 在自然界中,我想大家对壳这东西应该都不会陌生了,由上述故事,我们也可见一斑。自然界中植物用它来保护种子,动物用它来保护身体等等。同样,在一些计算机...
脱壳和加壳是什么意思?有什么能破解吗
壳,脱壳,加壳 在自然界中,我想大家对壳这东西应该都不会陌生了,由上述故事,我们也可见一斑。
自然界中植物用它来保护种子,动物用它来保护身体等等。
同样,在一些计算机软件里也有一段专门负责保护软件不被非法修改或反编译的程序。
它们一般都是先于程序运行,拿到控制权,然后完成它们保护软件的任务。
就像动植物的壳一般都是在身体外面一样理所当然(但后来也出现了所谓的“壳中带籽”的壳)。
由于这段程序和自然界的壳在功能上有很多相同的地方,基于命名的规则,大家就把这样的程序称为“壳”了。
就像计算机病毒和自然界的病毒一样,其实都是命名上的方法罢了。
从功能上抽象,软件的壳和自然界中的壳相差无几。
无非是保护、隐蔽壳内的东西。
而从技术的角度出发,壳是一段执行于原始程序前的代码。
原始程序的代码在加壳的过程中可能被压缩、加密……。
当加壳后的文件执行时,壳-这段代码先于原始程序运行,他把压缩、加密后的代码还原成原始程序代码,然后再把执行权交还给原始代码。
软件的壳分为加密壳、压缩壳、伪装壳、多层壳等类,目的都是为了隐藏程序真正的OEP(入口点,防止被破解)。
关于“壳”以及相关软件的发展历史请参阅吴先生的《一切从“壳”开始》。
(一).壳的概念 作者编好软件后,编译成exe可执行文件。
1.有一些版权信息需要保护起来,不想让别人随便改动,如作者的姓名等,即为了保护软件不被破解,通常都是采用加壳来进行保护。
2.需要把程序搞的小一点,从而方便使用。
于是,需要用到一些软件,它们能将exe可执行文件压缩, 3.在黑客界给木马等软件加壳脱壳以躲避杀毒软件。
实现上述功能,这些软件称为加壳软件。
(二).加壳软件最常见的加壳软件ASPACK ,UPX,PEcompact 不常用的加壳软件WWPACK32;PE-PACK ;PETITE ;NEOLITE (三).侦测壳和软件所用编写语言的软件,因为脱壳之前要查他的壳的类型。
1.侦测壳的软件fileinfo.exe 简称fi.exe(侦测壳的能力极强) 2.侦测壳和软件所用编写语言的软件language.exe(两个功能合为一体,很棒) 推荐language2000中文版(专门检测加壳类型) 3.软件常用编写语言Delphi,VisualBasic(VB)---最难破,VisualC(VC) (四)脱壳软件。
软件加壳是作者写完软件后,为了保护自己的代码或维护软件产权等利益所常用到的手段。
目前有很多加壳工具,当然有盾,自然就有矛,只要我们收集全常用脱壳工具,那就不怕他加壳了。
软件脱壳有手动脱壳和自动脱壳之分,下面我们先介绍自动脱壳,因为手动脱壳需要运用汇编语言,要跟踪断点等,不适合初学者,但我们在后边将稍作介绍。
加壳一般属于软件加密,现在越来越多的软件经过压缩处理,给汉化带来许多不便,软件汉化爱好者也不得不学习掌握这种技能。
现在脱壳一般分手动和自动两种,手动就是用TRW2000、TR、SOFTICE等调试工具对付,对脱壳者有一定水平要求,涉及到很多汇编语言和软件调试方面的知识。
而自动就是用专门的脱壳工具来脱,最常用某种压缩软件都有他人写的反压缩工具对应,有些压缩工具自身能解压,如UPX;有些不提供这功能,如:ASPACK,就需要UNASPACK对付,好处是简单,缺点是版本更新了就没用了。
另外脱壳就是用专门的脱壳工具来对付,最流行的是PROCDUMP v1.62 ,可对付目前各种压缩软件的压缩档。
在这里介绍的是一些通用的方法和工具,希望对大家有帮助。
我们知道文件的加密方式,就可以使用不同的工具、不同的方法进行脱壳。
下面是我们常常会碰到的加壳方式及简单的脱壳措施,供大家参考: 脱壳的基本原则就是单步跟踪,只能往前,不能往后。
脱壳的一般流程是:查壳->寻找OEP->Dump->修复 找OEP的一般思路如下: 先看壳是加密壳还是压缩壳,压缩壳相对来说容易些,一般是没有异常,找到对应的popad后就能到入口,跳到入口的方式一般为。
我们知道文件被一些压缩加壳软件加密,下一步我们就要分析加密软件的名称、版本。
因为不同软件甚至不同版本加的壳,脱壳处理的方法都不相同。
常用脱壳工具: 1、文件分析工具(侦测壳的类型):Fi,GetTyp,peid,pe-scan, 2、OEP入口查找工具:SoftICE,TRW,ollydbg,loader,peid 3、dump工具:IceDump,TRW,PEditor,ProcDump32,LordPE 4、PE文件编辑工具:PEditor,ProcDump32,LordPE 5、重建Import Table工具:ImportREC,ReVirgin 6、ASProtect脱壳专用工具:Caspr(ASPr V1.1-V1.2有效),Rad(只对ASPr V1.1有效),loader,peid (1)Aspack: 用的最多,但只要用UNASPACK或PEDUMP32脱壳就行了 (2)ASProtect+aspack: 次之,国外的软件多用它加壳,脱壳时需要用到SOFTICE+ICEDUMP,需要一定的专业知识,但最新版现在暂时没有办法。
(3)Upx: 可以用UPX本身来脱壳,但要注意版本是否一致,用-D 参数 (4)Armadill: 可以用SOFTICE+ICEDUMP脱壳,比较烦 (5)Dbpe: 国内比较好的加密软件,新版本暂时不能脱,但可以破解 (6)NeoLite: 可以用自己来脱壳 (7)Pcguard: 可以用SOFTICE+ICEDUMP+FROGICE来脱壳 (8)...
如何实现upx的脱壳(请详细说明步骤和软件)?
1,命令行一定要准确.其实你可以安装一个DosHere的注册表文件让文件夹支持直接进入cmd.或者Win+r输入cmd然后输入路径进到需要操作的文件夹然后施工,这样不容易错. 2,你可以选择用UPX Shell这个外壳工具,很方便处理文件,在option->Advanced第二项打挑可以让程序文件支持右键UpX转换. 3,UPX可以选择文件加密的,加密后的不可以直接脱壳,这是最重的重点.UpxShell中同样option-advan....里面第一项就是,另外加密也分多种,每种也有设置不同,脱壳并不是好玩的,确切说不可能"手把手教会".你要学习PE格式以及汇编等一系列的非常熬人的东西,之后还要凭运气和天赋. 4,显示UPX加壳,未必只是一个壳,有时可以重叠加几次壳(其他加密工具),这还不包括程序本身对自身的检测(脱壳看似成功,但之后不能运行) 路迢迢........
急!!加壳后的程序如何使用???
EXE程序加壳就像压缩文件一样对待EXE程序,在运行时先在内存里对这部分数据进行解密,然后在内存里运行。
当然,加壳不光是压缩这么简单,还有在解压缩时防止DEBUG软件进行调试,防止程序被修改,CRC检验等多种功能。
加了壳后,点击运行就能打开使用,和不加壳相比,可能会慢点,因为需要在内存里解密后运行的。
什么叫加壳?怎么样加壳?
加壳是保护文件的常用手段。
加壳过的程序可以直接运行,但是不能查看源代码.要经过脱壳才可以查看源代码。
加壳的另一种常用的方式是在二进制的程序中植入一段代码,在运行的时候优先取得程序的控制权,做一些额外的工作。
大多数病毒就是基于此原理。
加壳的程序经常想尽办法阻止外部程序或软件对加壳程序的反汇编分析或者动态分析,以达到它不可告人的目的。
这种技术也常用来保护软件版权,防止被软件破解。
...
有工具可以修改加壳软件的资源吗?
步骤1 检测壳 壳的概念: 所谓“壳”就是专门压缩的工具。
这里的压缩并不是我们平时使用的RAR、ZIP这些工具的压缩,壳的压缩指的是针对exe、com、和dll等程序文件进行压缩,在程序中加入一段如同保护层的代码,使原程序文件代码失去本来面目,从而保护程序不被非法修改和反编译,这段如同保护层的代码,与自然界动植物的壳在功能上有很多相似的地方,所以我们就形象地称之为程序的壳。
壳的作用: 1.保护程序不被非法修改和反编译。
2.对程序专门进行压缩,以减小文件大小,方便传播和储存。
壳和压缩软件的压缩的区别是 压缩软件只能够压缩程序 而经过壳压缩后的exe、com和dll等程序文件可以跟正常的程序一样运行 下面来介绍一个检测壳的软件 PEID v0.92 这个软件可以检测出 450种壳 新版中增加病毒扫描功能,是目前各类查壳工具中,性能最强的。
另外还可识别出EXE文件是用什么语言编写的VC++、Delphi、VB或Delphi等。
支持文件夹批量扫描 我们用PEID对easymail.exe进行扫描 找到壳的类型了 UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo 说明是UPX的壳 下面进行 步骤2 脱壳 对一个加了壳的程序,去除其中无关的干扰信息和保护限制,把他的壳脱去,解除伪装,还原软件本来的面目。
这个过程就叫做脱壳。
脱壳成功的标志 脱壳后的文件正常运行,功能没有损耗。
还有一般脱壳后的文件长度都会大于原文件的长度。
即使同一个文件,采用不同的脱壳软件进行脱壳,由于脱壳软件的机理不通,脱出来的文件大小也不尽相同。
关于脱壳有手动脱壳和自动脱壳 自动脱壳就是用专门的脱壳机脱 很简单 按几下就 OK了 手动脱壳相对自动脱壳 需要的技术含量微高 这里不多说了 UPX是一种很老而且强大的壳 不过它的脱壳机随处就能找到 UPX本身程序就可以通过 UPX 文件名 -d 来解压缩 不过这些需要的 命令符中输入 优点方便快捷 缺点DOS界面 为了让大家省去麻烦的操作 就产生了一种叫 UPX SHELL的外壳软件 UPX SHELL v3.09 UPX 外壳程序! 目的让UPX的脱壳加壳傻瓜化 注:如果程序没有加壳 那么我们就可以省去第二步的脱壳了,直接对软件进行分析了。
脱完后 我们进行 步骤3 运行程序 尝试注册 获取注册相关信息 通过尝试注册 我们发现一个关键的字符串 “序列号输入错误” 步骤4 反汇编 反汇编一般用到的软件 都是 W32Dasm W32dasm对于新手 易于上手 操作简单 W32Dasm有很多版本 这里我推荐使用 W32Dasm 无极版 我们现在反汇编WebEasyMail的程序文件easymail.exe 然后看看能不能找到刚才的字符串 步骤5 通过eXeScope这个软件来查看未能在w32dasm中正确显示的字符串信息 eXeScope v6.50 更改字体,更改菜单,更改对话框的排列,重写可执行文件的资源,包括(EXE,DLL,OCX)等。
是方便强大的汉化工具,可以直接修改用 VC++ 及 DELPHI 编制的程序的资源,包括菜单、对话框、字符串表等 新版可以直接查看 加壳文件的资源 我们打开eXeScope 找到如下字串符 122,"序列号输入错误 " 123,"恭喜您成为W ebEasyMail正式用户中的一员! " 124,注册成功 125,失败 重点是122 步骤6 再次返回 w32dasm * Possible Reference to String Resource ID=00122: "?鲹e?" 但是双击后 提示说找不到这个字串符 不是没有 是因为 "?鲹e?"是乱码 w32dasm对于中文显示不是太好 毕竟不是国产软件 先把今天会用到的汇编基本指令跟大家解释一下 mov a,b ;把b的值赋给a,使a=b call :调用子程序 ,子程序以ret结为 ret :返回主程序 je或jz :若相等则跳转 jne或jnz :若不相等则跳转 push xx:xx 压栈 pop xx:xx 出栈 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。
里面的变量通常是局部变量、函数参数等。
我们搜索 Possible Reference to String Resource ID=00122 因为对E文支持很好 我们来到了 * Referenced by a (U)nconditional or (C)onditional Jump at Address: |:00406F17(C) //跳转来自 406F17 | * Possible Reference to String Resource ID=00125: "1%" | :004070DD 6A7D push 0000007D :004070DF 8D4C2410 lea ecx, dword ptr [esp+10] :004070E3 E8F75A1200 call 0052CBDF * Possible Reference to String Resource ID=00122: "?鲹e?" | :004070E8 6A7A push 0000007A :004070EA 8D4C2408 lea ecx, dword ptr [esp+08] :004070EE E8EC5A1200 call 0052CBDF 我们来到 :00406F01 8B876C080000 mov eax, dword ptr [edi+0000086C]这里是对 :00406F07 8B4C2408 mov ecx, dword ptr [esp+08] :00406F0B 50 push eax//这两个eax和ecx入栈就比较让我们怀疑了 :00406F0C 51 push ecx//产生注册码 :00406F0D E8AE381100 call 0051A7C0//这CALL里对注册位应该会有设置 :00406F12 83C40C add esp, 0000000C :00406F15 85C0 test eax, eax// 检测注册位 :00406F17 0F85C0010000 jne 004070DD //不存在注册位 就会跳到4070DD就会出现那个错误的字串符了 我们记住406F01这个地址 接着进行下一步 步骤7 这一步我们进行的是调试 用到的软件是ollyd...
推荐我一个好的易语言加壳器
加壳了基本会报毒。
现在不是不报,是时候未到。
如果你要加的话,简单的UPX就行了(如果你原来的没报毒,加了可之后杀软会脱壳之后再查毒),不过只有压缩功能,安全性跟没加一样。
大部分都是用这个。
想难破一点,又要傻瓜式就用Themida,百度一下破解版就有了(貌似易语言程序要设定一下才能用,你自己摸索一下吧)最难破的就是VMProtect,直接搜“VMProtect Ultimate”。
不过这个要配合易语言的SDK才能用,一般商业才用这个,SDK就搜“开源VMPSDK黑月调用模板”(黑月的,可以改造成正常版的),你看源码研究一下你就知道是怎么一回事了关于加壳,你可以去52pojie或看雪看一下,那里都是专业人士
易语言软件怎么做免杀
简单的说是直接就可以执行任务.不用你自己解压到需要的文件里了!加壳的全称应该是可执行程序资源压缩,是保护文件的常用手段. 加壳过的程序可以直接运行,但是不能查看源代码.要经过脱壳才可以查看源代码. 加壳:其实是利用特殊的算法,对EXE、DLL文件里的资源进行压缩。
类似WINZIP 的效果,只不过这个压缩之后的文件,可以独立运行,解压过程完全隐蔽,都在内存中完成。
解压原理,是加壳工具在文件头里加了一段指令,告诉CPU,怎么才能解压自己。
现在的CPU都很快,所以这个解压过程你看不出什么东西。
软件一下子就打开了,只有你机器配置非常差,才会感觉到不加壳和加壳后的软件运行速度的差别。
当你加壳时,其实就是给可执行的文件加上个外衣。
用户执行的只是这个外壳程序。
当你执行这个程序的时候这个壳就会把原来的程序在内存中解开,解开后,以后的就交给真正的程序。
所以,这些的工作只是在内存中运行的,是不可以了解具体是怎么样在内存中运行的。
通常说的对外壳加密,都是指很多网上免费或者非免费的软件,被一些专门的加壳程序加壳,基本上是对程序的压缩或者不压缩。
因为有的时候程序会过大,需要压缩。
但是大部分的程序是因为防止反跟踪,防止程序被人跟踪调试,防止算法程序不想被别人静态分析。
加密代码和数据,保护你的程序数据的完整性。
不被修改或者窥视你程序的内幕。
加“壳”虽然增加了CPU附带但是减少了硬盘读写时间,实际应用时加“壳”以后程序运行速度更快(当然有的加“壳”以后会变慢,那是选择的加“壳”工具问题)。
一般软件都加“壳”这样不但可以保护自己的软件不被破解、修改还可以增加运行时启动速度。
加“壳”不等于木马,我们平时的巨大多数软件都加了自己的专用“壳”。
RAR和ZIP都是压缩软件不是加“壳”工具,他们解压时是需要进行磁盘读写,“壳”的解压缩是直接在内存中进行的,用RAR或者ZIP压缩一个病毒你试试解压缩时杀毒软件肯定会发现,而用加“壳”手段封装老木马,能发现的杀毒软件就剩不下几个。
木马加壳的原理很简单,在黑客营中提供的多数木马中,很多都是经过处理的,而这些处理就是所谓的加壳。
大姐说,当一个EXE的程序生成好后,很轻松的就可以利用诸如资源工具和反汇编工具对它进行修改,但如果程序员给EXE程序加一个壳的话,那么至少这个加了壳的EXE程序就不是那么好修改了,如果想修改就必须先脱壳。
听雨了解鹿采薇很清楚每一个木马的加壳手段,冰河用ASPack,而灰鸽子则是UPX Shell进行加壳的
-
给我们打电话
7*24小时服务热线:1399999999
全国客服热线:400-0000-000 -
百度地图
福建省三明市 -
给我们发邮件
E-mail:[email protected]
在线沟通