Sign In

SecRepoBench: Benchmarking LLMs for Secure Code Generation in Real-World Repositories

Created by
  • Haebom
Category
Empty

저자

Connor Dilgren, Purva Chiniya, Luke Griffith, Yu Ding, Yizheng Chen

개요

본 논문은 실제 저장소의 안전한 코드 생성 능력을 평가하기 위한 벤치마크인 SecRepoBench를 소개합니다. SecRepoBench는 27개의 C/C++ 저장소에 있는 318개의 코드 생성 작업을 포함하며 15개의 CWE(Common Weakness Enumeration)를 다룹니다. 19개의 최첨단 LLM(Large Language Model)을 사용하여 벤치마크를 평가한 결과, 모델들이 정확하고 안전한 코드 생성에 어려움을 겪는다는 것을 발견했습니다. 또한, 이전 벤치마크에서 측정된 자체 포함 프로그램 생성 성능은 SecRepoBench에서 저장소 수준의 안전하고 정확한 코드 생성 성능과는 상관관계가 없음을 보여줍니다. 최첨단 프롬프트 엔지니어링 기법은 저장소 수준의 안전한 코드 생성 문제에 적용될 때 효과가 떨어짐을 보여줍니다. 안전한 코드를 생성하기 위한 에이전트 기법을 포함한 광범위한 실험을 통해 본 벤치마크가 기존 최첨단 벤치마크보다 가장 어려운 안전한 코딩 벤치마크임을 보여줍니다. 마지막으로, 포괄적인 분석을 통해 실제 저장소에서 정확하고 안전한 코드를 생성하는 LLM의 기능을 향상시키기 위한 잠재적인 방향에 대한 통찰력을 제공합니다.

시사점, 한계점

시사점: 실제 저장소의 안전한 코드 생성을 위한 새로운 벤치마크 SecRepoBench 제시. 최첨단 LLM의 안전한 코드 생성 능력에 대한 실제적인 평가 제공. 기존 벤치마크와의 성능 비교를 통해 저장소 수준의 안전한 코드 생성의 어려움을 강조. LLM의 안전한 코드 생성 향상을 위한 연구 방향 제시.
한계점: 현재 벤치마크는 C/C++ 저장소에만 국한됨. 다양한 프로그래밍 언어 및 CWE에 대한 확장 필요. 평가에 사용된 LLM의 종류 및 버전에 대한 명확한 제시 필요. 에이전트 기법을 포함한 추가적인 연구가 필요.
👍