基于强化学习的Java反序列化漏洞检测系统及方法

    公开(公告)号:CN114462043A

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

    申请号:CN202111629096.4

    申请日:2021-12-28

    Abstract: 本发明公开了一种基于强化学习的Java反序列化漏洞检测系统及方法,包括:漏洞数据采集;构建序列化感知的代码属性图SCPG,挖掘潜在漏洞调用链;利用强化学习对模糊测试的种子调度过程进行建模,训练模糊决策模型;对待检测的JAVA文件进行静态分析,构建序列化感知的代码属性图SCPG并识别潜在漏洞调用链,使用模糊决策模型对潜在漏洞调用链进行验证,输出存在利用风险的反序列化漏洞调用链。本发明可以一定程度上解决传统JAVA反序列化漏洞调用链挖掘方法中人工开销大、精度不高的问题;并且相较于基于变量可控性分析的JAVA反序列化漏洞调用链自动挖掘方法,本发明可以通过模糊测试对挖掘得到的潜在漏洞调用链进行验证,使得实际应用领域更广、精度更高。

    一种面向多源漏洞信息的事件图谱自动构建方法及系统

    公开(公告)号:CN113656805A

    公开(公告)日:2021-11-16

    申请号:CN202110828495.7

    申请日:2021-07-22

    Applicant: 扬州大学

    Abstract: 本发明提出了一种面向多源漏洞信息的事件图谱自动构建方法及系统,从文本和代码信息两个角度将CVE、NVD等网站中的漏洞相关信息进行整合。首先从漏洞数据库中爬取漏洞报告,将漏洞的发生原因视为事件触发词进行识别,并通过其判断漏洞类型。其次通过命名实体识别的方式对描述中的攻击者、后果、位置等信息进行识别,并进行信息补全。再利用文本信息抽取显式的事件关系,并利用文本相似性抽取隐式的事件关系,并进行漏洞相关代码的表征。最终借助可视化工具将所得的漏洞事件信息可视化为事件图谱,从而为开发人员提供更直观准确的漏洞事件及其相关因素,减少开发人员手动分析和理解漏洞数据的人力和时间成本,提高软件维护的有效性和高效性。

    一种面向软件缺陷的多轮自动问答方法、系统、计算机设备和存储介质

    公开(公告)号:CN113326062A

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

    申请号:CN202110569649.5

    申请日:2021-05-25

    Applicant: 扬州大学

    Abstract: 本发明公开了一种面向软件缺陷的多轮自动问答方法,属于软件维护领域,本发明包括如下步骤:从开源Bug管理库爬取缺陷报告,提取报告中对缺陷理解有帮助的信息,对一些长文本抽取实体和关系,进行知识融合和质量检测,构建软件缺陷知识图谱;记录软件开发者或维护者与系统的多次沟通,构建多轮对话记忆模块;根据软件开发者或维护者提问的软件缺陷领域的相关问题,构建软件开发者或维护者的用户画像;根据所述对话记忆和软件开发者或维护者用户画像构建多轮问答模块。

    一种面向软件版本问题的程序故障定位方法

    公开(公告)号:CN107729258B

    公开(公告)日:2021-07-23

    申请号:CN201711263642.0

    申请日:2017-11-30

    Applicant: 扬州大学

    Abstract: 本发明涉及一种面向软件版本问题的程序故障定位方法。本发明建立一个与版本相关的库,对提交的bug描述先在建立的库中查找历史相似bug,再在当前软件的源代码中通过规则进行模式匹配,识别相关的源代码,将历史相似bug与识别后的代码并集,基于信息检索技术向量空间模型VSM公式进行相似度计算,推荐相似度高的代码进行定位。本发明克服了以往版本不一致问题以及对版本问题的定位大多由开发人员手动修改与更新,耗时又耗力等缺陷。本发明更有助于软件bug定位的分类,增加了bug定位解决的有效性,根据当前的软件代码和bug描述能直接进行定位。

    一种基于多源数据的软件缺陷信息融合方法

    公开(公告)号:CN109408100B

    公开(公告)日:2021-06-22

    申请号:CN201811046975.2

    申请日:2018-09-08

    Applicant: 扬州大学

    Abstract: 本发明公开了一种基于多源数据的软件缺陷信息融合方法,该方法针对新的bug报告,通过对bug信息进行按因素标签化处理,采用基于多因素查询的信息检索方法检索Stack OverFlow中的问答信息,将获取到的Top‑N问答信息补全新的bug报告,然后按照多因素查询检索软件缺陷库,得到与新的软件缺陷相关性高的软件缺陷信息,并将它们进行软件缺陷信息融合。该方法结合了软件缺陷库和Stack OverFlow中的相关bug信息,能够有效解决新的软件缺陷信息稀疏的问题,从而帮助软件开发和维护人员更准确地理解软件缺陷。

    代码味道驱动的基于克隆和耦合检测的代码缺陷预测方法

    公开(公告)号:CN107678971B

    公开(公告)日:2021-05-04

    申请号:CN201711005610.0

    申请日:2017-10-19

    Applicant: 扬州大学

    Abstract: 本发明涉及代码味道驱动的基于克隆和耦合检测的代码缺陷预测方法。本发明对所有代码利用代码味道识别技术进行代码味道检测,并计算代码片段中坏味道的数目;检测坏味道代码与所有代码之间的联系及数目;检测坏味道代码和所有代码之间的关联及数目;计算上述代码缺陷的概率;加权处理代码缺陷概率;按照缺陷概率将代码进行降序排序,并将缺陷代码和缺陷语义信息推荐给开发者。本发明克服了过去存在的测试成本高和可读性差的缺陷。本发明从代码味道角度,结合克隆、耦合检测技术,提供有效的代码检查推荐,帮助开发者找到代码缺陷,理解预测出来的代码缺陷所在和优先处理严重等级较高的代码缺陷,大大缩短软件开发周期。

    一种基于bug知识图谱的bug搜索定位方法

    公开(公告)号:CN107608732B

    公开(公告)日:2020-08-21

    申请号:CN201710848983.8

    申请日:2017-09-13

    Applicant: 扬州大学

    Abstract: 本发明涉及一种基于bug知识图谱的bug搜索定位方法。本发明将bug报告、commit信息及代码数据,使用自然语言处理工具处理,使用LDA主题模型建立bug报告与commit间关联关系,LDA主题模型和NiCad克隆检测器建立代码数据与commit间对应关系,建立bug及其相关信息的知识图谱,当搜索某一bug问题,并提供要维护的项目代码数据时,以列表和图谱的形式显示相关bug信息,也能根据开发者提供的项目代码,在Nicad克隆检测器的帮助下,结合搜索结果在项目代码中进行相关bug的检测,将该bug进行定位后返回给开发人员。本发明克服了代码及平台未被利用的缺陷。本发明定位开发者提供的项目代码中的bug,帮助软件开发人员定位和解决bug问题,节约维护时间和成本,提高维护效率。

    面向开源社区的软件项目个性化推荐方法

    公开(公告)号:CN106201465B

    公开(公告)日:2020-08-21

    申请号:CN201610486067.X

    申请日:2016-06-23

    Applicant: 扬州大学

    Abstract: 本发明涉及面向开源社区的软件项目个性化推荐方法。本发明对项目内容进行TF‑IDF特征抽取,结合用户对已知项目评价,推荐结合用户个性和项目需求的相似项目,并针对用户个性,通过ALS协同过滤计算候选推荐结果,使用词频‑逆文本频率计算每个项目特征,按其相似性计算候选推荐结果,将两者推荐结果线性组合,进行过滤和排名,产生推荐结果。本发明克服了过去推荐技术不能完全体现项目特征,粒度不细,准确率不高等缺陷。本发明从用户对已知项目评分和项目内容角度推荐出针对用户个性和项目内容的相似项目,准确地推荐出了与用户所在开发的项目类似的项目内容,实现了个性化推荐功能,为用户参考或重用提供便利,提高了开发人员搜索项目的效率。

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

    公开(公告)号:CN111506504A

    公开(公告)日:2020-08-07

    申请号:CN202010286267.7

    申请日:2020-04-13

    Applicant: 扬州大学

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

Patent Agency Ranking