朱航宇-20112878-应用程序加壳与脱壳
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
应用程序加壳与脱壳
计算机与信息学院 信息安全专业11级1班
朱航宇 20112878
(1)实验目的
通过对灰鸽子自带的加壳程序,实现对改程序的加壳操作,并对加壳前后作出相应比较。从而了解什么是加壳,什么是脱壳,以及加壳的原理、作用。
(2) 实验内容
使用灰鸽子黑防专版生成加壳和未加壳程序;使用PEID测试加壳程序;使用UPXUnpack汉化版(利用OD脱壳)对已加壳的程序进行脱壳操作。
(3) 实验步骤
1. 加壳
1. 打开灰鸽子黑防专版。
2. 配置服务程序,生成不加壳程序。
点击工具栏上的“配置服务程序”按钮,自动上线设置中,ip设置为127.0.0.1;选择“高级选项”,选择 不加壳,设置保存路径保存路径当前文件夹,保存文件名称为 Server.exe ,然后点击 生成服务器。此时在系统桌面上将生成该程序。这个程 序即为没有加壳的灰鸽子程序。
3.配置服务程序,生成加壳程序。
在主界面点击配置服务程序,打开服务器配置对话框设置好IP地址为127.0.0.1,然后点击“高级选项”选择:使用UPX加壳,保存路径当前文件夹,保存文件名设置为Server_jiake.exe ,并点击生成服务器按钮。生成的程序如图1所示。
图1.灰鸽子生成加壳和不加壳的server
4.打开PEID程序;将这两个文件分别拖到PEiD程序界面。分别查看检测结果 ,以下两个图分别是未加壳和加了壳的检测结果,如图2,图3,可以看出,未加壳程序所检测出来的是文件开发工具,而加了壳的文件检测出来的是加壳信息。
图2.未加壳的检测
图3.加壳的检测
2. 脱壳
1、打开UPXUnpack汉化版程序,主界面如下;直接拖动
Server_jiake.exe文件到程序内,显示如图4所示,生成脱壳文件Server_tuoke。
图4.加壳server脱壳
2. 再次打开PEID程序,检测Server_tuoke.exe文件的加壳信息,如图5
所示。
可以看到它的信息和未加壳server是相同的。
图5.脱壳后的server
(4) 实验结果
使用灰鸽子黑防专版成功的生成加壳和未加壳程序;使用PEID成功测试加壳程序和脱壳程序;使用UPXUnpack汉化版(利用OD脱壳)成功对已加壳的程序进行脱壳操作。
(5) 实验总结及思考
经过本次实验了解了灰鸽子的加壳和脱壳处理,对程序加壳有了初步的掌握。所谓壳,其实就是指利用特殊的算法,对exe、dll文件里面的资源进行压缩的方法,这个压缩后的文件可以独立运行,解压过程完全隐蔽,都在内存中完成解压的原理是加壳工具在文件头里加一段指令,告诉CPU,怎么才能解压自己。这种技术用于正当方面,可运用于版权保护。软解的作者可通过哈希算法对软解的关键部位求其哈希值,然后将其作为软件在内存中运行密钥,当密钥正确时方可让CPU解压。当然黑客通过对木马进行加壳从而躲避杀毒软件的检测。