




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章软件安全技术3.1软件安全技术概述3.2软件加密技术3.3软件分析技术3.4软件加壳技术3.5软件防盗版技术3.6常用的软件保护方法3.7应用实例引入:章导学引入(录视频)3.1软件安全技术概述3.1.1软件及其安全的基本概念1.软件的定义和分类计算机系统分为硬件系统和软件系统两部分,通常简称为硬件和软件。硬件是看得见摸得着的物理实体,如显示器、主机、打印机、键盘、鼠标、扫描仪等,它们是计算机进行工作的物质基础,软件是支配硬件进行工作的“灵魂”。软件通常包含计算机程序及其相关文档数据。根据计算机程序所起的作用,软件可分为固件、系统软件、中间件和应用软件四种类型。2.软件安全的含义软件安全泛指计算机软件与数据不受自然和人为有害因素的威胁和危害,具体来说,可以理解为软件与数据不会被有意或无意地跟踪、破坏、更改、显露、盗版、非法复制,软件系统能正常连续地运行。3.2软件加密技术软件加密是软件商为了保护软件产品而采取的一种保护方式。软件加密主要有两种形式:(1)不依赖硬件的加密(软加密)方案;(2)依赖特定硬件的加密(硬加密)方案。本节将介绍这两种加密方式涉及的软件加密技术。3.2.1软件硬加密硬加密的原理是将加密信息固化在某个硬件电路中,然后将它作为一个软件的附加设备一起交给用户。当用户运行该软件的时候,将该固化的电路设备接到计算机连接端口,软件将根据是否检测到对应的“密钥”来决定运行该软件或者屏蔽某些功能。这类硬加密常见的有软盘加密、加密狗、软件锁等。软盘加密钥匙盘的方式是最常见的软盘加密方式。所谓钥匙盘方式就是通过BIOS的INT13中断对软盘格式化一些特殊的磁道,有的还在特殊磁道里写入一定的信息,软件在运行时要检验这些信息。这种软盘就好像一把“钥匙”一样,所以被人习惯称为钥匙盘。它们的主要特点是在软磁盘的特殊位置做标记,在软件运行中计算机要读取这些特殊标记,以验证软件的合法性。由于记录这种特殊标记的位置不能被平常的复制命令或复制软件所读取,所以,钥匙盘类的软件不能被轻易复制,这样,加在软件中的“锁”就变得安全有效了。加密狗加密狗是插在计算机并行口上的软硬件结合的软件硬加密产品,包括加密代码程序和“密钥”(亦称加密盒)两部分。“密钥”中存放了“密码”,加密代码程序检查“密钥”是否存在,是否正确,在无误的情况下,去执行正常功能的应用程序。3.BIOS序列号在计算机的升级之中,主板是面临淘汰的可能性最小的硬件,因此,主板序列号是主板唯一的标志,可以被运用到软件的加密中。主板序列号其实就是BIOS序列号,因为每台计算机的主板都有唯一的标志——BIOS序列号,所以可以将这个序列号作为软件的认证信息。3.2.2软件软加密软加密是一种低成本的加密方式。它的特点是不需要有辅助的硬件存在,直接在软件中进行加密或设立密码。相关的方法有序列号法、密码表加密法和许可证法。序列号法序列号法是用户在购买正版软件的时候供应商提供给他们正确的号码,从而使他们顺利安装和使用购买的软件的方法。但是,由于计算机软件的易复制性,盗版软件只需复制软件及安装序列号,一样能够完成安装并顺利运行,在软件功能上没有任何缺损。因此,这种类型的“钥匙”其实成了一种象征性的摆设,加密强度不够。密码表加密法密码表加密法是程序在运行时提出一些提示问题,用户需要按提示问题回答,如果回答答案错误则程序停止运行。正常情况下,只有输入正确的答案,软件才认为是合法使用者。这种加密方法运行简单,使用广泛。许可证法从某种角度上说,这种方式是序列号加密的一个变种。用户从网上下载的或购买的软件并不能直接使用,软件在安装时或运行时会对计算机进行一番检测,并根据检测结果生成一个计算机的特定指纹,这个指纹可以是一个小文件,也可以是一串谁也看不懂的数,需要把这个指纹数据通过Internet、E-mail、电话、传真等方式发送到开发商那里,开发商再根据这个指纹给用户一个注册码或注册文件,一般称其为许可证,用户得到包含注册码或注册文件的许可证后,按软件要求的步骤在计算机上完成注册后方可使用。3.3软件分析技术软件逆向工程又称软件反向工程,是指通过可运行的程序,运用解密、反汇编、系统分析等手段,对软件的结构、流程、算法、代码等进行逆向分析和拆解,从而推导出软件产品的源代码、设计原理、结构、算法、处理过程、运行方法等。通常人们把对软件进行反向分析的整个过程统称为软件逆向工程,把在这个过程中所采用的技术都统称为软件逆向分析技术。本节主要介绍软件逆向分析的静态分析技术、动态分析技术与漏洞挖掘技术。3.3.1静态分析技术静态分析技术就是对反汇编得到的程序清单进行分析,从提示信息入手,了解该程序的流程与模块完成的功能。如果对静态反汇编出来的程序清单进行仔细阅读,就可以了解该软件的编程思路,实现对其进行解密。静态分析破解步骤对软件采用静态分析破解一般有以下几个步骤:侦察软件的文件类型,确定软件的运行文件是否经过加壳(软件加密或压缩)处理;如果软件被加壳,则需要使用工具进行脱壳处理;运行待破解的目标软件,一般会要求输入用户名、注册码或序列号等,任意输入一个,软件将会给出错误提示,把该提示记录下来;备份目标文件,使用反汇编工具如W32Dasm或IDAPro等对软件进行反汇编处理;在反汇编后的代码里找到前面记录的出错提示字符串;在该字符串附近仔细分析各种跳转指令和比较指令,如CMP、TEST指令等,试图找出判断注册码或序列号正误的分支,记下该指令在文件中的偏移地址;使用编译工具如WinHiex或Ultraedit打开目标文件,按照前面获得的偏移地址,在文件中找到对应的指令代码,修改后存盘,破解完毕。3.3.2动态分析技术用静态分析法可以了解编写程序的思路,但不能真正地了解软件编写的整个细节和执行过程,在对软件静态分析无效的情况下可以对程序进行动态分析。动态分析就是通过调试程序、设置断点、控制被调试程序的执行过程来发现问题。1.软件动态跟踪分析步骤对软件动态跟踪分析时可以分两步进行。(1)对软件进行粗跟踪。所谓粗跟踪,即在跟踪时,大块大块地跟踪,也就是说,每次遇到调用CALL指令、重复操作指令REP、循环操作LOOP指令以及中断调用INT指令等,一般不用跟踪进去,而是根据执行结果分析该段程序功能。(2)对关键部分进行细跟踪。在获取软件中关键模块后,便可以获取软件中我们关心的模块或程序段,这样就可以针对性地对该模块进行具体而详细的跟踪分析。在一般情况下,对关键代码的跟踪可能要反复进行若干次才能读懂该程序,每次要把比较关键的中间结果或指令地址记录下来,这样会对下一次分析有很大的帮助。3.3.3漏洞挖掘技术软件漏洞也称为脆弱性,它是计算机软件在程序的设计和实现过程中由于各种原因有意或无意中产生的不足与缺陷。目前主要的软件漏洞有拒绝服务、内存/交换区漏洞、符号连接、竞争条件、缓冲区溢出、格式化字符串、rhost、xhost等。1.软件漏洞攻击非法用户利用软件漏洞,对计算机进行的非授权操作以及所有危害计算机系统安全的行为,都被视为软件漏洞攻击行为。软件漏洞攻击行为不仅可以使攻击者获得访问权限的提升,甚至能够执行任意代码。由此可见。软件漏洞对计算机系统安全的威胁是十分巨大的。漏洞攻击技术主要包括漏洞挖掘技术和漏洞利用技术。漏洞挖掘技术是发现漏洞的主要手段。漏洞利用技术则是通过研究已发掘漏洞,开发出相应的利用代码,生成具有攻击性的文件或程序,该文件或程序在被浏览或运行后可以触发软件漏洞,从而达到攻击的目的。2.软件漏洞挖掘漏洞挖掘是漏洞攻击的重要环节,只有先挖掘出漏洞,才能够通过漏洞利用技术进行漏洞攻击。软件安全漏洞发掘可以分为对已知漏洞的检测和对未知漏洞的挖掘。已知漏洞的检测主要是通过安全扫描技术,发现系统是否存在已公布的安全漏洞。而未知漏洞挖掘的目的在于发现软件系统中可能存在但尚未发现的漏洞。现有的未知漏洞挖掘技术从操作的自动化程度角度,可分为手工分析和自动/半自动化分析;从软件的运行态角度,可分为静态检测和动态检测;从软件代码的开放性角度,可分为白盒测试、黑盒测试和灰盒测试。3.软件漏洞利用不是所有的软件漏洞都能够被利用,能够利用的漏洞也不一定值得利用。一般而言,危害等级高的,特别是漏洞描述中提到了“任意代码执行”的漏洞,利用价值最高,危害程度也就越大。这类漏洞触发之后,通常会造成溢出,从而获得代码执行的权。漏洞利用技术主要就是通过构造畸形数据造成溢出,进而执行恶意代码。常见的利用软件缺陷对应用软件系统发起攻击的技术包括缓冲区溢出攻击、堆溢出攻击、栈溢出攻击、格式化串漏洞利用等,在上述漏洞利用成功后,往往借助于shellcode跳转或者执行攻击者的恶意代码。4.软件漏洞攻击的防范防范软件漏洞攻击需要软件开发商、政府、用户三方面通力配合,才能够有效减少软件漏洞所带来的危害。软件开发商应当对所开发的软件负责,采用更加严格的软件安全测试技术,在生产环节就有效降低发掘软件漏洞的可能性。软件开发商还应该具备及时提供修补软件漏洞补丁的能力。虽然微软公司的产品漏洞很多,但是相对于其他软件要安全得多。政府作为信息产业的管理者,应当建立软件漏洞检测与公告机制。通过软件漏洞检测,尽可能主动挖掘软件的潜在漏洞,并通知软件生产商发布升级补丁修补漏洞或者推出新版本。软件漏洞公告可以建立在类似于CVE等组织的漏洞公告网站。在发布漏洞信息的同时,还应建立软件漏洞信息数据库,方便软件漏洞的分类与管理。同时,软件漏洞公告还有利于杀毒软件商升级病毒库,以查杀漏洞利用文件。在我国,中国信息安全测评中心(CNITSEC)也建立了漏洞数据库CNNVD,并通过其网站和刊物发布漏洞公告。用户作为软件的使用者,是软件漏洞攻击的最直接目标。用户应及时进行软件升级,以修补软件中存在的漏洞。但是多数用户的安全意识不高,认为软件的自动更新功能很不必要,直接将该功能关闭,同时又不关注软件漏洞信息的发布,不进行手动更新,这样的用户最容易成为软件漏洞攻击的受害者。3.4软件加壳技术针对软件逆向分析的威胁,出现了用来防止软件被逆向分析的软件加壳技术,它可以防止软件信息被披露、篡改及盗版。恶意软件和病毒为了避免被杀毒软件分析和识别也会使用加壳技术,只是动机不良,为了保护合法软件的安全,在掌握软件加壳方法的同时有必要学习软件脱壳的技巧,来识别恶意软件和病毒。本节主要介绍软件加壳的原理。3.4.1软件加壳的原理1.“壳”的定义在自然界中,植物用壳来保护种子,动物用壳来保护身体等。根据其原理,在一些计算机软件里也设计了一段专门负责保护软件不被非法修改或反编译的程序。它们一般都是先于程序运行,拿到控制权,然后完成它们保护软件的任务。由于这段程序和自然界的壳有相似的功能,基于命名的规则,这样的程序称为“壳(shell)”。2.“壳”的作用通俗而言,壳的作用就是对待保护的程序进行压缩或加密。在加壳后的程序里,壳先于原程序拿到运行的控制权,对原程序进行解压或解密之后,再运行原程序,这样就可以有效防止程序被反编译或非法修改;从本质上讲,壳是一种专门针EXE、COM、DLL等文件进行的压缩或加密的工具,使原程序文件代码失去本来的面目,达到程序不被反编译和非法修改的目的,软件加壳的原理如图3-1所示。图3-1软件加壳的原理示意图3.5软件防盗版技术通过某种技术,使得操作系统的复制方法,甚至磁盘复制软件不能将软件完整复制,或者复制后不能安装运行使用,这种技术被称为软件的防盗版技术。本节简要介绍软件防盗版技术的定义与分类。3.5.1软件防盗版的思想盗版软件主要是通过非法复制和非法安装运行来实现的。非法复制是盗版软件能得以传播的根源,而非法安装运行才是盗版软件最终的目的。如果从技术上能防止非法复制,就切断了盗版软件的盗版之源。然而,非法用户可以“借”合法用户的软件产品安装使用,显然仅防止非法复制达不到软件保护的目的。因此,防止软件非法安装运行才是防止软件盗版的最终解决方案。针对防盗版技术的具体实现细节,可以使用纯硬件方式、纯软件方式或软硬件结合的方式。纯硬件方式成本相对比较高,但灵活性差,破译相对难一些;纯软件方式几乎不需要增加任何成本,灵活性好,但破译比较容易;软硬件结合方式是前两种方式的结合,具有较好的灵活性,破译难度随软件的复杂程度而变。防止软件非法复制必须从软件发行载体入手。目前软件发行的载体主要有软磁盘、光盘以及计算机网络。软磁盘由于其容量较小,仅用于小型软件或软件密钥盘;光盘以其大容量、低成本以及耐用等特点,是目前最理想的软件发行载体;而计算机网络由于其灵活性较好,也逐渐成为小型共享软件发行的首选载体之一。防止软件非法安装运行技术通常采用的是本章已介绍过的加密技术的原理,即使用密钥将软件加密。用户可以随便复制,但是在安装运行之前需要使用密钥解密,才能正确运行软件。3.6常用的软件保护方法前面分类介绍了软什的安全防护技术,本节将集中介绍几种常用的软件保护方法。3.6.1序列号保护方法1.序列号保护机制当用户从网络上下载某个shareware——共享软件后,一般都有使用时间上的限制,当过了共享软件的试用期后,用户必须到这个软件的公司去注册后方能继续使用。注册过程一般是用户把自己的私人信息(一般主要指姓名)连同信用卡号码告诉给软件公司,软件公司会根据用户的信息计算出一个序列码,在用户得到这个序列码后,按照注册需要的步骤在软件中输人注册信息和注册码,其注册信息的合法性由软件验证通过后,软件就会取消本身的各种限制,这种加密实现起来比较简单,不需要额外的成本,用户购买也非常方便,在互联网上的软件80%都是以这种方式来保护的。3.6.2注册文件保护(KeyFile保护)1.KeyFile保护的思路KeyFile(注册文件)是一种利用文件来保护软件的方式。KeyFile一般是一个小文件,可以是纯文本文件.也可以是包含不可显示字符的二进制文件,其内容是一些加密过或未加密的数据,其中可能有用户名、注册码等信息。文件格式由软件作者自己定义。试用版软件没有注册文件,当用户向作者付费注册之后,会收到作者寄来的注册文件,其中可能包含用户的个人信息。用户只要将该文件放人指定的目录,就可以让软件成为正式版。该文件一般是放在软件的安装目录中或系统目录下。软件每次启动时,从该文件中读取数据,然后利用某种算法进行处理,根据处理的结果判断是否为正确的注册文件,如果正确则以注册版模式来运行。为增加破解难度,可以在KeyFile中加人一些垃圾信息;对于注册文件的合法性检查可分散在软件的不同模块中进行判断;对注册文件内的数据处理也尽可能采用复杂的算法。2.KeyFile破解的思路为了更好地利用KeyFile保护,不仅要了解KeyFile保护方式的原理,还要了解破解KeyFile保护的方法。KeyFile保护方式可以通过创建假的KeyFile文件来进行破解。一般来讲,KeyFile文件都是“*.key”格式,因此可以在假的KeyFile中输入一些特别的语句,作为识别的标志。然后通过动态调试工具在一些特殊的API函数上设置断点,进行断点拦截,找出KeyFile正误的判断函数,这样就容易进行破解了。3.6.3软件限制技术目前,许多应用程序都有在一定限制条件内免费使用的功能,利用该功能可以有效限制非法用户的使用,同时,还可以使合法用户在充分了解软件优缺点的基础上,再决定是否购买。实现这种功能的方法为软件限制技术。软件限制技术的利用在保护正版软件的基础上,既有效地扩大了软件的使用范围,又给用户提供了进行充分选择的机会。软件限制技术有很多种,如利用注册表限制程序使用的天数,例如限制使用30天;利用注册表限制程序使用的次数,例如限制使用45次;设定程序使用的截止日期,例如设截止日期为2013年6月30日;限制每次使用程序的时间,例如一次允许使用50分钟。限制使用程序的部分功能,例如菜单中选项是灰色的功能无法使用。这些软件限制技术既可以单独使用,也可以几个同时使用实现综合保护。3.6.4加密狗1.加密狗的构成加密狗是插在计算机并行口上的软硬件结合的软件加密产品。加密狗一般都有几十或几百字节的非易失性存储空间可供读写,有的内部还增添了一个单片机。软件运行时通过向并行口写入一定的数据,判断从并行口返回密码数据正确与否来检查加密狗是否存在。加密狗包括加密代码程序和“密钥”(亦称加密盒)两部分。加密代码程序检查“密钥”是否存在,是否正确,在无误的情况下,去执行正常功能的应用程序。“密钥”中存放了“密码”,用硬件电路实现加密。2.加密狗的工作原理为了防止程序被非法复制,加密狗所做的加密保护措施一般都包括两部分。首先是要有保存密码数据的载体,即密钥;其次是夹杂在应用程序中的主机检查程序,即加密代码。密钥应该能保证不易被解密、复制;如一般用磁盘做加密时,加密部分无法用一般的工具复制。另外,当检查程序用特殊方法去读密码时,密码应该能很容易地被读出,而不致影响应用程序的正常执行。当发现密码不对或密钥不存在时,就让主机挂起、重新启动或采用其他的措施。3.6.5反动态跟踪技术软件的反动态跟踪就是防止解密者利用程序调试工具跟踪软件的运行、窃取软件源码、取消防复制和加密功能实现对软件的动态破译。随着计算机加密技术的发展,它的对立面解密技术也应运而生并发展着。因此除了对程序进行可靠的加密外,还要有较好的反跟踪措施来防止非法复制者对所研制的软件进行解密。1.反动态跟踪技术的实现途径反动态跟踪技术总地来说有两种途径来破坏跟踪。(1)通过暂时破坏软件调试和动态跟踪软件的某些功能和运行环境,使跟踪者跟踪几步就死机、机器自启动或者屏幕混乱;(2)利用反穷举法、程序流动态控制措施、逆指令流技术等,在程序中安排大量的陷井,使跟踪者在筋疲力尽前不能进行实质有效的跟踪。例如在程序中故意地安排大量的循环、多出口程序,它们不完成任何有用功能,只是进行多次循环。3.6.6软件水印软件水印是嵌入到程序当中的秘密消息,这些消息应能方便可靠地提取出来,以证明软件的所有权,并且具有在保证程序功能的情况下不能或难以去除该消息的功能。该技术可提供所有者鉴别、所有权验证、操作跟踪、复制控制等服务,是密码学、软件工程、算法设计、图论等学科的交叉研究领域。简单地说,软件水印是用水印的思想实施软件保护。3.7应用实例在学习软件安全防护技术相关理论之后,本节将介绍两个常用的软件安全技术的应用实例,以便读者更快速地掌握几种软件加密工具的使用方法。3.7.1软件加壳脱壳软件加壳是保护代码或维护软件产权等利益所常用到的手段。目前有很多加壳与脱壳工具,脱壳又有自动脱壳和手动脱壳之分,下面以ASPack2.12和ASPackDie为AccessDriver的执行程序加壳和脱壳为例,介绍软件加壳和脱壳的方法与步骤。1.软件加壳(1)运行ASPack2.12,在其主界面选择“OpenFile"标签,从中单击【Open】按钮,如图3—2所示。图3-2“ASPack2.12”主界面(2)在打开的Selectfiletocompress对话框中选择要加壳的文件ad4.402.installer.EXE(压缩前2.11MB),然后单击【打开】按钮,如图3-3所示。图3-3Selectfiletocompress对话框接着可以看到软件会自动给ad4.402.installer加壳,如图3—4所示,并且很快就会自动加壳完毕。返回来查看ad4.402.installer文件,发现已经由原来的2.11MB压缩到了37.8KB了,可见ASPack对ad4.402.installer已进行了一次压缩壳。图3-4ASPack加壳进程图2.加壳类型侦测假设此时并不知道ad4.402.installer是用什么软件加的壳。接下来可以用Language2000来检测一下。(1)运行Language2000(中文版),在其主界面中单击【打开】按钮,如图3—5所示。图3-5用Lanuage2000侦测加壳类型结果显示界面(2)在弹出的“浏览文件夹”对话框中,选择已经加了壳的ad4.402.installer.EXE文件,单击【确定】按钮后即显示探测结果,探测结果如图3—5所示。软件的版本、类型、编写软件等信息都显现出来了。其中“程序”一栏显示了加壳的类型,从这里就可以得到对方使用什么工具加壳的了。2.软件脱壳当知道加壳的类型之后,就可以着手来脱壳了,在这里选用工具ASPackDie来完成。(1)运行ASPackDiel.41,打开“选择目标文件”对话框,如图3—6所示。图3-6“选择目标文件”对话框(2)选择ad4.402.installer.EXE文件后,单击【打开】按钮,解压后自动打开一个“ASPackDie一信息”对话框,提示脱壳后文件的名字和存放路径,如图3-7所示。图3-7“ASPackDie-信息”对话框(3)单击【确定】按钮后脱壳成功。接着查看ad4.402.installer.EXE文件发现又变回2MB多了。以上使用ASPack2.12加壳后脱壳的方法,每个软件的作者会选不同的脱壳工具,但基本操作的原理大同小异。3.7.2加密解密WinRAR压缩文件WinRAR是一款较WinZip推出晚一点的高效压缩软件,不但压缩比、操作方法都较WinZip优越,而且能兼容ZIP压缩文件,所以很快受到大家的青睐,现已成为人们常用的压缩软件,下面介绍通过WinRAR加密与解密的方法。1.用WinRAR加密文件操作步骤如下:(1)用鼠标右击需要压缩并加密的文件,在弹出的快捷菜单中选择“添加到压缩文件”命令。在打开的“压缩文件名和参数”对话框中,用户可以设置压缩文件的名称及压缩格式,如图3—8所示。图3-8“压缩文件名和参数”对话框(2)选择“高级”标签,从中单击【设置密码】按钮,如图3—9所示,在打开的“带密码压缩”对话框中,输入自己设置的密码,然后连续单击【确定】按钮即可生成加密的RAR文件。图3-9设置压缩文件密码示意图2.用AdvancedRARPasswordRecovery解密文件AdvancedRARPasswordRecovery是一款专门用于对RAR加密压缩文件进行解密的工具,其操作界面如图3—10所示。图3-10ARPR1.53操作界面操作步骤如下:(1)单击“打开”按钮,在弹出的“打开”对话框中选取需要解密的RAR文件,单击【打开】按钮。(2)在ARPR1.53主界面中单击【Start】按钮即可开始破解。破解成功后弹出“Passwordsuccessfullyrecovered!”对话框,在“Totalpasswords”一栏显示了密码的信息,如图3-11所示。图3-11密码破解显示界面3.使用RARKey解开WinRAR口令RARKey软件是专门用于对RAR加密文档进行解密的工具,用RARKey解密RAR文件的操作步骤如下:(1)运行RARKey软件,其主界面如图3—12所示。(2)设置破解选项,在主界面单击【Settings】按钮,打开如图3—13所示的Settings对话框。图3-12RARKey主界面图3-13Setting对话框在"General”标签下,可以选择破解优先权和破解方式;在“Dictionary”标签下,可以选择是否使用字典文件破解、密码长度范围,同时还可以选择字典文件及组成密码的英文字母大写情况;在“Xieveoptimization"标签下,可以选择是否使用优化暴力破解、优化暴力破解时密码的长度范围、执行优化暴力破解水平等选项;在“Brute—force”标签下,可以选择是否使用暴力破解方式以及破解时组成密码的长度。在“Symbolset”标签下,用户可以设置参与密码组合的各种字符。(3)在RARKey主界面单击【Recover】按钮,在打开的“Selectfiletorecover”对话框中选择需要破解密码的压缩文件,单击【打开】按钮,如图3—14所示。图3-14“选择解密文件”提示框(4)单击【打开】按钮后即可按照用户设置好的条件进行破解。密码破解过程中显示的界面如图3—15所示,“TestingPassword”显示了正在测试的密码,找到密码后,将给出具体提示。图3-15RARKey解密过程界面3.7.3加密解密PDF文件PDF是美国Adobe公司开发的一种通用文件格式,已成为在Internet上进行电子文档发行和数字化信息传播的理想文档格式。越来越多的电子图书、产品说明、公司文告、网络资料、电子邮件开始使用PDF格式文件。下面介绍一种PDF文件的加密解密方法。1.在AdobeAcrobat中加密PDF文件为了保护文件的内容,Adobe公司对PDF文件设置了一定的保护措施,但这一保护措施只能在AdobeAcrobat中实现,在AdobeReaderPDF阅读器中无法实现。在AdobeAcrobat中,可以通过口令来限制用户打开、打印和编辑AdobePDF。如果已经签名或验证了文档,无法将口令加入到文档。有两类口令是可用的:文档打开口令:在使用文档打开口令(也称为用户口令)的情况下,用户必须输入为打开PDF所指定的口令。许可口令:当你仅设置一个许可口令(也称为主口令),用户不需要口令(用户口令)即可打开文档。但是,用户必须输入许可口令才能设置或更改受限功能。如果用两种类型的口令保护PDF,则它可用任一种口令打开。但是,只有许可口令才允许用户更改受限功能。下面介绍PDF文件口令加密过程实现步骤。第1步:打开PDF文件。运行AdobeAcrobat(以AdobeAcrobat9为例),在主界面的菜单中选择“文件”→“打开”选项来打开一个PDF文件。第2步:使用口令加密PDF文件。(1)在菜单中选择“高级”→“安全性”→“显示安全属性”命令,打开如图3—16所示的“文档属性’’对话框,在“安全性”标签下显示了当前PDF文件的安全设置,图中显示目前这个PDF文件无安全性设置,可以被任意处理。图3-16Acrobat文档安全设置(2)在菜单中选择“高级”→“安全性”→“使用口令加密”命令,打开“口令安全性一设置”对话框,如图3-17所示。图3-17“口令安全性-设置”对话框(3)在“口令安全性一设置”对话框中勾选“要求打开文档的口令”,然后输入打开文档口令,这样用户在打开该PDF文档时,就必须输入口令;在“许可”框中勾选“限制文档编辑和打印。改变这些许可设置需要口令”,然后输入更改许可口令,这样在修改文档和口令时要求输入该口令;可以在“许可”框中设置“允许打印”项,指定允许用户用于PDF文档的打印级别;设置“允许更改”项,定义允许在PDF文档中执行的编辑操作,如图3—17所示。(4)所有这些操作完成后,保存文件。此时再在“文档属性”对话框中的“安全性”标签项中单击【显示详细信息】按钮,打开“文档安全性”对话框,显示文件的安全性设置如图3—18所示,表示该文件已被加密。图3-18显示文档安全性信息(5)再次打开该PDF文档时会弹出“口令”对话框,提示输入口令,如图3—19所示。图3-19“口令”对话框2.利用AdvancedPDFPasswordRecovery破解PDF加密文件AdvancedPDFPasswordRecovery(简称APPR)是一款专门用来解密受保护的AdobeAcrobatPDF文件的工具软件,它能方便地去除PDF文件内在的保护。该软件的安装方法很简单,就不再赘述。破解操作步骤如下。(1)APPR安装完成后,启动该程序,打开如图3—20所示的AdvancedPDFPasswordRecovery操作界面。图3-20AdvancedPDFPasswordRecovery操作界面(2)单击“Open”按钮,在打开的“Open”对话框中选择需要解密的PDF文件,然后单击【Open】按钮。(3)在文件解密前需要设置一些基本选项。在“Typeofattack”下拉列表框中,用户可以选择“Brute—force”(暴力攻击)、“Mask”、(掩码)、“Dictionary”(字典文件)、“Keysearch”(密码搜寻)等破解方式。(4)在“Range”标签中,用户可以设置暴力攻击的范围;在“Length”标签中可以设置密码长度的范围;在“Dictionary”标签中,用户可以选择破解时所使用的字典文件;在“Keysearch”标签中,用户可以设置密码搜寻的范围;在“Auto—save”标签中,用户可以设置自动保存的时间间隔、保存的文件名及文件夹;在“Options”标签中,用户可以设置使用该软件时的各种选项。(5)设置好各种选项后,单击“Start!”按钮,即可按用户设置的选项开始破解,并给出最终提示,如图3—21所示。图3-21密码被成功破解(6)在APPR的操作界面中,单击“Decryptnow”按钮可将去除密码后的PDF文件直接以一个新的文件名保存到用户指定的文件夹中。3.7.4加密解密Excel文件Excel是MicrosoftOffice套件中的一个重要的组成部分,其功能强大,操作简单,应用十分广泛。那么如何才能保护自己的电子表格,使别人不能打开,或允许其打开后不能修改呢?下面就来介绍Excel文档的一些加密解密方法。1.通过Excel自身功能加密Excel本身就具有设置密码的功能,以MicrosoftofficeExcel2007为例介绍其操作方法如下。第1步:为Excel设置文档打开密码。(1)打开一个编辑好的电子表格,单击左上角的office图标,在弹出的下拉菜单中选择“准备”→“加密文档”菜单命令,打开“加密文档’’对话框,如图3-22所示。图3-22打开“加密文档”对话框(2)在打开的“加密文档”对话框中输入打开电子表格的密码,然后单击【确定】按钮,如图3—23所示。在弹出的“确定密码”对话框中再次输入设置的打开密码,然后单击【确定】按钮,即设置文档打开密码完成,其他用户在打开该表格时就必须输入正确的密码才能打开。图3-23“加密文档对话框”第2步:为Excel工作表设置保护密码。(1)在工具栏的“审阅”功能区下,单击【保护工作表】按钮,打开“保护工作表”对话框,如图3—24所示。图3-24“保护工作表”对话框(2)在“取消工作表保护时使用的密码”文本框中输入自己的密码,在“允许此工作表的所有用户进行”列表框中选择允许其他用户可以操作的选项,即打“√”复选框表示允许其他用户进行此项操作,否则不能进行此项操作。单击【确定】按钮即可设置完毕。此后当前表格中的内容只允许浏览不允许修改。(3)如果想修改此表格,则可在“审阅”功能区下,单击【撤销工作表保护】按钮,在打开的【撤销工作表保护】对话框中输入先前设置的密码,单击【确定】按钮取消对工作表的保护,如图3—25所示。图3-25“撤销工作表保护”对话框第3步:为Excel工作簿设置保护密码。(1)在工具栏的“审阅”功能区下,单击【保护工作簿】按钮,在弹出的下拉列表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论