`
yiyeqinghuasoon
  • 浏览: 680704 次
文章分类
社区版块
存档分类
最新评论

《万能数据库查询分析器》的EXE文件加壳技术

 
阅读更多

《万能数据库查询分析器》的EXE文件加壳技术

<wbr><wbr><wbr><wbr><wbr> 马根峰<wbr> ( 广东联合电子收费股份有限公司, 广州 510300)</wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

<wbr></wbr>

作者博客:

新浪博客: <wbr><wbr><a href="http://blog.sina.com.cn/magenfeng">http://blog.sina.com.cn/magenfeng</a></wbr></wbr>

搜狐博客: <wbr><wbr><a href="http://magenfeng.blog.sohu.com/">http://magenfeng.blog.sohu.com/</a><wbr></wbr></wbr></wbr>

QQ空间: <wbr><wbr><wbr><a href="http://630414817.qzone.qq.com/">http://630414817.qzone.qq.com/</a><wbr></wbr></wbr></wbr></wbr>

CSDN文库: http://download.csdn.net/user/magenfeng

CSDN博客: http://blog.csdn.net/magenfeng

<wbr></wbr>

<wbr><wbr></wbr></wbr>

1<wbr><wbr><wbr><wbr><wbr><wbr> 引言 <wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><span style="font-size:13px"><wbr>对于一个程序开发单位或者个人而言,如何才能防止别人使用DEBUG工具来破解您的程序,更好地保护您的知识产权?</wbr></span></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><span style="color:#ff0000"> 一个比较通用的做法就是把你的EXE文件进行加壳</span></wbr></wbr></wbr></wbr>,即将EXE文件进行切分、加密。对外您只需发布各个加密的EXE子文件,而不用提供EXE文件。这样别人也就无法DEBUG您的EXE文件来进行破解。

<wbr><wbr><wbr><wbr><span style="color:#ff0000">在系统启动时,通过运行EXE外壳程序,来对各个加密EXE子文件进行解密并加载到一块内存中,从而在内存中直接启动您的应用程序。</span></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr> 总之,在发布软件时,您可以不发布EXE文件,只发布各个加密的EXE子文件和EXE外壳引导程序,实现对您的软件的保护。</wbr></wbr></wbr></wbr>

<wbr></wbr>

<wbr></wbr>

2<wbr><wbr><wbr><wbr><wbr> 万能数据库查询分析器所采用的软件保护技术</wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><span style="font-size:13px"><wbr><wbr> 中国本土程序员马根峰推出的个人作品----万能数据库查询分析器,其中文版本《DB 查询分析器》、英文版本《DB Query Analyzer》。它集哈希技术、链表</wbr></wbr></span><span style="font-size:13px">等多种数据结构于一体,使用先进系统开发技术,经历4年的研究、开发、测试周期,长达5万多行代码的工作量,使得万能数据库查询分析器具有强大的功能、友</span><span style="font-size:13px">好的操作界面、良好的操作性、跨越数据库平台。</span></wbr></wbr>

<wbr><wbr><wbr><wbr> 出于对对自已程序的保护,马根峰同样对中英文版本的EXE程序文件进行了加壳技术。<span style="color:#ff0000"><strong>从系统产生至今的三个版本,1.0版本、1.03版本到1.04版本都采用</strong></span></wbr></wbr></wbr></wbr>了加壳技术,并且EXE文件进行切分、加密是用自己开发的程序所完成。发布的安装程序中“DB_part1.del”、“DB_part2.del”、“DB_part3.del”、“DB_part4.del”就是万能查询分析器中英文版本的EXE文件所切分、加密后的密文文件,具体的生成过程见图1所示。

<wbr><a href="http://photo.blog.sina.com.cn/showpic.html#blogid=4b70463f0100vx1r&amp;url=http://s6.sinaimg.cn/orignal/4b70463fgb2b70b8a7935" target="_blank"></a><br><img alt="" src="http://hi.csdn.net/attachment/201201/6/0_13258337244brv.gif"><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>图1<wbr><wbr> 《万能数据库查询分析器》EXE文件的切分、加密过程</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

<wbr></wbr>

<wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><span style="font-size:13px"> 用户下载《万能数据库查询分析器》中英文版本安装程序,在计算机上安装后,就可以运行了。整个程序运行的过程如图2所示。</span></wbr></wbr></wbr></wbr></wbr>

<wbr><a href="http://photo.blog.sina.com.cn/showpic.html#blogid=4b70463f0100vx1r&amp;url=http://s2.sinaimg.cn/orignal/4b70463fgb2ca50849481" target="_blank"></a><br><br><a href="http://photo.blog.sina.com.cn/showpic.html#blogid=4b70463f0100vx1r&amp;url=http://s14.sinaimg.cn/orignal/4b70463fgb2b70c7ea6dd" target="_blank"></a><img alt="" src="http://hi.csdn.net/attachment/201201/6/0_1325833744aaUa.gif"><br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr> 图2<wbr><wbr> 《万能数据库查询分析器》的装载与执行过程</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><span style="font-size:13px">“<strong><span style="color:#f815ff">DBQueryAnalyzer.ex_</span></strong>”(这是安装前的文件名,安装到计算机系统中之后,名称就变成“<span style="color:#f815ff"><strong>DBQueryAnalyzer.exe</strong></span>”),<strong><span style="color:#f815ff">就是自己所编写的</span><span style="color:#f815ff">EXE</span><span style="color:#f815ff">外壳引</span></strong></span><span style="font-size:13px"><strong><span style="color:#f815ff">导程序</span></strong>。“DBQueryAnalyzer.ex_”的作用就是将EXE文件切分、加密后的四个子文件“DB_part1.del”、“DB_part2.del”、“DB_part3.del”、</span><span style="font-size:13px">“DB_part4.del”解密,然后组装后装入内存,这时EXE外壳引导程序“DBQueryAnalyzer.exe”就退出运行,调用内存中“万能数据库查询分析器”的执行文件</span><span style="font-size:13px">区域。</span></wbr></wbr></wbr></wbr></wbr>

<wbr></wbr>

<wbr></wbr>

<wbr></wbr>

3<wbr><wbr><wbr><wbr><wbr><wbr><wbr> 计算机病毒的重要特征</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

计算机病毒具有以下几个特点:

寄生性

  <wbr><wbr><wbr><wbr> 计算机病毒寄生在其他程序之中,当执行这个程序时,病毒就起破坏作用,而在未启动这个程序之前,它是不易被人发觉的。</wbr></wbr></wbr></wbr>

传染性

  <wbr><wbr><wbr><wbr> 计算机病毒不但本身具有破坏性,更有害的是具有传染性,一旦病毒被复制或产生变种,其速度之快令人难以预防。<strong>传染性是病毒的基本特征</strong>。</wbr></wbr></wbr></wbr>

潜伏性

  <wbr><wbr><wbr><wbr> 有些病毒像定时一样,让它什么时间发作是预先设计好的。比如黑色星期五病毒,不到预定时间一点都觉察不出来,等到条件具备的时候一下子就爆炸开来,对系统进行破坏。</wbr></wbr></wbr></wbr>

破坏性

  <wbr><wbr><wbr><wbr><strong>计算机中毒后,可能会导致正常的程序无法运行,把计算机内的文件删除或受到不同程度的损坏</strong> 。通常表现为:增、删、改、移。</wbr></wbr></wbr></wbr>

可触发性

  <wbr><wbr><wbr><wbr> 病毒因某个事件或数值的出现,诱使病毒实施感染或进行攻击的特性称为可触发性。为了隐蔽自己,病毒必须潜伏,少做动作。如果完全不动,一直潜伏</wbr></wbr></wbr></wbr>的话,病毒既不能感染也不能进行破坏,便失去了杀伤力。病毒既要隐蔽又要维持杀伤力,它必须具有可触发性。

<wbr></wbr>

4<wbr><wbr><wbr><wbr><wbr><wbr><wbr> 加壳技术的美中不足</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

EXE文件加壳技术有效的保护了自己的软件,然而由于其加载到内存运行的原理有点类似于病毒的工作原理,所以被相当一部分杀毒软件误认为是木马病毒。但在一个程序中往往会调用另外的程序、或者动态分配内存,仅凭这一点就作为判断病毒的依据,岂非有点儿戏。

从另一方面讲,《万能数据库查询分析器》根本不具有计算机病毒的特征:寄生性、传染性、潜伏性、破坏性、可触发性。所以我都不知道国内外的杀毒软件产品依据什么来将《万能数据库查询分析器》误判为计算机病毒,真是颇为费解。

尽管本人已经发信给国内外的杀毒软件商,告知他们本人的程序,但由于别人财大气粗,效率不高,至今《万能数据库查询分析器》的中文版本《DB 查询分析器》、英文版本《DB Query Analyzer》的安装程序依然被当成木马病毒而误杀。

很不可思议的是,2007年5月份在国内外各大软件下载网站(包括国外的download.com、softpedia.com,并且后者还声明说“DB Query Analyzer -SOFTPEDIA "100% CLEAN" AWARD”)发布时都没有被误杀啊,怎么今年就开始误杀了呢,木马病毒都出现了多少年了噢,真是想不通啊!

<wbr></wbr>

<wbr></wbr>

技术交流的话,

联系方式:

QQ:630414817

MSN: magenfeng@hotmail.com

QQ添加好友时请输入验证信息:查询分析器



分享到:
评论

相关推荐

    万能数据库查询分析器使用技巧(十五)

    万能数据库查询分析器,又称《DB查询分析器》(英文版《DB Query Analyzer》),是一款由马根峰开发的跨平台数据库管理工具,其功能强大,界面友好,支持多种数据库平台以及Excel和文本文件。用户可以通过该工具查询...

    万能数据库查询分析器使用技巧(三)

    2. **高效的查询性能**:通过集成哈希技术、链表等多种数据结构,万能数据库查询分析器能够高效地处理复杂的查询任务,提高数据检索的速度和准确性。 3. **丰富的查询分析功能**:软件支持SQL语句的注释、执行等功能...

    万能数据查询分析器

    数据查询是“万能数据查询分析器”的基础,它支持多种数据库类型,包括但不限于SQL Server、MySQL、Oracle、PostgreSQL等,用户可以根据自己的数据库环境进行连接。查询语言支持标准SQL,同时也提供了一种图形化的...

    《DB 查询分析器》中断SQL语句的执行

    例如,在发现查询执行时间远超预期时,可以通过万能数据库查询分析器快速取消执行,避免对数据库性能造成不必要的负担。此外,与传统的客户端工具不同,该工具在中断查询后不会在数据库服务器上留下僵尸进程,确保了...

    Access数据库查询分析器

    这个轻量级的应用程序允许用户选择性地打开Access数据库文件(.mdb或.accdb),以便对数据模式进行可视化展示,同时支持执行SQL查询以获取所需的结果。 在Access数据库管理中,查询是至关重要的功能,它允许用户从...

    EXE文件分析器(可以给EXE资源编辑)

    EXE文件分析器是一款强大的工具,专用于对可执行文件(EXE)进行深入的资源管理和编辑。这个软件允许用户查看、添加、修改或删除EXE文件中的各种资源,如图标、位图、对话框、菜单、字符串表等。通过这款工具,...

    用“DB查询分析器”的对象浏览器来展现数据库的数据字典

    “万能数据库查询分析器”是由中国程序员马根峰开发的一款跨平台工具,具有中文版《DB查询分析器》和英文版《DB Query Analyzer》。该工具因其强大的功能、易用的界面和多数据库支持而受到推崇。它不受时间限制,...

    C#开发的WinForm查询分析器

    《C#开发的WinForm查询分析器:提升数据库操作效率的利器》 在信息技术日新月异的今天,开发人员面临着各种繁重的工作任务,尤其是处理数据库查询与分析时,频繁的手动编写SQL语句无疑增加了工作负担。为了解决这一...

    sql2000查询分析器

    SQL2000查询分析器是Microsoft SQL Server 2000版本中的一个重要工具,它为数据库管理员和开发人员提供了一个界面,用于编写、执行和测试SQL语句以及Transact-SQL脚本。这个工具在没有安装完整版SQL Server企业管理...

    exe程序加壳

    这个源码可能是用于演示或学习如何实现一个简单的加壳器的,通过对源码的分析,我们可以更深入地理解加壳技术的实现细节,例如如何解析PE文件结构,如何编写解包逻辑等。 总结起来,EXE程序加壳是一种保护和隐藏可...

    如何使用查询分析器:提升数据库性能的实践指南

    随着技术的不断发展,查询分析器也在不断进化,提供了更多高级功能和自动化工具,帮助用户更高效地优化数据库性能。 数据库查询分析器是数据库管理和性能优化的重要工具。它可以帮助开发者和数据库管理员理解、诊断...

    DB2 查询分析器 C# ERWIN

    DB2查询分析器C# ERWIN是一个专门设计用于DB2数据库管理系统的开发工具,它集成了C#编程语言和ERWIN数据建模工具的优势。这个工具的主要目标是简化SQL语句的编写和执行过程,特别是在处理ERWIN模型中的物理视图和...

    SqlServer免安装客户端查询分析器

    SqlServer免安装客户端查询分析器,软件小,支持2000/2005/2008版本

    用.net编写的查询分析器

    在信息技术领域,数据库查询分析器是不可或缺的工具,它能够帮助开发者和数据库管理员高效地编写、测试和优化SQL查询。本文将深入探讨一个基于.NET框架构建的查询分析器,通过解析标题和描述,我们可以推测这是一个...

    sql查询分析器绿色版

    【SQL查询分析器绿色版】是一款专为SQL SERVER 2000设计的轻量级数据库查询工具,它简化了数据库管理员和开发人员对数据库进行交互的过程。此绿色版无需安装,用户只需运行isqlw.exe文件即可启动,极大地提高了工作...

    DB 查询分析器使用手册

    作为一款万能的数据库查询分析器,它为数据库管理员、开发者提供了便捷的数据库访问、管理和维护功能,同时也支持对Excel文件的操作。 ### 1. 系统简介 1.1 前言 在数据库管理领域,找到一个能够适应多种数据库...

    Sqllite查询分析器.zip

    在SQLite查询分析器中,你可以选择SQLite的.db数据库文件,进行连接并管理其中的数据。这个工具通常具有图形化的用户界面,使得非程序员也能方便地操作数据库。它可能包括了表的浏览、数据的导入导出、SQL语句的编写...

Global site tag (gtag.js) - Google Analytics