应用程序加壳与脱壳
计算机与信息学院 信息安全专业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解压。当然黑客通过对木马进行加壳从而躲避杀毒软件的检测。
相关推荐: