第335章 脱壳(1 / 2)

 程序加密范围,包括代码加密,加壳等等,都属于三方程序附加保护措施。

这当中还存在另一种加密方式,也就是文件加密,文件内容加密。

内容加密过程往往依赖于独立程序,常见于程序保密文件输出项目。

也就是说,程序内部代码逐行运行后,在输出文档文本后,进行一次加密算法运算,紧跟着输出结果,呈现方式多数以乱码以及不规则符号呈现,这样的目的很简单,单纯的为了保存输出文件的信息安全。

如今,见到文档内这一行行乱码,刘毅点了点头,对于解密方式,他自然有着他独有的方法。

想要进行解密发觉内部代码中编写者设置的解密算法,势必是要对程序内部代码进行反编译,如此一来,另一个问题出现了,程序保护壳怎么去除?

任何一个程序在使用过程中,程序开发者不可能说,让自己的程序裸露的站在各大系统内,势必会增加外部保护壳。

进行去壳操作,可以说是进行反编译最为基础的一项操作。

说起去壳就必须要清楚,程序加壳的目的。

所谓壳,就是一项专门保护程序的一层保护代码,使原程序的内部代码失去原本的面目,从而保护程序不被非法修改和反编译,因为和龟壳的概念相差不大,因此形象的将这个外部加密保护层,称之为壳。

在去壳上,刘毅把握还是比较大的,毕竟曾经编写出太多的程序,加壳这一项,可以说是任何一个程序员必须掌握的一个技能。

翻起工具文件夹,找到国外程序壳扫描工具,ped扫描工具,紧跟着通过进程信息,找到程序根目录调出程序。

找到程序运行根目录,打开ped,加载程序,开始对程序进行扫描。

扫描过程差不多经过了十分钟,十分钟后,ped扫描工具内出息壳类型,upx。

清楚程序所加的保护壳,紧跟着开始进行脱壳操作。

对一个加了壳的程序,去除当中无关的干扰信息和保护限制,这一过程,也就是脱壳的过程,同时,如何验证一个壳是否脱壳成功,检测方法,就在于脱壳后,程序是否允许正常同时使用反汇编工具能否找到程序接口,这两点一一成功,证明脱壳成功。

upx的壳是一种年纪比较大同时防护强度非常高的壳,不过,也正因此,因为年岁较大,脱壳方式更是层出不穷。

紧跟着,继续打开工具,找到ollydbg,正式进入到脱壳进程当中。

开始,使用od载入程序,随着程序的载入,od弹出附加壳信息,因为之前已经使用过ped查出了壳的类型,见到这样的提示信息,也没多少意外,紧跟着继续使用汇编程序继续分析。

对于upx这款壳,汇编入口点,刘毅还是清楚的,紧跟着打开程序内部搜索工具,键入“pushad”

紧跟着,画面刷新下来,光标指向入口点。

0040e8cc57pushedi

0040e8cd83cdfforebp,ffffffff

0040e8d0eb10jmpshortchap702.0040e8e2

0040e8d290nop

看着入口点,下设多项信息,刘毅眯起了眼睛,静静的看着,见信息点内,无问题,准备下断,下断在55pushebp这一点,系统放空,紧跟着取消断点,返回。

这样一个简短的操作,可以说,将upx彻底粉碎,如今将自己的操作命令保存,将加载程序重新保存在桌面上,一个与之前加载一模一样的程序保存在了桌面上。

紧跟着,也没敢运行当前保存的程序,仅仅是继续使用ob再次进行程序加载,当然,这次加载的并非是原程序,而是脱壳之后保存下来的无壳程序。

随着程序的加载,汇编界面命令发生了非常大的变化,多数的代码信息全部显示出来。

看着这些信息,刘毅知道,这次的脱壳算是成功了。

成功后,通过内部文字文本搜索工具,准备对程序代码内一切有关文本线索进行搜索,想要从中找到解密字符串。

找到程序主接口后,点开ob自带的字符串搜索工具,很快,一列列字符出现在了主显示区域内。

看着这些字符信息,刘毅自上向下看了看,多数字符都是无用的。

见到此处,刘毅挠了挠头,自语道:“难不成加解密字符串也被这个人进行了语法加密?”

要知道程序代码内,多数以整数型逻辑形和文本型为主,如今刘毅所利用汇编工具进行字符串搜索所用的核心方式,就是搜索整个程序内,文本型数据的集合搜索,也就是说,整个程序内任何的字符都被搜索出来。

如今字符型数据内,已经浏览了一半的字符型数据,仍没见到带有解密字符串呈现,刘毅不得不怀疑,这当中是不是还有其他什么自己没有想到的东西在里边儿。

内部代码,字符串隐藏方式较多。

简单说明一点,就可以完全摆脱自己如今使用的方法查找字符串。

关于程序内部代码当中的代码形式,分为逻辑型,文本型,整数型。

如今所使用到的方式是文字型字符串搜索,通过表面文字简单分析,不难看出,这种搜索方式只对字符型数据有效,若是想要逃过这样的搜索,只需要进行一个语句就可进行逃避。

形式转变,也就是将文本型数据进行一次转换,将文本,变向转变成整数型,从而使文字类数据以整数型数据进行伪装保存。

这样下来,原本是带有字符串的数据伪装成了整数型数据,那么,想要对字符串数据进行搜索检测,显而易见,这一条路就不通了。

猜想到这儿,刘毅摇了摇头。

毕竟对方的程序已经进行了加壳处理,再对内部代码进行如此的优化还是太过繁琐了,觉得这样一个猜想不大成立,紧跟着,继续浏览着文本数据。

可能也是因为刘毅的命还算不错,多亏了他联系到加壳这一块儿,才没有转换思路,在字符串数据最下方,终于两串儿等距长度的字符串出现在了黑底汇编界面内。

看到这两串字符串,刘毅握紧了拳头,心中多少还是有些激动的。

紧跟着,迅速将两串字符串拷贝下来,紧跟着想也没想,立刻关闭了汇编工具。

最新小说: 犟种传奇 地球上的一百亿个夜晚 影视世界诸天大佬 起源:格林神话 深空蔚蓝机甲武耀 末世多子多福:美女太多安全屋都装不下了! 奈奥斯特奥特曼 四合院我何雨柱是厨神 开局我变身刑天铠甲英雄救美 人在原神,开局拯救五夜叉