[发明专利]一种反混淆方法、系统和应用在审
申请号: | 202210402618.5 | 申请日: | 2022-04-18 |
公开(公告)号: | CN114817918A | 公开(公告)日: | 2022-07-29 |
发明(设计)人: | 刘坤增;邢东进;杨洪进;刘西 | 申请(专利权)人: | 厦门蝉羽网络科技有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F8/53 |
代理公司: | 厦门千旭专利代理事务所(特殊普通合伙) 35285 | 代理人: | 郑云超 |
地址: | 361000 福建省厦门市厦门*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 混淆 方法 系统 应用 | ||
1.一种反混淆方法,其特征在于,包括:
S10:获取目标程序的二进制文件信息并转成IR中间码,区分代码块;
S20:基于所述IR中间码分析所有的代码块,并通过IR分析结构,将代码块识别为真实块或混淆块;
S30:模拟执行遍历所有代码块,获取真实块连接路径,在执行后获取真实块之间的关联;
S40:修改真实块之间的连接代码以剔除混淆块;
S50:对修改后的二进制进行反编译,获取目标程序的反编译伪代码。
2.据权利要求1所述的一种反混淆方法,其特征在于,所述S10和/或S50中,采用Hopper、010Editor、IDA或Ghidra反编译工具进行反编译;所述S10通过反编译获得文件架构为arm或arm64,将二进制文件区分代码块。
3.根据权利要求1所述的一种反混淆方法,其特征在于,所述S20包括:
用块指令特征进行块分类:块里同时存在goto和jcndv,判断为混淆块,标记混淆块且执行混淆块的前驱,如果该混淆块只有一个前驱,该前驱块也标识为混淆块;块里同时存在goto和jcndb,判断为条件块;其余为真实块,且所述条件块对应的真实块存在多个后继块,其余的真实块则对应一个后继块;
将标识后的结果分别以两个数组进行存储:realBlocks,confuseBlocks;所述条件块和真实块存储在realBlocks内,所述混淆块存储在confuseBlocks内。
4.根据权利要求1所述的一种反混淆方法,其特征在于,所述S30中,通过修改cpsr的值,建立分支镜像,让所有代码块都被遍历到。
5.根据权利要求4所述的一种反混淆方法,其特征在于,所述S30中,以unicorn作为执行工具模拟执行遍历所有代码块,获取真实块连接路径,包括:
开辟内存空间载入目标程序的二进制文件;
以函数入口开始进行模拟执行:
当执行时碰到call、jmp或BL之类的函数调用执行,则跳过,将指令patch为Nop;
当执行到cmp指令时,记录当前指令的cpsr值,以此判断该条指令是否已经进行了镜像遍历,当此条指令的所有镜像均被遍历过,则子模拟器停止运行;
当程序执行到条件指令,包括且不限于csel、b.cc、beq、bneq,开始保存当前的镜像,修改CPSR的值,建立当前指令的多条镜像,以该条指令为起始,以镜像特征为传入值,建立多个递归子模拟器;当子模拟器停止运行后,获得CPSR状态对应的不同真实块链,递归完成之后,恢复镜像,模拟器继续往下执行。
6.根据权利要求1或5所述的一种反混淆方法,其特征在于,所述S30中在执行后获取真实块之间的关联包括:
当程序执行到真实块的入口时,获得真实块的前驱,以数组方式储存,block_real_aa=[block_real_bb,block_real_cc],得到真实块链接信息;
校验条件块是否有多个后继以及其他真实块是不是有且只有一个后继;
校验完成后获得链路图:
block_real_aa-block_real_cc/block_real_cc-block_real_dd。
7.根据权利要求6所述的一种反混淆方法,其特征在于,所述S40包括:
切割链路图,使链路数据变成字典;
判断两个真实块的是否是直连:如果是直连则不需要任何修改;当两个真实块之前存在混淆块,修改前驱块的尾部代码,修改为baa_addr,其中aa_addr为后继块的头部地址,从而完成两个真实块的管理;
条件块的修复存在多个后继,基于CPSR的相关指令进行尾部的链接修改,当CPSR存在两个分支时,修改尾部两条指令:b.ne aa_addr;b bb_addr;其中aa_addr,bb_addr为对应两个真实块的地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门蝉羽网络科技有限公司,未经厦门蝉羽网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210402618.5/1.html,转载请声明来源钻瓜专利网。