-
公开(公告)号:CN111045670A
公开(公告)日:2020-04-21
申请号:CN201911282855.7
申请日:2019-12-13
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种二进制代码与源代码间复用关系的识别方法与装置。该方法包括:构建用于展示开源组件的库文件与源文件间的映射关系的编译依赖图;利用编译依赖图,计算源代码与二进制代码间的相似度,识别出单一复用、混合复用和部分复用;通过对二进制代码与开源组件的已匹配特征集进行对比,识别嵌套复用;根据识别出的复用关系生成复用关系图。本发明从现实软件中常见的代码复用关系划分出四种复用类型,并针对四种复用类型判断二进制代码与源代码间是否确实存在复用关系,对干扰相似性检测的复用类型进行剔除,能够有效地识别二进制代码和源代码间的复用关系。
-
公开(公告)号:CN115396146B
公开(公告)日:2025-05-06
申请号:CN202210861187.9
申请日:2022-07-20
Applicant: 中国科学院信息工程研究所
Abstract: 本发明公开了一种针对多链协作场景的安全审计方法,其步骤包括:1)对待接入多链协作场景的各单链系统中的设定节点运行环境进行安全检测,检测通过后进行步骤2);其中,所述设定节点包括用于区块信息同步或参与共识的节点,以及用于链间事务处理或验证的节点;每一单链系统对应一区块链系统;2)依照区块链系统的审计方法对每一所述单链系统进行审计,将审计通过后的所述单链系统增接入所述多链协作场景;3)对所述多链协作场景的区块、交易以及资产安全进行审计;以及对所述多链协作场景的跨链事务活动一致性和可用性进行审计。本发明审计覆盖全,适用于多链场景下的审计,大大提高了多链协作交易的安全性。
-
公开(公告)号:CN110147673B
公开(公告)日:2021-08-31
申请号:CN201910249282.1
申请日:2019-03-29
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种基于文本和源代码符号提取的漏洞位置标注方法和装置。该方法的步骤包括:1)从漏洞描述文本中提取出 四元组作为漏洞位置线索;2)对漏洞描述文本所在的网络资源链接进行分析和源代码符号提取,以对所述四元组进行补全,并获得源代码行集合;3)给定源代码项目的各版本代码,将源代码项目中所包含的信息与所述四元组、所述源代码行集合进行比对,以标注漏洞位置。本发明以网络资源上的漏洞描述文本作为标注信息源提取出漏洞位置线索,通过与源代码项目中的符号进行比对以标注漏洞位置,是相比现有的依赖于固定模式的相关方法更为通用的漏洞位置标注方法。
-
公开(公告)号:CN110147673A
公开(公告)日:2019-08-20
申请号:CN201910249282.1
申请日:2019-03-29
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种基于文本和源代码符号提取的漏洞位置标注方法和装置。该方法的步骤包括:1)从漏洞描述文本中提取出 四元组作为漏洞位置线索;2)对漏洞描述文本所在的网络资源链接进行分析和源代码符号提取,以对所述四元组进行补全,并获得源代码行集合;3)给定源代码项目的各版本代码,将源代码项目中所包含的信息与所述四元组、所述源代码行集合进行比对,以标注漏洞位置。本发明以网络资源上的漏洞描述文本作为标注信息源提取出漏洞位置线索,通过与源代码项目中的符号进行比对以标注漏洞位置,是相比现有的依赖于固定模式的相关方法更为通用的漏洞位置标注方法。
-
公开(公告)号:CN115396146A
公开(公告)日:2022-11-25
申请号:CN202210861187.9
申请日:2022-07-20
Applicant: 中国科学院信息工程研究所
Abstract: 本发明公开了一种针对多链协作场景的安全审计方法,其步骤包括:1)对待接入多链协作场景的各单链系统中的设定节点运行环境进行安全检测,检测通过后进行步骤2);其中,所述设定节点包括用于区块信息同步或参与共识的节点,以及用于链间事务处理或验证的节点;每一单链系统对应一区块链系统;2)依照区块链系统的审计方法对每一所述单链系统进行审计,将审计通过后的所述单链系统增接入所述多链协作场景;3)对所述多链协作场景的区块、交易以及资产安全进行审计;以及对所述多链协作场景的跨链事务活动一致性和可用性进行审计。本发明审计覆盖全,适用于多链场景下的审计,大大提高了多链协作交易的安全性。
-
公开(公告)号:CN115357902A
公开(公告)日:2022-11-18
申请号:CN202210871373.0
申请日:2022-07-22
Applicant: 中国科学院信息工程研究所
IPC: G06F21/57
Abstract: 本发明公开了一种面向区块链系统的模糊测试方法,其步骤包括:1)收集区块链系统脆弱性测试的种子数据作为模糊测试的初始输入数据;2)搭建运行所述区块链系统的测试环境;标记所述测试环境的区块链系统中与所述种子数据相关的代码变量;根据所标记代码变量的功能及其位置,在所述测试环境的区块链系统中插入对应代码变量的监测代码;3)根据每一所述代码变量及对应的模糊测试目标,生成对应的测试数据并输入所述测试环境的区块链系统中,根据所述测试环境中的区块链系统运行情况确定所述区块链系统的安全性。本发明能用于系统性地评估区块链系统的安全性。
-
公开(公告)号:CN114047917A
公开(公告)日:2022-02-15
申请号:CN202111113829.9
申请日:2021-09-23
Applicant: 中国科学院信息工程研究所
Abstract: 本发明公开了一种基于机器学习的编译相关文件识别方法及装置,包括:基于版本的向量表示,对一开源库的所有版本进行聚类;对每一类中的各版本进行编译,并基于被成功编译版本的相应源文件信息进行机器学习训练,分别获取各类的文件识别模型;利用所述文件识别模型,对未被成功编译版本的每一源文件进行分类,获取该未被成功编译版本的编译相关文件列表。本发明基于已编译的开源库版本中的编译相关文件,自动化且较为准确地预测与该版本源文件相近的版本中编译相关文件,提高了编译相关文件识别能力。
-
公开(公告)号:CN111078227B
公开(公告)日:2021-08-31
申请号:CN201911282875.4
申请日:2019-12-13
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种基于代码特征的二进制代码与源代码相似性分析方法与装置。该方法包括:提取源代码与二进制代码中共同存在的具备抗编译优化特性的代码特征;通过对提取出的代码特征进行特征匹配,计算源代码与二进制代码间的相似度;根据计算出的相似度得出软件的二进制代码是否复用源代码的结论。提取的所述代码特征包括:字符串、导出函数、字符串数组、全局常量数组、全局枚举数组、复杂Switch/Case结构、复杂If/Else结构。本发明能够提供准确的代码相似性检测,能够广泛处理跨源代码和二进制代码间的比较,克服现有方法仅依赖于特定字符串或符号信息的局限性。
-
公开(公告)号:CN110147235B
公开(公告)日:2021-01-01
申请号:CN201910249283.6
申请日:2019-03-29
Applicant: 中国科学院信息工程研究所
IPC: G06F8/41
Abstract: 本发明涉及一种源代码与二进制代码间的语义比对方法和装置。该方法包括:1)从给定源代码中指定一条语句STsrc和其中的关键变量Vsrc,从二进制代码中指定一条语句STbin和其中的关键变量Vbin;2)分别对Vsrc和Vbin进行数据流分析,生成Vsrc的抽象语法树和Vbin的抽象语法树;3)对Vsrc的抽象语法树和Vbin的抽象语法树进行比对,判断Vsrc和Vbin是否语义一致;4)根据关键变量Vsrc和Vbin的语义一致判断结果,判定源代码与二进制代码间的语义相似性。本发明不依赖人工干预和编译的过程,能够指定任意源代码和二进制代码函数中的关键变量进行比对,能够提高比对成功率和效率。
-
公开(公告)号:CN111078227A
公开(公告)日:2020-04-28
申请号:CN201911282875.4
申请日:2019-12-13
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种基于代码特征的二进制代码与源代码相似性分析方法与装置。该方法包括:提取源代码与二进制代码中共同存在的具备抗编译优化特性的代码特征;通过对提取出的代码特征进行特征匹配,计算源代码与二进制代码间的相似度;根据计算出的相似度得出软件的二进制代码是否复用源代码的结论。提取的所述代码特征包括:字符串、导出函数、字符串数组、全局常量数组、全局枚举数组、复杂Switch/Case结构、复杂If/Else结构。本发明能够提供准确的代码相似性检测,能够广泛处理跨源代码和二进制代码间的比较,克服现有方法仅依赖于特定字符串或符号信息的局限性。
-
-
-
-
-
-
-
-
-