Belangrijkste concepten
대규모 언어 모델은 취약점 탐지에 어려움을 겪으며, 취약점의 유형, 위치, 원인을 정확하게 식별하지 못하는 경우가 많다.
Samenvatting
이 연구는 11개의 최신 대규모 언어 모델의 취약점 탐지 기능을 종합적으로 평가했다. 연구 결과에 따르면 대규모 언어 모델의 취약점 탐지 성능은 매우 제한적이었다. 모델들은 0.5-0.63의 균형 정확도를 보였으며, 76%의 경우에서 취약한 코드와 수정된 코드를 구분하지 못했다. 287개의 모델 응답을 분석한 결과, 57%에서 코드 이해, 허구, 논리, 상식 지식 등의 오류가 발견되었다. 특히 경계/null 검사 관련 오류가 많았다. 또한 모델들은 취약점의 위치, 유형, 원인을 정확하게 식별하지 못했다. DbgBench 데이터셋에서 모델들은 27개 버그 중 6개만 정확하게 위치를 찾아냈으며, 이 6개 버그는 최소 70%의 인간 참여자들이 정확하게 진단했다. 이러한 결과는 현재 대규모 언어 모델이 보안 관련 코드 구조와 개념을 제대로 이해하지 못함을 보여준다.
Statistieken
모델들은 취약한 코드와 수정된 코드를 76%의 경우에서 구분하지 못했다.
모델들은 27개 버그 중 6개만 정확하게 위치를 찾아냈다.
6개 버그 중 4개는 GPT-3.5가 정확하게 찾아냈다.
Citaten
"LLMs generally struggled with vulnerability detection. They reported 0.5-0.63 Balanced Accuracy and failed to distinguish between buggy and fixed versions of programs in 76% of cases on average."
"By comprehensively analyzing and categorizing 287 instances of model reasoning, we found that 57% of LLM responses contained errors, and the models frequently predicted incorrect locations of buggy code and misidentified bug types."
"LLMs only correctly localized 6 out of 27 bugs in DbgBench, and these 6 bugs were predicted correctly by 70-100% of human participants."