第十三章 软件反跟踪技术.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

主动检测跟踪法定时检测法一个程序在正常运行和被跟踪运行时,所花的时间是大不相同的,可以想象一个被跟踪运行的程序往往要花费极长的时间,反跟踪技术抓住这个特点,根据执行时间的长短来判断是否被跟踪。偶尔检测法在加密系统中加入判断时间的功能,并且当时间满足某一条件时再对加密系统中的关键部位进行判断,如果关键部位不存在或发现了变化则可判定加密系统已经被破坏,应立即做出相应的反应第30页,共53页,星期日,2025年,2月5日主动检测跟踪法利用时钟中断法在反跟踪技术中利用时钟中断可以定时检查前台任务执行的情况,如果发现前台的程序被非法跟踪调试,可以立即采取相应的措施,也可以对中断向量表作定时检查、计算程序执行时间、密文的译码操作和前面说到的定时清屏等等PSP法每个程序在执行时都必须建立对应的程序段前缀PSP,当程序未被跟踪执行时,PSP中14H与16H开始的两个字节是相同的,当被跟踪运行时,这些内容就不会相同。第31页,共53页,星期日,2025年,2月5日主动检测跟踪法中断检测法一个执行的程序如未被跟踪,则INT1和INT3的入口地址相同,且都为哑中断,如被跟踪则相反,所以通过检测INT1和INT3的入口地址即可判断是否被跟踪。第32页,共53页,星期日,2025年,2月5日设置堆栈指针法跟踪调试软件在运行时,会产生对堆栈的操作动作,比如:保存断点。因而在反跟踪技术中对于堆栈指针的运用就显得相当重要了,比如对堆栈指针的值进行设计,并力求使设计的结果具备一定的抗修改性,以免解密者通过再次修改堆栈指针的值来达到继续跟踪的目的。第33页,共53页,星期日,2025年,2月5日设置堆栈指针法将堆栈指针设到ROM区:只读存储区ROM是无法保存数据的,堆栈指针如果指向ROM区域,势必不能保存数据,这将会使跟踪调试无法继续进行下去。设在程序段中:堆栈指针如果设在将要执行的程序段中,那么任何的堆栈操作都会破坏程序代码,使程序不能正常运行。设在中断向量表内:INT1和INT3是反跟踪技术一定要破坏的中断,所以将堆栈指针设在内存的低地址段内,既可以进行少量的堆栈操作(跟踪调试软件一般需要大量的堆栈来存放数据),还可以破坏单步和断点中断的入口地址。第34页,共53页,星期日,2025年,2月5日设置堆栈指针法将堆栈指针移作它用:如果确认没有堆栈操作的话,可以将堆栈指针拿来做其它用途,如保存经常要更换的数据,这样就可以使堆栈指针的值经常更换,从而使它根本无法保存数据。前提条件:要保证将要执行的程序段不能进行有效的堆栈操作;在要进行堆栈操作时,必须首先恢复正确的堆栈指针。第35页,共53页,星期日,2025年,2月5日代码加密法对程序分块加密执行为了防止加密程序被反汇编,加密程序最好以分块的密文形式装入内存,在执行时由上一块加密程序对其进行译码,而且在某一块执行结束后必须立即对它进行清除,这样在任何时刻内不可能从内存中得到完整的解密程序代码。这种方法除了能防止反汇编外还可以使解密者无法设置断点,从而从一个侧面来防止动态跟踪。第36页,共53页,星期日,2025年,2月5日代码加密法对程序段进行校验对一个加密程序的解密工作往往只是对几个关键指令的修改,因此对程序段特别是关键指令的保护性校验是十分必要的,这样可以防止解密者对指令进行非法篡改。具体方法有累计、累减、累或和异或和程序段等方法。第37页,共53页,星期日,2025年,2月5日代码加密法迷惑、拖垮解密者在加密系统中多多设置专门针对解密者的陷阱设置大循环废指令法:在加密程序中设置适当的无用程序段程序自生成技术:程序的自生成是指在程序的运行过程中,利用上面的程序来生成将要执行的指令代码,并在程序中设置各种反跟踪措施的技术第38页,共53页,星期日,2025年,2月5日**软件学院第十三章软件反跟踪技术第1页,共53页,星期日,2025年,2月5日软件反跟踪技术软件分析技术概述加密反跟踪技术跟踪技术反跟踪技术执行程序结构静态跟踪、防静态分析、反防静态分析第2页,共53页,星期日,2025年,2月5日软件反跟踪技术动态跟踪、防动态跟踪破坏debug的基本方法主动检测跟踪法代码加密法其他防跟踪方法小结软件防跟踪编程技巧反跟踪程序例子常用工具介绍第3页,共53页,星期日,2025年,2月5日软件分析技术概述在进行软件的破解、解密以及计算机病毒分析工作中,一个首要的问题是对软件及病毒进行分析。这些软件都是机器代码程序,对于它们分析必须使用静态或动态调试工具,分析跟踪其汇编代码。第4页,共53页

文档评论(0)

xiaoshun2024 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档