[发明专利]一种基于Windows平台软件的保护方法及装置有效
| 申请号: | 202011220107.9 | 申请日: | 2020-11-05 |
| 公开(公告)号: | CN112035803B | 公开(公告)日: | 2021-03-19 |
| 发明(设计)人: | 刘加勇;刘仟丰 | 申请(专利权)人: | 北京华云安信息技术有限公司 |
| 主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F21/60 |
| 代理公司: | 北京华专卓海知识产权代理事务所(普通合伙) 11664 | 代理人: | 王一 |
| 地址: | 100094 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 windows 平台 软件 保护 方法 装置 | ||
1.一种基于Windows平台软件的保护方法,其特征在于,包括:
对目标程序进行加壳处理,生成加壳后的程序文件;
响应于密码输入指令,对所述加壳后的程序文件进行反调试判断,如果当前程序正在被调试,则退出程序;否则,通过执行所述加壳后的程序文件对目标程序进行执行;
所述对目标程序进行加壳处理,包括:
判断目标程序文件是否为PE文件,如果是,则对目标程序代码段进行压缩;否则结束;
将压缩后的目标程序代码段进行加密处理,得到加密后的目标程序代码段;
将壳程序的代码段复制到所述目标程序代码段的尾部,得到加入壳程序的目标程序;
将所述加入壳程序的目标程序的程序入口点设置到壳程序,并保存目标程序的入口点;
通过配置目标程序中的数据目录表,对导入表进行处理;
将壳程序的重定位表中,每一项数据均修改为基于EXE程序默认加载基址的数据;
所述加密处理,包括:
使用国密SM4算法对压缩后的目标程序代码段进行加密,其中,通过国密SM3算法计算密钥的哈希值,并保存在程序中,所述密钥由加密者输入提供;
所述通过执行所述加壳后的程序文件对目标程序进行执行,包括:
通过国密SM3算法计算出输入的密码对应的哈希值,与程序中保存的哈希值进行匹配,如果匹配一致,则将所述密码作为密钥;否则退出程序;
通过国密SM4算法,根据所述密钥对所述加壳后的程序文件中的代码段进行解密,得到解密后的代码段;
将解密后的代码段进行解压,得到解压后的代码段;
获取解压后的代码段中目标程序的重定位表中的地址,对所述重定位表进行修复;
从内存空间中读取目标程序的导入表,对导入表进行修复;
跳转到目标程序的入口点,对目标程序进行执行。
2.根据权利要求1所述的方法,其特征在于,所述通过配置目标程序中的数据目录表,对导入表进行处理,包括:
将目标程序的数据目录表中的导入表虚拟地址偏移项和导入表虚拟地址大小项设置为0,得到修改后的导入表;
设置一内存空间,将修改后的导入表导入所述内存空间,并删除原导入表。
3.根据权利要求1所述的方法,其特征在于,所述对所述加壳后的程序文件进行反调试判断,包括:
检测当前进程环境块偏移为0x2的值是否为零值,如果是,则当前进程处于未被调试;否则,当前进程正被调试。
4.根据权利要求1所述的方法,其特征在于,对所述壳程序的代码段进行反静态分析处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京华云安信息技术有限公司,未经北京华云安信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011220107.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:采气井口装置及采气井
- 下一篇:道路监控方法、系统和电子设备





