摘要:随着软件漏洞的类型、数量和复杂性日渐增长,研究人员提出了诸多自动化的手段来帮助开发人员发现、检测和定位漏洞,但研究人员仍需花费大量精力对漏洞进行修复.近年来,一些研究者开始关注软件漏洞自动修复技术,然而当前的先进技术仅仅将软件漏洞修复规约为通用的文本生成问题,没有对缺陷修复位置进行定位,导致修复程序的生成空间较大,使得生成的修复程序质量较低,将其提供给开发人员反而影响漏洞修复的效率和效果.针对上述问题,本文提出了一种基于思维链的通用类型漏洞修复方法CotRepair,利用思维链技术,模型首先对产生漏洞概率较高的位置进行预测,而后依托预测结果,更加准确地生成修复程序.实验结果表明本文提出的方法在评价生成修复程序的各项指标上均显著优于基线方法,从多个维度验证了所提方法的有效性.