-
公开(公告)号:CN112199684A
公开(公告)日:2021-01-08
申请号:CN202010998365.3
申请日:2020-09-21
Applicant: 复旦大学
IPC: G06F21/57 , G06F40/194
Abstract: 本发明属于安卓平台漏洞对抗技术领域,是基于跨语言代码关联的Java补丁存在性检测方法。本发明利用字节码中的调试信息来关联源代码;引入细粒度分析,以区分目标待测程序中是否存在补丁;引入补丁前的参照版本以及补丁后的参照版本,与待测程序进行关联分析;具体步骤包括:跨语言的行匹配,是基于特征来建立两种语言之间的行关联;Java补丁分析,提取出打补丁前后源码的补丁信息,根据补丁的位置和状态将每一行补丁分类成行添加、行删除和行修改;Java补丁检测,从两张行关联图中查询每一行补丁的存在情况,最后将每一行补丁的存在状况综合起来以考量整个补丁的存在性。本发明能够完全提供行粒度的补丁检测结果,为无源码的字节码补丁检测提供新的手段。
-
公开(公告)号:CN112199115A
公开(公告)日:2021-01-08
申请号:CN202010998361.5
申请日:2020-09-21
Applicant: 复旦大学
IPC: G06F8/74 , G06F40/194 , G06F40/284 , G06F40/268 , G06F40/216
Abstract: 本发明属于安卓平台应用安全分析技术领域,具体为一种基于特征相似度的Java字节码和源代码关联方法。本发明包括:基于条件随机场(CRF)的Java字节码分行,首先收集大量已标注调试信息的Java字节码文件,将这些已标注的字节码文件输入CRF模型进行训练,训练完成后的CRF模型用于对无源码行信息的字节码文件自动进行精准的行分割;跨语言的特征提取,即提取Java字节码和源码中的特征;Java字节码与源码之间的行匹配,即利用最长公共子序列算法求解Java字节码行与源码行之间最优的匹配结果。本发明能够精准地建立起Java字节码与Java源码之间行对行粒度的映射关系,为安卓平台上闭源软件的分析提供极大的便利。
-