一种基于动态类型感知的Python软件模糊测试方法

    公开(公告)号:CN110399300B

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

    申请号:CN201910663726.6

    申请日:2019-07-22

    Applicant: 南京大学

    Inventor: 陈林 罗阳 赵恒辉

    Abstract: 本发明提供一种基于动态类型感知的Python软件模糊测试方法,包括下列步骤:1)从github获取开源Python软件项目的源程序代码;2)生成源程序代码对应的抽象语法树;3)从抽象语法树中识别并提取函数定义节点;4)根据函数定义节点的信息使用动态类型感知策略生成参数,并生成对应函数定义的测试用例集合;5)执行测试用例生成测试结果报告,根据测试报告的结果进行基于变异的模糊测试和提供潜在缺陷的测试用例。本发明解决了目前缺乏针对Python软件的模糊测试方法的问题,并且能够提供触发潜在缺陷的输入,进而帮助开发者进行调试和修复缺陷,提高软件的可维护性和鲁棒性,从而能更好地控制软件产品的质量。

    一种基于静态程序分析的JavaScript函数参数不匹配检测方法

    公开(公告)号:CN111694570A

    公开(公告)日:2020-09-22

    申请号:CN201910195658.5

    申请日:2019-03-13

    Applicant: 南京大学

    Abstract: 本发明为一种基于静态程序分析与自然语言处理方法的JavaScript函数参数不匹配检测方法。首先为JavaScript项目中每个文件构造抽象语法树AST,遍历AST树并提取整个项目的定义函数和构造函数的程序相关信息;扫描分析整个项目的JavaScript文件,分别得到定义函数和调用函数的具体位置并构造项目的函数调用图;根据提取的注释信息,通过自然语言处理方法并结合概率推断参数的类型;根据提取的信息,分别对参数个数、参数命名、参数类型的不一致性进行检测,并给出项目中JavaScript函数参数不匹配的检测报告。

    一种基于深度神经网络的Python资源敏感缺陷代码检测方法

    公开(公告)号:CN107967208B

    公开(公告)日:2020-01-17

    申请号:CN201610915633.4

    申请日:2016-10-20

    Applicant: 南京大学

    Abstract: 本发明为一种基于深度神经网络的Python资源敏感缺陷代码检测方法,包括下列步骤:1)获取同一软件的历史版本的源代码和待测版本的源代码;2)利用类型推断抽取各版本的资源敏感代码模式;3)抽取资源敏感代码模式的相关特征;4)计算缺陷代码模式和安全代码模式、缺陷代码模式和待测代码模式之间的各个特征相似度,生成特征向量,并得到训练集和测试集;5)用训练集训练深度神经网络模型进行特征合并,然后对测试集中的模式对用深度神经网络模型计算相关度并排序;6)在程序开发和维护阶段,根据相关度排序结果对可能发生错误的资源对象操作进行提醒,辅助开发和维护;本发明解决了目前存在缺乏针对Python语言资源敏感代码识别和缺陷代码检测的自动化方法等问题,进而降低软件风险,提高软件质量,从而提高开发者和维护者开发和维护软件的效率。

    一种基于抽象语法树的Python程序类型缺陷检测方法

    公开(公告)号:CN108932192B

    公开(公告)日:2020-01-14

    申请号:CN201710376265.5

    申请日:2017-05-22

    Applicant: 南京大学

    Abstract: 本发明提供一种基于抽象语法树的Python程序类型缺陷检测方法,包括下列步骤:1)收集Python软件缺陷报告信息,提取缺陷标识符和缺陷错误类型;2)获取缺陷修复前后两个版本程序的源代码;3)生成两个版本源代码对应的抽象语法树,匹配获取变更函数结点并标记缺陷错误类型;4)根据变更函数结点上下文信息,生成缺陷代码的特征向量;5)利用机器学习技术,在缺陷代码特征向量上训练多分类模型;6)提示开发者在测试Python程序文件中可能出现的类型缺陷信息。本发明旨在解决目前存在的缺乏针对Python语言的类型缺陷分析、无法检测可能的缺陷错误类型等问题,进而指导软件质量的管理,提高软件的可维护性。

    一种基于混合分析的网页恶意JavaScript代码识别和反混淆方法

    公开(公告)号:CN110502897A

    公开(公告)日:2019-11-26

    申请号:CN201810485760.4

    申请日:2018-05-16

    Applicant: 南京大学

    Abstract: 本发明为一种基于混合分析的网页恶意JavaScript代码识别和反混淆方法:首先收集相关网页源码,对于源码中的恶意JS文件及内嵌在HTML文档中的恶意JS代码进行提取处理;接着,在语法分析阶段构建抽象语法树,将节点表示成常规JS对象进行程序分析和特征提取;接着,对JS代码进行插桩,对于想要监控的运行时基本操作进行覆写,动态监控JS执行时状态和信息,提取执行轨迹和运行时动态特征信息;接着,将动静态特征改写为特征向量,基于随机森林算法模型,训练出一个恶意JS代码识别模型;接着,基于动态插桩方法,通过对内存覆写相关操作进行监控和记录,对于混淆恶意JS代码进行有效的反混淆。

    一种基于动态类型感知的Python软件模糊测试方法

    公开(公告)号:CN110399300A

    公开(公告)日:2019-11-01

    申请号:CN201910663726.6

    申请日:2019-07-22

    Applicant: 南京大学

    Inventor: 陈林 罗阳 赵恒辉

    Abstract: 本发明提供一种基于动态类型感知的Python软件模糊测试方法,包括下列步骤:1)从github获取开源Python软件项目的源程序代码;2)生成源程序代码对应的抽象语法树;3)从抽象语法树中识别并提取函数定义节点;4)根据函数定义节点的信息使用动态类型感知策略生成参数,并生成对应函数定义的测试用例集合;5)执行测试用例生成测试结果报告,根据测试报告的结果进行基于变异的模糊测试和提供潜在缺陷的测试用例。本发明解决了目前缺乏针对Python软件的模糊测试方法的问题,并且能够提供触发潜在缺陷的输入,进而帮助开发者进行调试和修复缺陷,提高软件的可维护性和鲁棒性,从而能更好地控制软件产品的质量。

    一种基于抽象语法树节点变更抽取的Python代码变更提示方法

    公开(公告)号:CN105159715B

    公开(公告)日:2018-07-20

    申请号:CN201510555635.2

    申请日:2015-09-01

    Applicant: 南京大学

    Abstract: 本发明提供一种基于抽象语法树节点变更抽取的Python代码变更提示方法,包括下列步骤:1)获取同一软件不同版本程序的源代码;2)生成两个版本的源程序对应的抽象语法树;3)匹配抽象语法树获取变更节点,结合变更节点上下文信息标记节点变更类型;4)将变更元组聚集为事务,构造训练集;5)利用数据挖掘技术,挖掘变更元组中的关联关系;6)根据挖掘出的关联关系,提示开发人员程序中可能出现变更的位置和可能的变更类型。本发明解决了目前存在的缺乏针对Python语言的软件演化分析、无法提示可能的代码变更类型等问题,进而指导软件生命周期的管理,提高软件演化的可控性,从而能更好地控制软件产品的质量。

    基于预测性分析的安卓应用程序数据竞争检测

    公开(公告)号:CN105183655B

    公开(公告)日:2017-12-12

    申请号:CN201510626507.2

    申请日:2015-09-25

    Applicant: 南京大学

    Abstract: 本发明方法是基于安卓开发框架和其多线程模型,插桩安卓应用程序并动态运行提取单个执行轨迹,再使用预测性分析方法对执行轨迹进行分析,构造其活动间的发生序关系(Happens‑Before)并预测生成多个执行轨迹,在此基础上结合变量松弛和路径松弛对执行轨迹中的所有活动进行约束编码,最终放入约束求解器中进行求解来完成数据竞争的检测。本发明能有效降低数据竞争的误报率,扩展性好,效率高,只需收集单个运行轨迹,大大降低了人工成本。

    一种基于社交网络平台的Web服务推荐方法

    公开(公告)号:CN103678618B

    公开(公告)日:2017-01-25

    申请号:CN201310695891.2

    申请日:2013-12-17

    Applicant: 南京大学

    Abstract: 一种基于社交网络平台的Web服务推荐方法,将Web服务分成不同的服务类,在社交网络中获取用户的基本信息,取一部分用户作为训练用户,得到用户感兴趣的服务类,并据此建立用户-服务类矩阵,然后根据用户-服务类矩阵对用户进行聚类,得到不同的用户兴趣类,对于社交网络中需要进行Web服务推荐的新用户,根据用户兴趣类进行推荐。本发明首先对Web服务进行主题提取,通过将Web服务映射为Web服务类,实现对用户-服务矩阵进行降维,然后通过从社交网络中提取用户的基本信息和兴趣标签,充分利用标签信息和语义信息来解决词语同义问题,再结合通过分析已有用户的历史访问记录得到的聚类结果,对新用户进行Web服务推荐。

    一种耐盐性高吸水性树脂及其制备方法

    公开(公告)号:CN105601790A

    公开(公告)日:2016-05-25

    申请号:CN201610066414.3

    申请日:2016-01-29

    CPC classification number: C08F220/06 C08F2/44 C08K3/36 C08F222/385

    Abstract: 本发明公开了一种耐盐性高吸水性树脂及其制备方法,它通过如下步骤制备:控制温度在10~35℃,将氢氧化钠溶液滴加到丙烯酸单体中中和;加入交联剂充分搅拌混合均匀,溶液脱氧,在搅拌条件下,加入引发剂水溶液及无机氧化物,混合均匀后,于60~85℃下聚合反应,得到凝胶;将凝胶干燥、粉碎、筛选后得到高吸水性树脂。本发明制得的耐盐性高吸水性树脂,在保持高吸水性的基础上,耐盐性也显著提高,相比较未加无机氧化物的丙烯酸吸水性树脂,其在0.9%NaCl溶液中的吸水率提高10-30%;其吸水倍率不低于900g/g,吸盐水倍率不低于90g/g。

Patent Agency Ranking