[논문 리뷰] The (Un)Reliability of NVD Vulnerable Versions Data: an Empirical Experiment on Google Chrome Vulnerabilities
이 논문은 Google Chrome에 대한 National Vulnerability Database(NVD)의 취약한 버전 데이터의 신뢰성을 수작업 검증 실험을 통해 평가한다. 분석 결과, 검증 가능한 Chrome 취약성의 약 25%가 NVD에서 잘못 취약한 것으로 표기되어 있으며, 전체적으로는 7%를 초과하는 오류율을 보이며, 이는 NVD 데이터에 의존하는 정량적 연구의 타당성을 훼손한다.
NVD is one of the most popular databases used by researchers to conduct empirical research on data sets of vulnerabilities. Our recent analysis on Chrome vulnerability data reported by NVD has revealed an abnormally phenomenon in the data where almost vulnerabilities were originated from the first versions. This inspires our experiment to validate the reliability of the NVD vulnerable version data. In this experiment, we verify for each version of Chrome that NVD claims vulnerable is actually vulnerable. The experiment revealed several errors in the vulnerability data of Chrome. Furthermore, we have also analyzed how these errors might impact the conclusions of an empirical study on foundational vulnerability. Our results show that different conclusions could be obtained due to the data errors.
연구 동기 및 목표
- Empirical 취약성 연구에서 널리 사용되는 Google Chrome에 대한 NVD의 '취약한 소프트웨어 및 버전' 기능의 신뢰성을 평가하기 위해.
- NVD에서 보고한 Chrome의 취약한 버전에 대한 오류, 특히 거짓 긍정과 거짓 부정을 식별하고 정량화하기 위해.
- 이러한 데이터 오류가 기초적인 취약성 연구의 결론에 어떤 영향을 미칠 수 있는지 평가하기 위해.
- Firefox나 Linux와 같은 다른 오픈소스 소프트웨어에 적용 가능한 재현 가능한 검증 방법을 제공하기 위해.
- NVD와 같은 제3자 데이터베이스에서 오는 잠재적 오류에 기반한 데이터 편향의 위험을 부각하기 위해.
제안 방법
- 저자는 실제 코드와 릴리스 이력을 점검하여 NVD 항목이 특정 Chrome 버전이 취약하다는 주장을 수작업으로 검증했다.
- 검증 과정의 정확성을 확보하기 위해 다중 라운드의 테스트-수정 방식을 사용하여 반복적으로 출력 결과를 점검하고 수정했다.
- 외부 프로젝트(예: WebKit, V8)와 연결된 검증이 어려운 취약성의 경우, Chrome의 이슈 트래커에서 버그 리포트 링크를 추출하고 외부 프로젝트의 리비전과 매핑했다.
- Chrome 소스 저장소를 분석하여 Chrome 버전과 외부 컴ponent의 특정 리비전 간의 매핑을 재구성했다.
- 오류율을 계산하기 위해 통계 분석을 적용하였으며, 유의미한 오류 수준을 정의하기 위해 5% 기준을 사용했다.
- 개별 Chrome 버전에 걸쳐 취약성 주장의 타당성을 검증하기 위한 체계적이고 재현 가능한 방법을 적용했다.
실험 결과
연구 질문
- RQ1NVD의 '취약한 버전' 기능이 Google Chrome에 대해 얼마나 신뢰할 수 있는가?
- RQ2Chrome에 대한 NVD의 보고된 취약한 버전의 실제 오류율은 얼마이며, 버전 간으로 어떻게 변동하는가?
- RQ3NVD의 취약한 버전 기능에서 발생하는 데이터 오류가 기초적인 취약성 연구의 결론에 어떤 영향을 미치는가?
- RQ4NVD의 취약성 데이터를 다른 오픈소스 소프트웨어에 대해 검증할 수 있는 재현 가능한 수작업 검증 방법을 수립할 수 있는가?
- RQ5NVD의 보고된 데이터와 실제 취약성 상태 사이의 격차의 근본 원인은 무엇인가?
주요 결과
- 검증 가능한 Chrome 취약성의 약 25%가 NVD에서 잘못 취약한 것으로 보고되어 있어 데이터 오류율이 높음을 시사한다.
- 모든 검증이 어려운 취약성이 정확하다는 가정하에 전체 오류율은 여전히 7% 이상이며, 이는 통계적 유의성 기준인 5%를 초과한다.
- 연구는 NVD가 과거 및 향후 버전에 대해 자주 잘못된 취약성 보고를 하며, 거짓 긍정과 거짓 부정을 포함하고 있음을 드러냈다.
- 이러한 데이터 오류는 기초적인 취약성 연구의 타당성을 심각하게 위협하며, 특히 악용 가능성과 노출 시간에 대한 잘못된 결론을 이끌 수 있다.
- Chrome 취약성의 약 두 번째 정도(약 2/3)는 WebKit과 V8와 같은 외부 프로젝트에서 기인하여 검증이 불가능하며, 추가적인 역공학적 분석이 필요하다.
- 저자는 버그 리포트와 소스 코드 분석을 통해 Chrome 버전과 외부 프로젝트 리비전을 연결함으로써 NVD 데이터를 검증할 수 있는 실현 가능하고 재현 가능한 방법을 입증했다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.