研究人员测试了ChatGPT 对源代码进行分析和提高代码安全性建议的能力,结果显示ChatGPT 可以提供一些有用的建议来改进代码安全性。测试包括探测ChatGPT 是否能够揭示代码中的缓冲区溢出等问题。研究人员提供了大量代码供ChatGPT 分析,观察其反应。然而,他们发现ChatGPT 的回应结果并不一致。
当被问及如何提高代码安全性时,研究人员表示,ChatGPT 建议增加缓冲区的大小。ChatGPT 提出的其他建议还包括使用更安全的输入数据函数和动态分配记忆体。研究人员发现,ChatGPT 可以根据其建议中的任何修复方法重构代码,例如使用动态记忆体分配。尽管存在限制,研究人员认为ChatGPT 可以用于支持源代码分析。
他们表示,ChatGPT 对于生成基础代码和单元测试特别有用,因为这些任务需要最少的上下文并更关注传递的参数。然而,当提供更大的代码块或不太直观的问题时,ChatGPT 无法很好地识别它们。
Trustwave 的威胁情报经理Karl Sigler 表示,ChatGPT 在代码方面表现良好且足够灵活,能够回应许多不同的请求。他认为ChatGPT 可以成为「程序员的好朋友」,帮助他们了解新编程库中提供的应用程序编程接口和功能。由于ChatGPT 可以理解人类语言,Sigler 认为有很多潜力可以利用ChatGPT 来帮助检查规范文档和合规策略中的误解。
在未来的两到五年中,Sigler 预计ChatGPT 和其他生成式AI 系统将成为软件开发生命周期的一部分。
原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun222396.html