[发明专利]一种软件运行时安全的检测方法在审
申请号: | 201911194725.8 | 申请日: | 2019-11-28 |
公开(公告)号: | CN110968870A | 公开(公告)日: | 2020-04-07 |
发明(设计)人: | 胡冠睿;郭力恒;谈加虎 | 申请(专利权)人: | 广发证券股份有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 深圳市卓科知识产权代理有限公司 44534 | 代理人: | 赵辉丽;潘晓 |
地址: | 510000 广东省广州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 运行 安全 检测 方法 | ||
本发明公开了一种软件运行时安全的检测方法,包括客户端、服务器、执行程序、用于加载文件的资源、执行程序运行环境。本发明能够保证客户端的可信度,通过服务端发送一段代码到客户端,客户端执行这段代码,服务端根据响应结果来判定,客户端是否可信,能够覆盖上述方法的大部分场景。
技术领域
本发明涉及软件运行时安全的检测方法,具体涉及一种软件运行时安全的检测方法。
背景技术
软件安全就是使软件在受到恶意攻击的情形下,依然能够继续正确运行及确保软件被在授权范围内合法使用的思想。目前针对软件安全采用的技术包括软件水印、代码混淆、防篡改技术、授权加密技术以及虚拟机保护技术等。
在证券行业里,一种比较常见的攻击手段即是基于系统提供的API,采用外挂的形式接入到后台交易系统,从而实现非法接入的目的。
目前获取API的方式主要有:
1.采用网络嗅探、抓包的方式来分析网络协议,从而获取API。
2.采用破解、反编译客户端的方式获取前后端交互方式,进而获取系统API代码泄露,或者其他非正常途径获取源码,而得到API。
目前业内主要采用的是通过软件加固+动态验证的手段来保证客户端的运行环境安全,其中软件加固,主要包括以下手段:
采用加壳技术防止调试器逆向破解;
保护资源文件,防止资源文件被篡改,删除;
防二次打包:应用内任意文件被修改、替换后,都将无法正常运行;
防进程运行时调试器使用;
内存保护,防止内存篡改,调试,以及内存dump;
动态/静态链接库保护技术等。
以上技术主要偏重在正常客户端的运行环境的保护,如果破解者采用的是自有版本的客户端,那么以上保护无法保证客户端的可信度,针对这种不足,业内采用了“主动挑战”的方式来监测客户端,也即服务器发送一段代码到客户端,客户端执行这段代码,服务器根据响应结果来判定,客户端是否可信。目前主动挑战这块,尚无统一标准。
发明内容
本发明所要解决的技术问题是一种能够解决上述问题的运行时安全的检测方法。
本发明是通过以下技术方案来实现的:一种软件运行时安全的检测方法,其特征在于:包括客户端、服务器、执行程序、用于加载文件的资源、执行程序运行环境,检测方法步骤如下:
S1:服务器随机询问客户端,资源文件状态,一旦文件状态发生改变,服务器请求这些文件的hash值,并和服务器保存的hash值做比对,不一致的,则认为是异常用户;
S2:采用加壳技术,一般资源文件/代码文件采用打包的形式以静态文件存在,程序运行时脱壳,文件解压到内存中,对于这种形式,服务器可以随机查询内存中数据的hash值,来保证数据未被篡改,发现篡改的则认为异常用户;
S3:服务器随机请求函数执行的调用栈,通过函数调用关系来判断代码运行是否在安全范围内来识别异常用户;
S4:服务器随机请求函数执行环境,不限于进程列表,以及检查进程是否处于调试状态来识别异常用户。
S5:服务器随机获取函数的调用次数以及调用时间,通过对上述这些调用次数以及调用时间和正常的用户的调用次数和调用时间分布进行区分,来进行识别异常用户;
S6:对于挑战应答超时的用户,超过阈值,则认为是异常用户
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广发证券股份有限公司,未经广发证券股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911194725.8/2.html,转载请声明来源钻瓜专利网。