安卓APK文件依赖组件识别方法及装置

    公开(公告)号:CN112000339B

    公开(公告)日:2021-09-21

    申请号:CN202010657866.5

    申请日:2020-07-09

    Applicant: 北京大学

    Abstract: 本发明实施例提供一种安卓APK文件依赖组件识别方法及装置。其中,方法包括:解析安卓APK文件,获取代码文件和清单文件,根据代码文件和清单文件,获取安卓工程依赖的各组件的文件和package目录;将安卓工程依赖的各组件的文件和package目录与Android SDK部分中各组件的jar的反编译结果进行比较,获取Android SDK部分所依赖的组件;将安卓工程依赖的各组件的文件和package目录与非Android SDK部分的各package依赖的jar的反编译结果进行比较,获取非Android SDK部分所依赖的组件。本发明实施例提供的安卓APK文件依赖组件识别方法及装置,能降低误识别率。

    C/C++程序中不可达代码的静态检测方法及系统

    公开(公告)号:CN109446066A

    公开(公告)日:2019-03-08

    申请号:CN201811101415.2

    申请日:2018-09-20

    Abstract: 本发明实施例提供一种C/C++程序中不可达代码的静态检测方法及系统,其中,所述方法包括:构建待检测C/C++程序的控制依赖图和值依赖图;在所述值依赖图上进行常量分析,并根据常量分析的结果更新所述控制依赖图;对更新后的所述控制依赖图中所有守卫结点的约束表达式的可满足性进行求解;若存在不可满足的约束表达式,则从所述控制依赖图中获取与所述不可满足的约束表达式相对应的守卫结点的所有直接和间接后继结点所对应的程序代码。本发明可以检测千万行级的代码,检测速度可达到每小时百万行以上,并且检测精度超过利用符号执行技术的检测精度,具有较低的误报率和漏报率。

    一种二进制反编译中数组数据结构恢复方法及系统

    公开(公告)号:CN108958739A

    公开(公告)日:2018-12-07

    申请号:CN201810573717.3

    申请日:2018-06-06

    Abstract: 本发明提供一种二进制反编译中数组数据结构恢复方法及系统,所述方法包括:S11,对于目标反编译结果中任一非指针变量,若该非指针变量的实际占位大小与该非指针变量的类型对应的占位大小之间的差值大于第一预设阈值,则将该非指针变量作为目标变量;S12,获取目标变量在目标反编译结果中各使用位置对应的第一使用模式,若根据第一使用模式对应的第一权重确定目标变量为数组变量,则对数组变量的数据结构进行恢复。本发明实现了对反编译结果中数组数据结构的自动恢复,且提高了数组数据结构恢复的正确率。

Patent Agency Ranking