[发明专利]一种基于动态污点分析对加密应用的明文提取的系统有效
申请号: | 201710237625.3 | 申请日: | 2017-04-12 |
公开(公告)号: | CN107180188B | 公开(公告)日: | 2020-06-09 |
发明(设计)人: | 余顺争;吴达玳 | 申请(专利权)人: | 中山大学 |
主分类号: | G06F21/52 | 分类号: | G06F21/52;G06F21/55;H04L29/06 |
代理公司: | 广州粤高专利商标代理有限公司 44102 | 代理人: | 林丽明 |
地址: | 510275 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 动态 污点 分析 加密 应用 明文 提取 系统 | ||
1.一种基于动态污点分析对加密应用的明文提取的系统,其特征在于,包括污点数据源定位模块、动态污点分析模块、指令分析模块和内存行为分析模块,其中:
污点数据源定位模块,用于拦截加密应用的系统调用,获取系统调用中加密报文的内存地址,并对其进行污点数据源的标记;
动态污点分析模块,用于追踪有污点标记的数据源,并从污点数据源中逆向获取对其进行操作的指令执行轨迹;
指令分析模块,用于解析所获取的对污点数据进行操作的指令执行轨迹,区分污点数据的报文解密和报文处理阶段;
内存行为分析模块,用于根据加密调用指令中加密报文的内存读写行为信息,获取污点数据在报文解密阶段进行写操作且在报文处理阶段进行读操作的内存地址,并从该内存地址中提取解密后的明文信息。
2.如权利要求1所述基于动态污点分析对加密应用的明文提取的系统,其特征在于,对有污点标记的数据源的追踪包括源操作数为内存的污点追踪、目的操作数为内存的污点追踪、源操作数为寄存器的污点追踪和目的操作数为寄存器的污点追踪,所述动态污点分析模块包括:
源操作数为内存的判断单元,用于判断加密调用指令中源操作数是否包含加密报文的内存地址;
源操作数为内存的污点追踪单元,用于若源操作数为内存的判断单元判断为是,则进行源操作数为内存的污点追踪;
目的操作数为内存的判断单元,用于若源操作数为内存的判断单元判断为否时,判断加密调用指令中目的操作数是否包含加密报文的内存地址;
目的操作数为内存的污点追踪单元,用于若目的操作数为内存的判断单元判断为是,则进行目的操作数为内存的污点追踪;
源操作数为寄存器的判断单元,用于若目的操作数为内存的判断单元为否时,判断加密调用指令中的源操作数是否为寄存器;
源操作数为寄存器的污点追踪单元,用于若源操作数为寄存器的判断单元判断为是,则进行源操作数为寄存器的污点追踪;
目的操作数为寄存器的判断单元,用于若源操作数为寄存器的判断单元判断为否时,判断加密调用指令中目的操作数是否为寄存器;
目的操作数为寄存器的污点追踪单元,用于若目的操作数为寄存器的判断单元判断为是,则进行目的操作数为寄存器的污点追踪。
3.如权利要求2所述基于动态污点分析对加密应用的明文提取的系统,其特征在于,源操作数为内存时包括目的操作数为寄存器的情形和目的操作数不存在的情形,所述源操作数为内存的污点追踪单元包括:
第一追踪记录子单元,用于若内存标记为已污染,寄存器标记为已污染时,则追踪记录加密调用指令;还用于若内存标记为已污染,寄存器标记为未污染时,则追踪记录加密调用指令;还用于若内存标记为已污染,目的操作数不存在时,则追踪记录加密调用指令;
第一追踪标记子单元,用于若内存标记为已污染,寄存器标记为未污染时,则追踪标记该寄存器为已污染;还用于若内存标记为未污染,寄存器标记为已污染,则追踪标记该寄存器为未污染。
4.如权利要求2所述基于动态污点分析对加密应用的明文提取的系统,其特征在于,目的操作数为内存时包括源操作数为寄存器的情形和源操作数为立即数的情形,所述目的操作数为内存的污点追踪单元包括:
第二追踪记录子单元,用于若寄存器标记为已污染,内存标记为已污染时,则追踪记录加密调用指令;还用于若寄存器标记为已污染,内存标记为未污染时,则追踪记录加密调用指令;
第二追踪标记子单元,用于若寄存器标记为已污染,内存标记为未污染时,则追踪标记该内存为已污染;还用于若寄存器标记为未污染,内存标记为已污染,则追踪标记该内存为未污染;还用于若源作数为立即数,内存标记为已污染,则追踪标记该内存为未污染。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710237625.3/1.html,转载请声明来源钻瓜专利网。