一种支持序列化或反序列化特征的混合流图生成方法

    公开(公告)号:CN115993953A

    公开(公告)日:2023-04-21

    申请号:CN202211411937.9

    申请日:2022-11-11

    申请人: 扬州大学

    IPC分类号: G06F8/20 G06F8/30 G06F9/448

    摘要: 本发明公开了一种支持序列化或反序列化特征的混合流图生成方法,对java源程序进行指定入口函数,并采用上下文敏感的指针分析方法,构建初始调用图,提高指针分析的效率及准确性,并结合信息流传播的规则,对实际程序中存在的反序列化黑白名单规则加以适配,使得构造的调用关系更加准确,同时信息流传播及调用图的结合共同构造出混合流图,实现了序列化或反序列化调用关系的精准分析,帮助开发人员查找出可能存在的漏洞。

    基于软件开发过程度量的软件安全性缺陷预测方法及装置

    公开(公告)号:CN111506504B

    公开(公告)日:2023-04-07

    申请号:CN202010286267.7

    申请日:2020-04-13

    申请人: 扬州大学

    摘要: 本发明公开了一种基于软件开发过程度量的软件安全性缺陷预测方法及装置。本发明通过构造文件开发者图和项目代码修改图,表达了软件开发过程中开发者活动和代码修改的信息;同时使用图神经网络训练嵌入模型对图结构分别进行嵌入操作,获取其对应的特征向量作为度量元,保留了图结构中的大量信息;将获得的文件开发者度量元和文件修改度量元这两种度量元作为特征,利用缺陷数据库中的数据进行数据标注,训练分类模型,获得最终的预测模型,利用该模型进行安全性缺陷预测,在文件粒度上给出预测结果,且预测准确度高。

    一种基于代码知识图谱的缺陷定位方法及系统

    公开(公告)号:CN115629760A

    公开(公告)日:2023-01-20

    申请号:CN202211190016.4

    申请日:2022-09-28

    申请人: 扬州大学

    摘要: 本发明公开了一种基于代码知识图谱的缺陷定位方法及系统,从Git版本控制系统中提取源代码,对源代码进行解析生成抽象语法树,基于抽象语法树构建代码知识图谱,同时对Bugzilla缺陷跟踪系统中爬取的缺陷报告的摘要和描述预处理后,进行命名实体识别,以识别出和缺陷相关的实体序列,再将代码知识图谱与缺陷实体序列通过嵌入算法转换为向量化表示,计算两者之间的余弦相似度,按相似度得分降序,生成可疑方法列表,过滤了源代码中陈宇信息的同时,明确缺陷报告中和缺陷相关的实体元素,保留缺陷相关信息,提升缺陷定位的准确性,减少维护人员定位软件缺陷所耗费的时间和精力,提高软件维护的效率。

    一种基于预训练模型的方法级程序修复系统及修复方法

    公开(公告)号:CN114546828A

    公开(公告)日:2022-05-27

    申请号:CN202210049022.1

    申请日:2022-01-17

    申请人: 扬州大学

    摘要: 本发明公开了一种基于预训练模型的方法级程序修复系统及修复方法,包括构建训练数据集;对预训练模型GraphCodeBert进行训练得到训练好的GraphCodeBert模型;对基于Sequence‑to‑Sequence架构的翻译模型进行训练得到训练好的翻译模型;将新的存在缺陷的程序进行处理并输入至训练好的翻译模型中,输出通过测试用例的候选补丁序列,并将输出的候选补丁序列作为正确补丁。本发明使用了预训练模型GraphCodeBert,可以挖掘源代码中缺陷语句及其上下文之间的语法、语义和结构信息,能够更好地学习缺陷的特征,从而提高代码补丁的质量。

    基于排序的C/C++漏洞及其补丁间链接恢复系统及方法

    公开(公告)号:CN114329482A

    公开(公告)日:2022-04-12

    申请号:CN202111560155.7

    申请日:2021-12-20

    申请人: 扬州大学

    摘要: 本发明公开了一种基于排序的C/C++漏洞及其补丁间链接恢复系统及方法,包括:漏洞数据采集;生成漏洞相关特征,包括基于Bert+BiLSTM+CRF的命名实体识别、基于深度学习的漏洞自动检测以及基于TF‑IDF+余弦相似度的文本相似度计算;基于排序模型RankNet对补丁与漏洞间相关特征进行排序,并辅以手动验证,实现漏洞及其补丁间的链接恢复。本发明可以更好的利用漏洞描述中的语义信息及补丁代码的类型信息,充分挖掘漏洞与补丁间的相关性,更好的平衡漏洞补丁的覆盖量与手动工作量之间关系,相较于目前流行的缺陷链接恢复方法,本方法聚焦于对漏洞进行链接恢复,并且与目前已有的漏洞补丁定位工作相比,可以扩大补丁的覆盖面积。

    阅读理解漏洞事件触发词抽取和漏洞类型识别方法及装置

    公开(公告)号:CN113742733A

    公开(公告)日:2021-12-03

    申请号:CN202110909147.2

    申请日:2021-08-09

    申请人: 扬州大学

    IPC分类号: G06F21/57 G06K9/62 G06N3/04

    摘要: 本发明公开了一种阅读理解漏洞事件触发词抽取和漏洞类型识别方法及装置,所述方法包括:漏洞数据采集;漏洞描述语句表示学习;利用图卷积网络GCN构造漏洞描述文本的句法依存关系,提取漏洞特征;基于BERT微调模型中的问答任务,实现漏洞事件触发词识别及分类。本发明可以更好地利用漏洞描述中的语法和语义信息,充分挖掘漏洞描述中的上下文信息,达到对漏洞事件触发词的识别和分类,可以一定程度上解决漏洞分类不准确的问题,相较于目前流行的事件触发词抽取方法,能够捕获不同事件间的依存关系,并且与已有漏洞分类方法相比,可以输出漏洞事件的触发词,辅助开发人员分析漏洞。

    知识驱动的软件缺陷检测与分析方法及系统

    公开(公告)号:CN113434418A

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

    申请号:CN202110726068.8

    申请日:2021-06-29

    申请人: 扬州大学

    摘要: 本发明公开了一种知识驱动的软件缺陷检测与分析方法及系统,主要包括:构建缺陷数据集;构建代码特征图以对代码进行建模并嵌入到向量空间;通过图神经网络学习缺陷代码隐式特征,训练缺陷检测模型;利用检测模型检测项目中存在的缺陷,通过相似度计算匹配缺陷数据集中已有的相似缺陷;提取相似缺陷报告中有语义价值的缺陷知识,进行知识融合与检测,构建软件缺陷知识图谱以辅助开发者理解检测出的缺陷可能存在的问题。本发明可以缓解传统缺陷检测技术中难以制定有效全面的缺陷模式所导致的高误报率问题,并从知识的角度分析检测出的缺陷,使实际应用领域更广、精度更高、可解释性更强。

    数据驱动的内存泄漏智能化检测方法及系统

    公开(公告)号:CN113326187A

    公开(公告)日:2021-08-31

    申请号:CN202110569646.1

    申请日:2021-05-25

    申请人: 扬州大学

    IPC分类号: G06F11/36 G06F21/57 G06N3/04

    摘要: 本发明公开了一种数据驱动的内存泄漏智能化检测方法及系统,方法包括以下步骤:漏洞数据采集;构造程序间价值流图IVFG,提取漏洞特征;利用多关系图卷积网络COMPGCN,训练漏洞检测模型;对待检测文件进行预处理,并利用检测模型检测是否存在内存泄漏,报告发生内存泄漏的漏洞函数及可疑的漏洞语句。本发明可以更好地利用内存泄漏漏洞特有的代码语法和语义信息,充分挖掘漏洞代码与调用上下文、全局变量等敏感对象的关系,达到对潜在内存泄漏的代码的判别并输出可疑的漏洞语句,针对性更强,可以一定程度上解决传统静态或动态方法检测内存泄漏的不足,并且相较于目前流行的基于深度学习的漏洞检测方法,可以输出存在内存泄漏的可疑语句,使实际应用领域更广、精度更高、定位更准。

    一种基于异构图Transformer的即时漏洞检测方法及系统

    公开(公告)号:CN118312963A

    公开(公告)日:2024-07-09

    申请号:CN202410361584.9

    申请日:2024-03-27

    申请人: 扬州大学

    摘要: 本发明公开了一种基于异构图Transformer的即时漏洞检测方法及系统,所述方法包括对待检测的提交代码进行静态分析,构建包含语义和变更信息的代码变更图;根据面向代码变更的预训练模型生成代码变更图中语句节点的嵌入表示;利用异构图Transformer学习漏洞特征,聚合全局图信息并经过分类器给出检测结果;所述系统包括代码变更图构建模块、图节点嵌入模块、异构图表示学习模块。本发明通过使用异构图Transformer进行图表示学习,进而有效学习漏洞特征,提高了即时漏洞检测的精度,从而在漏洞引入前及时发现问题,提醒开发人员尽快修复。

    一种基于树形Prompt模板的领域知识图谱智能构建方法及系统

    公开(公告)号:CN117668252A

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

    申请号:CN202311680151.1

    申请日:2023-12-08

    申请人: 扬州大学

    摘要: 本发明公开了一种基于树形Prompt模板的领域知识图谱智能构建方法及系统。其中,构建方法包括以下步骤:S1、获取并标注源领域数据,得到源标注集;为所述源标注集构建树形Prompt模板。S2、获取UIE框架及预训练模型,将所述源标注集及其对应的树形Prompt模板输入所述UIE框架,使用所述预训练模型训练生成实体抽取模型和关系抽取模型。S3、获取目标领域数据,为所述目标领域数据构建树形Prompt模板;使用所述实体抽取模型和关系抽取模型处理所述目标领域数据对应的树形Prompt模板,构建目标领域知识图谱。S4、将所述目标领域知识图谱进行实体消歧,并进行搜索、推荐、问答。本发明具有效率高、实用性强的特点。