[发明专利]一种基于API安全属性隐藏与攻击威胁监控的软件保护方法有效
申请号: | 201510997890.2 | 申请日: | 2015-12-28 |
公开(公告)号: | CN105653905B | 公开(公告)日: | 2018-07-24 |
发明(设计)人: | 汤战勇;郝朝辉;房鼎益;龚晓庆;陈峰;陈晓江;叶贵鑫;张洁;张恒 | 申请(专利权)人: | 西北大学 |
主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F21/14 |
代理公司: | 西安恒泰知识产权代理事务所 61216 | 代理人: | 李婷 |
地址: | 710069 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 api 安全 属性 隐藏 攻击 威胁 监控 软件 保护 方法 | ||
本发明公开了一种基于API安全属性隐藏与攻击威胁监控的软件保护方法,该方法的步骤包括获取待保护文件的原始输入信息记录表、提取文件的执行控制流图、提取API调用点、提取API传参代码块、提取API返回值解密点、转储DLL,计算新的API入口地址、构造跳板函数块、在返回值解密点插入异常指令、构造节点,生成节点库、部署节点网,构造节点背景、构造返回值解密处理函数、PE文件重构。本方法从内、外两方面对软件进行保护,从攻击者逆向工程的角度出发,分析不同API边界信息在逆向分析过程中的作用,把需要隐藏的API安全属性和检测节点库置于程序新节中,并对新节入口进行了加密处理,进一步使得攻击者难以逆向分析保护后的PE文件。
技术领域
本发明属于计算机软件安全领域,特别是一种针对Windows系统上目标二进制代码中API安全属性隐藏及结合攻击实例对软件所面临的潜在攻击威胁进行总结、分类,为这些攻击威胁设计有效的检测盒处理方式,加大攻击难度的软件保护方法。
背景技术
软件产业已经成为推动社会发展的主要动力,深入到人类生活的各个方面。根据马斯洛的需求层次理论,安全需求是仅次于生理需求的第二大需求。因此软件安全不仅是软件产业健康发展的基本需求,也是国民经济和国家安全的重要保障。由于破解技术和工具随手可得,软件攻击者可以利用反汇编器、调试器等代码分析工具窥探软件执行流程,篡改软件机密信息(如商业逻辑、知识产权、身份隐私等),破解关键算法。因此,当前的软件处于危机四伏的“白盒攻击环境”(White-Box Attack Context)。
软件的逆向分析技术是软件攻击者实施攻击过程的主要手段,软件自身的资源信息为攻击者提供切入点,攻击者不会对软件中的指令进行逐条分析,而是充分利用软件的内部状态信息来快速分析软件。API是软件中一类重要内部状态信息,常被用于分析软件行为或定位关键算法。Choi S指出API的执行序列和参数在一定程度上刻画出了软件的行为功能,并根据特定API的执行序列和参数可推测定位出软件中某些关键算法或数据的位置。Collberg提出需确保软件处在一个安全的环境中执行,提出建立黑白名单威胁库,在软件运行时对这些威胁进行监控;Gu提出软件白盒攻击环境下的14种安全模式,因此,对执行中的软件进行威胁检测,能够在一定程度上降低攻击成功率,提高软件安全性。
现有的API信息隐藏方法主要采用加壳工具对可执行文件进行保护,主要分为以下两类:①加密输入表:即对这些信息变形隐藏,使他们以密文形式呈现,以抵御攻击者的静态分析。②拦截输入地址表:在软件执行过程中,运行到API调用地址处时,才依次解密相应的密文信息,解析该符号地址。但该信息并不回填,当再次运行到该位置时,依然会执行密文解密、符号解析的代码,内存中不会出现完整的输入表明文内容。但上述方法仍存在不足:方法①在程序被载入运行后,若攻击者对输入表进行dump,就可得到程序所用的API名称等信息;方法②则不能抵御攻击者利用一些动态收集工具(如SoftSnoop)来获取API的其他信息。
现有的软件攻击威胁监控主要方法有:①张璇提出一种基于信息熵和攻击面的软件安全度量方法,利用各资源的信息熵来评估每种资源的安全威胁程度;②在软件中部署多个安全哨兵用于检测软件是否遭受篡改;③提高安全哨兵自身安全性,提出采用三线程和安全哨兵结合的方法。然而,目前在软件中处理的攻击威胁类型较单一,且威胁处理片段易被去除,同时对可被逆向分析利用的软件可用信息缺乏理论上的分析与较深入的研究案例。
发明内容
针对上述现有API信息隐藏与攻击威胁监控技术存在的缺陷和不足,本发明的目的在于,提出基于API信息隐藏与攻击威胁监控相结合的软件保护方法(SoftwareProtection Based on Combining Hiding API Information With Monitoring AttackThreats,HIMTASP),该方法从内、外两方面对软件进行保护,最终达到阻碍逆向分析、保护软件的目的。
为了实现上述任务,本发明采用以下技术方案:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北大学,未经西北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510997890.2/2.html,转载请声明来源钻瓜专利网。