[发明专利]一种软件检测方法、软件检测装置及介质在审
| 申请号: | 201910702140.6 | 申请日: | 2019-07-31 |
| 公开(公告)号: | CN112307468A | 公开(公告)日: | 2021-02-02 |
| 发明(设计)人: | 尹钻兴 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
| 主分类号: | G06F21/52 | 分类号: | G06F21/52;G06F21/56 |
| 代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 吴磊 |
| 地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 软件 检测 方法 装置 介质 | ||
本申请提供一种软件检测方法,可用于计算机程序的安全检测,包括:获取校验结构体;在待检测软件程序运行前,使用校验结构体对待检测软件程序进行校验,得到第一校验结果;在待检测软件程序运行过程中,使用校验结构体对待检测软件程序进行校验,得到第二校验结果;当第一校验结果与第二校验结果不一致时,判定待检测软件程序异常或者被修改;本申请实施例还提供一种软件检测装置、计算机设备及介质,通过第一校验结果和第二校验结果的对比,能够及时发明计算机程序中被篡改的部分,从而防止计算机病毒或黑客通过设置软件断点对软件程序进行分析,提升了软件程序的安全性。
技术领域
本发明涉及计算机技术领域,更具体地说,涉及一种软件检测方法、软件检测装置及介质。
背景技术
软件程序断点是指:由于有特殊事件(中断事件)发生,计算机暂停当前的任务(即软件程序),转而去执行另外的任务(中断服务程序),然后再返回原先的任务继续执行。
一些计算机病毒或者黑客常利用设置断点的方式,对软件程序的数据进行分析,进而达到其非法目的。
现有技术中通常采用反调试或检测调试器的方式来防止计算机病毒或者黑客利用断点入侵计算机程序,然而,此种方式容易被针对性进行对抗,从而失去保护效果。
因此,上述问题还有待于解决。
发明内容
有鉴于此,为解决上述问题,本发明提供的技术方案如下:
一种软件检测方法,包括:
获取校验结构体,所述校验结构体用于对待检测软件程序进行校验;
在所述待检测软件程序运行前,使用所述校验结构体对待检测软件程序进行校验,得到第一校验结果;
在所述待检测软件程序运行过程中,使用所述校验结构体对待检测软件程序进行校验,得到第二校验结果;
比对所述第一校验结果和所述第二校验结果;
当所述第一校验结果与所述第二校验结果不一致时,判定所述待检测软件程序异常或者被修改。
一种软件检测装置,包括:
获取单元,所述获取单元用于获取校验结构体,所述校验结构体用于对待检测软件程序进行校验;
第一校验单元,所述第一校验单元用于,在所述待检测软件程序运行前,使用所述获取单元获取的所述校验结构体对待检测软件程序进行校验,得到第一校验结果;
第二校验单元,所述第二校验单元用于,在所述待检测软件程序运行过程中,使用所述获取单元获取的所述校验结构体对待检测软件程序进行校验,得到第二校验结果;
比对单元,所述比对单元用于,比对所述第一校验单元得到的所述第一校验结果和所述第二校验单元得到的所述第二校验结果;
判定单元,所述判定单元用于,当所述比对单元判断所述第一校验结果与所述第二校验结果不一致时,判定所述待检测软件程序异常或者被修改。
可选地,所述校验结构体包括:校验函数地址、回调函数、被校验的内存起始地址以及所述被校验的内存大小,其中,所述被校验的内存用于存储所述待检测软件程序的软件代码,所述校验函数地址用于指示所述校验函数的存储地址,所述校验函数用于校验所述软件代码,所述回调函数用于验证所述校验函数的校验结果是否正确;
则所述第一校验单元还用于:
通过所述校验函数地址调用所述校验函数;
使用所述校验函数校验所述被校验的内存中所存储的所述软件代码;
通过所述回调函数判断所述校验函数的校验结果是否正确;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910702140.6/2.html,转载请声明来源钻瓜专利网。





