《万能数据库查询分析器》的EXE文件加壳技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《万能数据库查询分析器》的EXE文件加壳技术
马根峰
( 广东联合电子收费股份有限公司, 广州510300)
作者博客:
新浪博客:/magenfeng
搜狐博客:/
QQ空间:/
0引言
对于一个程序开发单位或者个人而言,如何才能防止别人使用DEBUG工具来破解您的程序,更好地保护您的知识产权?
一个比较通用的做法就是把你的EXE文件进行加壳,即将EXE文件进行切分、加密。
对外您只需发布各个加密的EXE子文件,而不用提供EXE文件。
这样别人也就无法DEBUG 您的EXE文件来进行破解。
在系统启动时,通过运行EXE外壳程序,来对各个加密EXE子文件进行解密并加载到一块内存中,从而在内存中直接启动您的应用程序。
总之,在发布软件时,您可以不发布EXE文件,只发布各个加密的EXE子文件和EXE 外壳引导程序,实现对您的软件的保护。
1万能数据库查询分析器所采用的软件保护技术
中国本土程序员马根峰推出的个人作品----万能数据库查询分析器,其中文版本《DB 查询分析器》、英文版本《DB Query Analyzer》。
它集哈希技术、链表等多种数据结构于一体,使用先进系统开发技术,经历4年的研究、开发、测试周期,长达5万多行代码的工作量,使得万能数据库查询分析器具有强大的功能、友好的操作界面、良好的操作性、跨越数据库平台。
出于对对自已程序的保护,马根峰同样对中英文版本的EXE程序文件进行了加壳技术。
从系统产生至今的三个版本,1.0版本、1.03版本到1.04版本都采用了加壳技术,并且EXE 文件进行切分、加密是用自己开发的程序所完成。
发布的安装程序中“DB_part1.del”、“DB_part2.del”、“DB_part3.del”、“DB_part4.del”就是万能查询分析器中英文版本的EXE 文件所切分、加密后的密文文件,具体生成过程见图1所示。
图1 《万能数据库查询分析器》EXE文件的切分、加密过程
用户下载《万能数据库查询分析器》中英文版本安装程序,在计算机上安装后,就可以运行了。
整个程序运行的过程如图2所示。
图2 《万能数据库查询分析器》的装载与执行过程“DBQueryAnalyzer.ex_”(这是安装前的文件名,安装到计算机系统中之后,名称就变成“DBQueryAnalyzer.exe”),就是自己所编写的EXE外壳引导程序。
“DBQueryAnalyzer.ex_”的作用就是将EXE文件切分、加密后的四个子文件“DB_part1.del”、“DB_part2.del”、“DB_part3.del”、“DB_part4.del”解密,然后组装后装入内存,这时EXE外壳引导程序“DBQueryAnalyzer.exe”就退出运行,调用内存中“万能数据库查询分析器”的执行文件区域。
3加壳技术的美中不足
EXE文件加壳技术有效的保护了自己的软件,但由于其原理类似于病毒的工作原理,所以被相当一部分杀毒软件误认为是木马病毒,尽管本人已经发信给国内外的杀毒软件商,告知他们本人的程序,但由于别人财大气粗,效率不高,至今《万能数据库查询分析器》的中文版本《DB 查询分析器》、英文版本《DB Query Analyzer》的安装程序依然被当成木马病毒而误杀。
很不可思议的是,2007年5月份在国内外各大软件下载网站(包括国外的、,并且后者还声明说“DB Query Analyzer - SOFTPEDIA "100% CLEAN" AW ARD”)发布时,都没有被误杀啊,怎么今年就开始误杀了呢,木马病毒都出现了多少
年了噢,真是想不通啊!
技术交流的话,
联系方式:
QQ:630414817
MSN: magenfeng@
QQ添加好友时请输入验证信息:查询分析器。