The Hidden Risks of LLM-Generated Web Application Code: A Security-Centric Evaluation of Code Generation Capabilities in Large Language Models

📄 arXiv: 2504.20612v1 📥 PDF

作者: Swaroop Dora, Deven Lunkad, Naziya Aslam, S. Venkatesan, Sandeep Kumar Shukla

分类: cs.CR, cs.AI, cs.ET

发布日期: 2025-04-29

备注: 9 pages


💡 一句话要点

评估LLM生成Web应用代码的安全性风险,揭示潜在漏洞

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大型语言模型 代码生成 Web应用安全 安全漏洞 安全评估

📋 核心要点

  1. 现有方法难以保证LLM生成代码的安全性,存在身份验证、会话管理等方面的潜在漏洞。
  2. 该论文通过预定义安全参数,系统评估了多个主流LLM生成Web应用代码的安全性合规性。
  3. 实验结果表明,现有LLM在生成Web应用代码时,无法完全符合行业安全最佳实践,存在安全风险。

📝 摘要(中文)

大型语言模型(LLM)的快速发展提升了软件开发流程,减少了编码所需的时间和精力,并提高了开发人员的生产力。然而,尽管它们具有潜在的优势,但研究表明,LLM生成的代码在受控环境中会产生不安全的代码,这引发了人们对其在实际应用中的可靠性和安全性的严重担忧。本文使用预定义的安全参数来评估LLM生成的代码在多个模型(如ChatGPT、DeepSeek、Claude、Gemini和Grok)中的安全性合规性。分析揭示了身份验证机制、会话管理、输入验证和HTTP安全标头中的关键漏洞。尽管某些模型在有限程度上实施了安全措施,但没有一个模型完全符合行业最佳实践,突显了自动化软件开发中的相关风险。我们的研究结果强调,人工专业知识对于确保安全软件部署或审查LLM生成的代码至关重要。此外,还需要强大的安全评估框架来提高LLM生成的代码在实际应用中的可靠性。

🔬 方法详解

问题定义:论文旨在解决LLM(如ChatGPT、DeepSeek等)在生成Web应用程序代码时存在的安全性问题。现有方法的痛点在于,尽管LLM能够提高开发效率,但其生成的代码可能包含安全漏洞,例如身份验证机制薄弱、会话管理不当、输入验证不足以及HTTP安全标头配置错误等,从而导致潜在的安全风险。

核心思路:论文的核心思路是通过预定义一系列安全参数,对LLM生成的代码进行全面的安全性评估。通过分析LLM在不同安全方面的表现,揭示其在生成安全代码方面的不足,并强调人工审查和安全评估框架的重要性。

技术框架:论文采用了一种基于安全参数的评估框架。该框架首先定义了一系列与Web应用程序安全相关的关键参数,例如身份验证、会话管理、输入验证和HTTP安全标头。然后,使用这些参数作为评估标准,对多个LLM生成的代码进行分析。最后,根据分析结果,评估LLM在生成安全代码方面的能力,并识别潜在的安全漏洞。

关键创新:该论文的关键创新在于其系统性的安全评估方法,该方法通过预定义的安全性参数,量化评估了不同LLM生成代码的安全性。与以往研究相比,该论文不仅关注LLM生成代码的功能性,更深入地探讨了其安全性,并揭示了现有LLM在生成安全Web应用程序代码方面的局限性。

关键设计:论文的关键设计在于安全参数的选取和评估流程的制定。安全参数的选择需要覆盖Web应用程序安全的关键方面,例如OWASP Top 10中常见的漏洞。评估流程需要确保能够准确地识别LLM生成的代码中存在的安全漏洞,并对其严重程度进行评估。此外,论文还考虑了不同LLM的特点,并针对性地设计了评估用例。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,ChatGPT、DeepSeek、Claude、Gemini和Grok等主流LLM在生成Web应用代码时,均未能完全符合行业安全最佳实践。在身份验证、会话管理、输入验证和HTTP安全标头等方面,都存在不同程度的漏洞。这表明,直接使用LLM生成的代码可能存在严重的安全风险,需要进行人工审查和安全评估。

🎯 应用场景

该研究成果可应用于软件开发的安全审计、LLM辅助编程的安全风险评估等领域。通过该研究,开发者可以更好地了解LLM生成代码的安全性风险,并采取相应的措施来降低风险。未来,该研究可以促进开发更安全的LLM辅助编程工具,提高软件开发的整体安全性。

📄 摘要(原文)

The rapid advancement of Large Language Models (LLMs) has enhanced software development processes, minimizing the time and effort required for coding and enhancing developer productivity. However, despite their potential benefits, code generated by LLMs has been shown to generate insecure code in controlled environments, raising critical concerns about their reliability and security in real-world applications. This paper uses predefined security parameters to evaluate the security compliance of LLM-generated code across multiple models, such as ChatGPT, DeepSeek, Claude, Gemini and Grok. The analysis reveals critical vulnerabilities in authentication mechanisms, session management, input validation and HTTP security headers. Although some models implement security measures to a limited extent, none fully align with industry best practices, highlighting the associated risks in automated software development. Our findings underscore that human expertise is crucial to ensure secure software deployment or review of LLM-generated code. Also, there is a need for robust security assessment frameworks to enhance the reliability of LLM-generated code in real-world applications.