CVE, 무엇인가? 보안 취약점 관리의 핵심

안녕하세요. 보안클라우드 입니다.

보안 사고는 전 세계 각지에서 실시간으로 발생하고 있습니다. 이러한 방대한 사고들을 관리하기 위해 통일된 용어와 표준의 필요성을 느껴 만들어진 용어인 "CVE"에 대해 오늘 이야기해보려고 합니다.

CVE 메인 홈페이지

미국 비영리 회사인 MITRE에서 1999년 처음 만들어 운영을 시작했으며 소프트웨어와 펌웨어의 취약점들을 파악하고 분류해, 기업과 기관이 보안 강화에 사용할 수 있는 무료 코드를 만들기 위해 시작한 프로그램입니다.

CVE는 서로 유사한 취약점 정보가 관련 기관 및 보안업계 간 상이하게 분류되는 혼선을 방지하기 위해 공통의 유일한 명칭으로 취약점을 식별 및 분류하기 위해 만들어졌습니다. 마치 실제 범죄 수사에서 범죄자들을 식별하기 위해 부여하는 번호와 같다고 생각하면 됩니다.

CVE란?

CVE는 Common Vulnerabilities and Exposures의 약어로 공개적으로 알려진 소프트웨어의 보안 취약점을 표준화한 식별자 목록

구성 체계를 살펴보면 CVE 접두사를 붙이고 연도를 매겨서 해당 취약점이 언제 발생하였고, 고유 번호(CVE ID)를 부여해 식별하고 있습니다.

이러한 CVE 목록은 CVE 홈페이지를 통해 검색할 수 있으며 NVD(미국 국가 취약성 데이터베이스)에서 해당 CVE에 대한 더욱 자세한 설명과 CVSS를 확인할 수 있습니다.

NDV에서 제공하는 CVSS 점수(출처 : NDV의 CVE-2024-3094)

CVSS는 CVE의 요소 중 하나로 보안 취약점이 동작하는 환경, 절차 및 파급력 등을 고려해 취약점의 심각한 정도를 수치화하여 평가하는 공개 프레임워크입니다. 가장 낮은 0점을 시작으로 가장 높은 10점까지 소수점 첫째 자리까지 표현하고 있습니다. 점수를 부여함으로써 취약점의 심각도를 쉽게 구분할 수 있으며 우선순위를 정할 수 있는 역할을 합니다. 위의 그림은 이전 포스팅에서 이야기하였던 XZ-Utils 취약점에 대한 NVD에서 제공하는 CVSS 점수입니다.

※ NVD : NIST에서 관리하는 미국 정부 보안 취약점 저장소로서 CVE 리스트 식별자와 관련된 점수, 기타 정보 등이 저장되어 있습니다.

한국은 한국인터넷진흥원에서 세부 검색 항목들을 이용하여 보다 쉽게 CVE 검색을 지원하고 있습니다.

https://knvd.krcert.or.kr/resultList.do

CVE 등재 기준

공개적으로 확인 가능한 취약점 : 해당 취약점이 공개적으로 확인 가능해야 등재가 가능합니다. 이는 보안 연구자, 제조사, 또는 소프트웨어 개발자가 취약점을 발견하고 공개하여 보안 커뮤니티에 공개되었음을 의미합니다.

피해를 입은 벤더 또는 문서를 통한 확인 : 소프트웨어 또는 하드웨어 벤더가 버그를 확인하고 보안에 부정적인 영향을 미치는 취약점에 대해서만 등록 가능합니다. 또는 보고자가 버그의 부정적인 영향과 영향을 받은 시스템의 보안 정책을 위반한 버그에 대한 취약점 보고서를 공유한 경우입니다.

고유성 및 중요성 : CVE는 고유하며, 해당 취약점이 심각한 보안 문제로 인식되어야 합니다.

CVE 등재 과정

취약점 발견 및 보고 : 보안 연구자, 제조사, 개발자가 취약점을 발견하면 해당 취약점을 보안 기관 또는 제조사에 연락합니다.

취약점 검증 : 보고된 취약점의 존재와 심각성 확인을 제조사 또는 보안 기관에서 검증합니다.

CVE 요청 : 취약점이 검증되면 CNA(CVE Numbering Authorities)에 관련 보고서를 제출하여 요청합니다.

CVE 할당 : CNA는 보고서를 평가하고 ID 번호를 할당합니다.

CVE 발표 : 할당된 CVE ID와 함께 취약점에 대한 정보가 CVE 취약점 리스트에 등록되어 보안 커뮤니티와 관계자들이 확인할 수 있습니다.

제조사 공개 및 패치 : CVE가 발표된 후 해당 제조사는 취약점을 해결하는 패치를 개발하고 배포합니다.

얼핏 보면 단순히 취약점들을 식별하고 분류하는 CVE가 왜 중요한지 의문을 가지실 수 있을 겁니다. 그렇다면 CVE가 중요한 이유에 대해 살펴보도록 하겠습니다.

보안 취약점 관리의 효율성을 높여줍니다.

CVE ID를 이용하면 특정 취약성에 대한 정보를 더 빠르고 손쉽게 찾을 수 있어 현재 다양한 기업, 보안 조직 등에서 사이버 보안 관련 제품과 서비스를 위해 CVE ID를 활용하고 있습니다.

 

다양한 조직 간의 정보 공유를 용이하게 합니다.

CVE는 보안 위협에 ID를 할당함으로써 사이버 보안 전문가가 서로 쉽게 소통할 수 있도록 합니다.

 

사용자들이 자신의 시스템 및 소프트웨어의 취약점을 파악하고 해결하도록 돕습니다.

CVE는 보안 전문가, 개발자, 시스템 관리자 등 다양한 이해관계자들에게 취약점에 대한 표준화된 정보를 제공합니다. 이를 통해 보안 취약점에 대한 빠르고 효과적인 대응이 가능하여 보안 업데이트나 패치 배포, 취약점 대응 정책 등 다양한 보안 조치에 CVE가 중요한 역할을 합니다.

 

이렇게 오늘은 CVE에 대해 소개하는 글을 작성했습니다. 보안을 위협하는 취약점은 계속 진화하고 발전합니다. 모든 취약점이 등재되는 것은 아니지만 20년 이상 지난 지금 16만 개 이상의 취약점들이 CVE에 등재되어 있습니다. 보안 취약점은 시스템 공격에 악용할 수 있는 치명적인 결함입니다. 때문에 많은 개수와 분류를 위해 CVE와 같은 취약점을 식별하고 관리하는 프로그램은 필수적으로 필요합니다. 이 글을 통해 기업과 개인 모두가 CVE를 활용하여 시스템을 보호하고 보안 위험을 줄이는 데 도움이 되었기를 바랍니다. 감사합니다.

  • 이전 숨어있는 위협 - 제로데이 취약점
  • 다음 개인정보 수집 동의에 대한 이해와 안내