-
公开(公告)号:CN115408700A
公开(公告)日:2022-11-29
申请号:CN202210863358.1
申请日:2022-07-20
Applicant: 中国人民解放军战略支援部队信息工程大学
IPC: G06F21/57
Abstract: 本发明属于开源组件检测技术领域,具体涉及一种基于二进制程序模块化的开源组件检测方法。该方法通过提取二进制程序中函数的调用和地址信息,将处理无向图的层次化社团结构分析的凝聚算法改进为适用有向图的BCM,利用BCM划分二进制程序模块。在二进制程序模块化的基础上,将所有模块与开源组件进行特征匹配,定位组件所在的具体模块,将目前文件粒度的复用细化到模块粒度的定位检测,缩小开源漏洞检测等软件安全分析任务的搜索范围,提高下游任务的效率。实验表明,本发明方法提升了开源组件检测的精度,极大程度上降低了误报率,比目前较优的文件粒度的开源组件检测方法B2SFinder提高60.12%;增加模块化分析之后依旧保持了检测效率。
-
公开(公告)号:CN115167916A
公开(公告)日:2022-10-11
申请号:CN202210508164.X
申请日:2022-04-27
Applicant: 中国人民解放军战略支援部队信息工程大学
Abstract: 本发明属于模块化分析技术领域,具体涉及一种面向二进制程序的模块化方法。本发明借用社团检测思想进行二进制程序模块化,设计二进制程序模块化模型BinMod,通过对二进制程序函数的分析,提取了四种函数依赖关系:直接调用依赖、共引关系依赖、数据引用依赖以及代码局部依赖,并根据函数依赖关系构建函数依赖图,以更好地恢复程序中的模块。并借用社团检测的思想对函数依赖图进行模块化,分别按照相似邻居移动、基于模块度增益的局部移动以及模块组合完成二进制程序的模块化。结果表明本发明方法在模块划分效果以及时间效率方面,明显优于FCA模块化方法以及BCD模块化方法。
-
公开(公告)号:CN115357890A
公开(公告)日:2022-11-18
申请号:CN202210822180.6
申请日:2022-07-12
Applicant: 中国人民解放军战略支援部队信息工程大学
Abstract: 本发明属于函数名预测技术领域,具体涉及一种基于语义的多架构二进制函数名预测方法。该方法首先通过LLVM IR提升到中间语言,来解决不同架构之间的差异性问题;提升到中间语言之后,利用正则表达式提取出函数名、函数体信息,然后利用大规模数据的训练得到的正负样本函数名二分类模型,实现无意义函数名的去除,再对于函数名进行形态上、语义上面的相似性融合;而后再对于函数体进行标准化处理,从而实现降低函数体信息的稀疏性,提升函数体的顺序结构信息的质量,保证编码解码的正确性。将经过上述过程处理之后的函数名、函数体,输入到seq2seq模型之中,得到一个模型MFNP,该模型能够提供语义更为准确的函数名。
-
公开(公告)号:CN116089958A
公开(公告)日:2023-05-09
申请号:CN202211723123.9
申请日:2022-12-30
Applicant: 中国人民解放军战略支援部队信息工程大学
Abstract: 本发明属于漏洞函数检测技术领域,具体涉及一种面向二进制程序的基于软件模块化的开源漏洞函数检测方法。该方法首先提取二进制函数的有向调用图,基于统计显著性的OSLOM重叠社团检测技术、集成基于模块度、信息论的算法,对二进制函数进行聚类,然后在模块化的基础上,开展基于特征的软件成分分析;而后基于模块化的软件成分分析结果,通过函数签名的方式检测开源组件中的漏洞类型及具体的漏洞函数,在复用组件的二进制模块中搜索对应的二进制漏洞函数。该方法在检测精度、匹配单个二进制模块的精度上相对于基于Louvain模块化的组件检测和B2SFinder均有明显的提高,而且还极大地减少了开源漏洞函数检测工作量。
-
-
-