VulnGym: 저장소 수준의 취약점 탐지를 위한 코딩 에이전트 벤치마킹
요약
코딩 에이전트의 저장소 수준 취약점 탐지 능력을 평가하기 위한 새로운 벤치마크인 VulnGym을 제안합니다. GitHub 어드바이저리를 기반으로 세밀한 취약점 추적 주석을 제공하여 에이전트의 코드 로컬라이제이션 및 증거 구축 능력을 진단합니다.
핵심 포인트
- 저장소 수준의 취약점 탐지를 위한 벤치마크 VulnGym 제시
- GitHub 어드바이저리와 취약한 저장소를 정렬한 실제 환경 데이터 활용
- 라인 수준의 진입점 및 취약점 추적(vulnerability traces) 주석 포함
- 현재 코딩 에이전트의 엔드 투 엔드 탐지 및 증거 구축 한계 확인
LLM(대규모 언어 모델) 기반 취약점 탐지의 최근 발전은 유망한 결과를 보여주었으며, 코딩 에이전트(coding agents)는 이러한 능력을 고립된 코드 스니펫(code snippets)에서 완전한 저장소(repositories)로 더욱 확장하고 있습니다. 이러한 변화는 에이전트가 미리 선택된 함수에 대해 탐지를 수행하는 대신, 저장소를 자율적으로 탐색하고 취약점과 관련된 코드를 찾아낼 것을 요구합니다. 그러나 기존의 벤치마크는 주로 미리 선택된 코드 스니펫에 대한 취약점 분류에 집중되어 있어, 저장소 수준의 취약점 탐지에서 코딩 에이전트를 평가하는 능력이 제한적입니다. 더욱이, 세밀한 취약점 추적(vulnerability trace) 주석이 없다면 탐지 과정의 근저에 있는 능력의 한계를 탐구하기 어렵습니다. 이러한 한계를 해결하기 위해, 우리는 코딩 에이전트에 의한 취약점 탐지를 평가하기 위한 실제 환경의 저장소 수준 벤치마크인 \textbf{VulnGym}을 제시합니다. VulnGym은 검토된 GitHub 어드바이저리(advisories)를 그에 상응하는 취약한 버전의 저장소와 정렬합니다. 이는 23개의 저장소에 걸쳐 184개의 어드바이저리와 408개의 취약점 항목을 포함하며, 각 항목에는 라인 수준의 진입점(entry points), 핵심 작업(critical operations), 그리고 취약점 추적(vulnerability traces)이 주석으로 달려 있습니다. 이러한 세밀한 정답(ground truth)을 사용하여, VulnGym은 엔드 투 엔드(end-to-end) 탐지 작업과 세 가지 오라클 기반(oracle-based) 하위 작업을 정의하여 취약점 탐지를 공동으로 평가하고 코드 로컬라이제이션(code localization) 및 증거 구축(evidence construction)에서의 한계를 진단합니다. 우리의 평가 결과에 따르면, 현재의 코딩 에이전트는 엔드 투 엔드 저장소 수준의 취약점 탐지와 정확한 지원 추적(supporting traces) 구축 모두에서 여전히 한계를 보이고 있습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기