[논문 리뷰] How Far Have We Gone in Vulnerability Detection Using Large Language Models
이 논문은 VulBench를 소개하고, 대규모 취약점 탐지 벤치마크를 제시하며, SOTA DL 모델 및 정적 분석기와 비교하여 16개의 LLM을 평가합니다. CTF 및 실제 세계 데이터셋 전반에서 LLM이 전통적 방법을 능가하는 시나리오가 있는 반면, 복잡한 실세계 케이스에서는 뒤처지는 경향이 관찰됩니다.
As software becomes increasingly complex and prone to vulnerabilities, automated vulnerability detection is critically important, yet challenging. Given the significant successes of large language models (LLMs) in various tasks, there is growing anticipation of their efficacy in vulnerability detection. However, a quantitative understanding of their potential in vulnerability detection is still missing. To bridge this gap, we introduce a comprehensive vulnerability benchmark VulBench. This benchmark aggregates high-quality data from a wide range of CTF (Capture-the-Flag) challenges and real-world applications, with annotations for each vulnerable function detailing the vulnerability type and its root cause. Through our experiments encompassing 16 LLMs and 6 state-of-the-art (SOTA) deep learning-based models and static analyzers, we find that several LLMs outperform traditional deep learning approaches in vulnerability detection, revealing an untapped potential in LLMs. This work contributes to the understanding and utilization of LLMs for enhanced software security.
연구 동기 및 목표
- 소프트웨어 복잡도 증가에 따른 자동화된 취약점 탐지의 필요성 확립.
- 명확한 취약점 유형과 근본 원인을 갖춘 고품질 다원 소스 취약점 데이터 세트 작성.
- 취약점 탐지 과제에서 16개의 LLM과 최첨단 딥러닝 모델 및 정적 분석기 간의 성능 평가.
- 향후 LLM 보조 취약점 탐지 연구를 돕기 위한 가이드라인 및 기준 결과 제공.
제안 방법
- CTF 챌린지, MAGMA, Devign, D2A, Big-Vul 데이터셋을 전문가의 라벨링으로 집계하여 VulBench 구성.
- 취약 여부를 이진 분류(취약/비취약) 및 취약점 유형을 다중 분류로 평가하여 함수의 기능을 평가.
- 16개의 LLM을 세 가지 딥러닝 기준선 및 세 가지 정적 분석기와 일정한 평가 설정에서 비교.
- 모든 모델의 구문 해석 가능성을 확보하기 위해 일관된 출력 템플릿과 함께 two-shot 및 five-shot 프롬프팅 사용.
- 정보 제공 효과를 연구하기 위해 주어진 입력 맥락(전체 이진 코드, 단일 함수, 디컴파일된 코드 vs 원본)을 분석.
실험 결과
연구 질문
- RQ1LLM이 전통적 DL 모델 및 정적 분석기에 비해 취약점 탐지에서 어느 정도까지 우수한가?
- RQ2입력 정보의 품질과 유형이 LLM의 취약점 탐지 성능에 어떻게 영향을 미치는가?
- RQ3LLMs는 CTF/시나리오 기반 취약점과 실제 세계 CVE 기반 취약점에서 어떻게 다른가?
- RQ4취약점 탐지에서 LLM의 한계와 편향은 무엇이며 데이터셋과 프롬프트를 어떻게 개선할 수 있는가?
- RQ5VulBench가 향후 LLM 기반 취약점 연구를 위한 신뢰할 수 있고 확장 가능한 평가를 제공할 수 있는가?
주요 결과
- LLMs, 특히 GPT-4는 이진 코드와 다중 분류 과제에서 CTF 스타일의 취약점 탐지에서 최적의 기준선을 능가할 수 있다.
- 오픈 액세스 LLM은 규모 확장의 이점을 보이나 데이터셋 품질과 맥락 길이에 의해 한계가 있으며, GPT-4가 더 단순한 데이터셋에서 종종 선두를 차지한다.
- 실제 데이터셋에서 모든 모델은 LLM을 포함해도 성능이 저하되며 보수적으로 보이는 경향이 있으며, RLHF-튜닝 모델은 특정 취약점 유형에 편향을 보인다.
- 디컴파일된 코드의 한계와 클로즈드 소스 맥락은 LLM의 효과를 감소시키며, 더 풍부한 맥락과 정적 분석 또는 퍼징(fuzzing) 도구와의 통합의 가치를 부각시킨다.
- VulBench는 자연어 취약점 설명을 갖춘 다중 소스 데이터세트를 제공하여 평가의 타당성과 비교 가능성을 향상시킨다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.