-
公开(公告)号:CN119960825A
公开(公告)日:2025-05-09
申请号:CN202510449628.8
申请日:2025-04-11
Applicant: 北京北大软件工程股份有限公司
Abstract: 本申请公开了一种代码克隆检测方法、系统、设备、介质及产品,涉及软件工程领域,该方法包括从待检测代码仓库获取待检测代码段,并将所有待检测代码段输入训练好的克隆代码检测模型中,输出与待检测代码段相对应的第一代码表示向量;任意选择两个第一代码表示向量作为代码对,将语义距离小于预设阈值的代码对标记为克隆代码。本申请可提升代码克隆检测的准确度。
-
公开(公告)号:CN117556431A
公开(公告)日:2024-02-13
申请号:CN202410047057.0
申请日:2024-01-12
Applicant: 北京北大软件工程股份有限公司
IPC: G06F21/57
Abstract: 本发明涉及静态代码分析技术,具体涉及一种混合软件漏洞分析方法。本发明提供的方法包括:基于混合软件确定统一中间表示IR;基于统一中间表示IR构造数据流表示模型VFG;基于数据流表示模型VFG定位潜在漏洞的植入点和触发点;通过流追踪的方式对漏洞进行分析;混合软件至少包含两种以上的编程语言或者两种以上的代码形式。本发明通过建立统一的中间表示模型,实现对多种编程语言、多种形式代码混合的复杂软件的检测,尤其对于多模块交互的场景,能够弥补传统检测方式的不足,提升漏洞检测的能力,发现软件系统中的深层次问题。
-
公开(公告)号:CN115017059B
公开(公告)日:2022-11-11
申请号:CN202210941028.X
申请日:2022-08-08
Applicant: 北京北大软件工程股份有限公司
IPC: G06F11/36
Abstract: 本发明涉及软件自动化测试领域,公开了一种图形用户界面程序的模糊测试方法及系统,包括:根据被测试程序的类型和运行系统平台选择图形用户界面测试工具,录制使用所述图形用户界面测试工具打开所述被测试程序的过程,生成图形用户界面程序的自动化操作脚本,通过使用动态插桩工具获得拦截函数的调用过程,从而获得调用序列和调用时的上下文环境,筛选所述调用序列,得到候选目标函数集合,监控所述候选目标函数集合的运行状态,获得代码覆盖率,选择所述候选目标函数集合内所述代码覆盖率最大的为目标函数,选择模糊测试器,生成种子文件,配置所述模糊测试器参数,插桩拦截所述被测试程序,执行模糊测试,监控运行结果。
-
公开(公告)号:CN115017059A
公开(公告)日:2022-09-06
申请号:CN202210941028.X
申请日:2022-08-08
Applicant: 北京北大软件工程股份有限公司
IPC: G06F11/36
Abstract: 本发明涉及软件自动化测试领域,公开了一种图形用户界面程序的模糊测试方法及系统,包括:根据被测试程序的类型和运行系统平台选择图形用户界面测试工具,录制使用所述图形用户界面测试工具打开所述被测试程序的过程,生成图形用户界面程序的自动化操作脚本,通过使用动态插桩工具获得拦截函数的调用过程,从而获得调用序列和调用时的上下文环境,筛选所述调用序列,得到候选目标函数集合,监控所述候选目标函数集合的运行状态,获得代码覆盖率,选择所述候选目标函数集合内所述代码覆盖率最大的为目标函数,选择模糊测试器,生成种子文件,配置所述模糊测试器参数,插桩拦截所述被测试程序,执行模糊测试,监控运行结果。
-
公开(公告)号:CN113641586B
公开(公告)日:2022-04-15
申请号:CN202110958006.X
申请日:2021-08-20
Applicant: 北京北大软件工程股份有限公司
IPC: G06F11/36 , G06N3/04 , G06N3/08 , G06K9/62 , G06V10/764
Abstract: 发明实施例涉及软件测试领域,公开了一种软件源代码缺陷检测方法、系统、电子设备及计算机可读存储介质,其中方法包括步骤:构建源代码缺陷数据集,基于开源项目缺陷信息构建用于训练的大规模数据集,包括对开源项目存在的缺陷条目进行自动对齐与抽取以及对所述开源项目源代码缺陷进行上下文增广;构建基于代码切片的深度学习源代码缺陷检测模型,包括使用多模态的语义表示对代码片段进行表示与分类;对基于人工智能的源代码缺陷检测结果集成显示;开发者可以使用本发明所述的方法自动构建来源于真实项目的缺陷数据集并借助模型进行自动判断,而不必花费大量的时间与精力人工遍历代码。
-
公开(公告)号:CN112597063B
公开(公告)日:2021-06-08
申请号:CN202110213091.7
申请日:2021-02-26
Applicant: 北京北大软件工程股份有限公司
Abstract: 本发明实施例涉及软件维护领域,公开了一种缺陷代码定位的方法、装置以及存储介质,包括:S101:缺陷报告及对应源文件抽取;S102:计算代码源文件的表示;S103:计算缺陷报告的描述文本的表示,S104:计算缺陷报告和代码文件的相似度,得到缺陷报告可能对应的代码源文件;软件维护人员可以使用本发明所描述的方法辅助定位缺陷报告所描述的缺陷对应的代码源文件,提高效率。
-
公开(公告)号:CN108958739B
公开(公告)日:2020-11-10
申请号:CN201810573717.3
申请日:2018-06-06
Applicant: 北京大学 , 北京北大软件工程股份有限公司
IPC: G06F8/53
Abstract: 本发明提供一种二进制反编译中数组数据结构恢复方法及系统,所述方法包括:S11,对于目标反编译结果中任一非指针变量,若该非指针变量的实际占位大小与该非指针变量的类型对应的占位大小之间的差值大于第一预设阈值,则将该非指针变量作为目标变量;S12,获取目标变量在目标反编译结果中各使用位置对应的第一使用模式,若根据第一使用模式对应的第一权重确定目标变量为数组变量,则对数组变量的数据结构进行恢复。本发明实现了对反编译结果中数组数据结构的自动恢复,且提高了数组数据结构恢复的正确率。
-
公开(公告)号:CN112579476A
公开(公告)日:2021-03-30
申请号:CN202110198625.3
申请日:2021-02-23
Applicant: 北京北大软件工程股份有限公司
IPC: G06F11/36 , G06F16/9535
Abstract: 本发明实施例涉及软件测试领域,公开了一种漏洞和软件对齐的方法、装置以及存储介质,包括:抓取安全漏洞发布网站发布的漏洞信息,建立公开漏洞资源数据库;建立包含公开漏洞的软件信息数据库;以 的键值对为关键词,在指定网站范围内进行搜索,将对应键值对的搜索结果插入软件信息数据库;根据上一步得到的软件信息数据库进行过滤,筛选其中符合对齐要求的软件信息并设置为可信,标识其为对齐完成数据;每次更新漏洞数据库时查找并更新软件信息数据库;本发明基于搜索引擎的庞大搜索量所训练的推荐算法,能够获得较为准确的开源软件的源代码仓库地址,或者闭源软件的二进制下载链接。
-
公开(公告)号:CN109002712A
公开(公告)日:2018-12-14
申请号:CN201810650652.8
申请日:2018-06-22
Applicant: 北京大学 , 北京北大软件工程股份有限公司
IPC: G06F21/56
Abstract: 本发明提供一种基于值依赖图的污染数据分析方法、系统与电子设备,所述方法包括:S1,将目标计算机程序转换为守卫值依赖图,并通过自定义外部输入函数摘要和外部输入函数摘要用户定义接口,在所述守卫值依赖图上确定多个污染传播起始点;S2,基于污染传播规则、用户自定义漏洞特征的节点特征以及所述污染传播起始点,构成污染传播图;S3,基于所述污染传播图,通过对各所述污染传播起始点进行向下的广搜计算,获取对应的污染传播路径和每一条所述污染传播路径的污染类型。本发明能够清晰且便利的表达污染数据传播范围、传播关系和每一条路径的污染传播类型,保证污染数据传播范围的全面性。
-
公开(公告)号:CN108984843A
公开(公告)日:2018-12-11
申请号:CN201810634710.8
申请日:2018-06-20
Applicant: 北京大学 , 北京北大软件工程股份有限公司
IPC: G06F17/50
Abstract: 本发明提供一种基于守卫计算的区间信息分析方法,包括:S1,对于值依赖图中任一结点,根据该结点与该结点的任一前驱结点间的守卫条件获取守卫条件对应的条件判断结点;S2,根据条件判断结点的前驱结点的区间信息,计算条件判断结点的区间信息,进一步确认条件判断结点的属性;属性为假、真和可满足中的一种;S3,根据条件判断结点的属性,确认条件判断结点对应的守卫条件的区间信息;S4,根据该结点的各前驱结点的区间信息和该结点与该结点的各前驱结点间的守卫条件的区间信息,获取该结点的区间信息。本发明提供的方法,补偿了值依赖图缺少控制流信息的不足,提高了分析精度。
-
-
-
-
-
-
-
-
-