Jamie the programmer

[번역/정리] CVSS(Common Vulnerability Scoring System) v4.0 Specification 본문

IT 보안

[번역/정리] CVSS(Common Vulnerability Scoring System) v4.0 Specification

jamie91 2025. 3. 31. 00:05
Contents 접기
반응형


이 문서는 CVSS(Common Vulnerability Scoring System) v4.0의 공식 사양을 제공합니다. CVSS는 소프트웨어 취약점의 특성과 심각도를 전달하기 위한 개방형 프레임워크입니다. CVSS는 기본(Base), 위협(Threat), 환경(Environmental) 및 보충(Supplemental)의 네 가지 메트릭그룹으로 구성됩니다. 이 시스템은 취약점의 심각도를 표준화된 방법으로 평가하고, 조직이 자체 환경에 맞는 위협을 평가하고 관리하는 데 도움을 줍니다. CVSS는 FIRST.Org, Inc.에서 소유 및 관리하며, 누구나 자유롭게 사용할 수 있습니다.


1. 🔍 CVSS v4.0의 주요 특징과 구조

  • CVSS는 소프트웨어 취약점의 특성과 심각도를 전달하기 위한 개방형 프레임워크로, 4개의 메트릭그룹(기본, 위협, 환경, 보충)으로 구성되어 있다.
  • 기본 메트릭은 취약점의 고유한 특성을 나타내며, 0에서 10까지의 점수를 산출한다. 이는 위협 및 환경 메트릭을 통해 더 정확하게 조정될 수 있다.
  • CVSS 벡터 문자열은 점수를 도출하는 데 사용된 값들의 압축된 텍스트 표현이며, 점수와 함께 제공되어야 한다.
  • CVSS는 FIRST.Org, Inc.에서 소유 및 관리하며, 누구나 자유롭게 사용할 수 있지만 적절한 출처 표시가 필요하다.
  • CVSS점수는 사용된 메트릭에 따라 CVSS-B, CVSS-BE, CVSS-BT, CVSS-BTE와 같은 명명법을 사용하여 표시해야 한다.

1.1. CVSS 4.0 최신 버전 및 문서 정보

  • CVSS표준의 최신 버전은 4.0으로, 2023년 11월 1일에 공개되었다.
  • 현재 문서 버전은 1.2이며, PDF 형식으로도 제공된다.
  • CVSS(Common Vulnerability Scoring System)는 소프트웨어 취약점의 특성과 심각도를 전달하기 위한 개방형 프레임워크이다.
  • 이 페이지는 CVSS표준의 각 릴리스에 따라 지속적으로 업데이트된다.
  • 사용자는 필요에 따라 특정 버전의 사양 문서를 선택하여 사용할 수 있다.

1.2. CVSS의 구조와 메트릭 그룹

  • CVSS는 기본(Base), 위협(Threat), 환경(Environmental), 보충(Supplemental) 네 가지 메트릭그룹으로 구성된다.
  • 기본 그룹은 시간과 사용자 환경에 관계없이 일정한 취약점의 본질적 특성을 나타내며, 위협 그룹은 시간에 따라 변하는 특성을, 환경 그룹은 사용자 환경에 고유한 특성을 반영한다.
  • 기본 메트릭값은 위협과 환경 메트릭의 최고 심각도를 가정한 기본값과 결합되어 0에서 10 사이의 점수를 산출한다.
  • 위협 정보와 환경적 고려사항을 바탕으로 위협 및 환경 메트릭을 조정하여 심각도점수를 더욱 정교하게 만들 수 있다.
  • 보충 메트릭은 최종 점수를 수정하지 않으며, 취약점의 특성에 대한 추가적인 통찰을 제공하는 데 사용된다.

1.3. CVSS의 소유권과 사용 조건

  • CVSS는 FIRST.Org, Inc.( FIRST)가 소유 및 관리하며, 누구나 자유롭게 사용할 수 있지만 일정 조건을 준수해야 한다.
  • CVSS사용 시 FIRST의 소유권을 명시해야 하며, CVSS데이터 게시 시 점수와 벡터 문자열을 함께 제공해야 한다.
  • CVSS는 소프트웨어, 하드웨어, 펌웨어 취약점의 주요 기술적 특성을 포착하고, 취약점의 심각도를 수치화한다.
  • CVSS는 기본, 위협, 환경, 보충 네 가지 메트릭그룹으로 구성되며, 각 그룹은 취약점의 다양한 측면을 평가한다.
  • CVSS정보는 조직의 취약점 관리 프로세스에 입력으로 사용되며, 기술 인프라에 대한 위협을 평가하고 개선 결정을 내리는 데 도움을 준다.

1.4. CVSS의 4가지 메트릭 그룹과 특성

  • CVSS는 기본(Base), 위협(Threat), 환경(Environmental), 보충(Supplemental) 4가지 메트릭그룹으로 구성되어 있다.
  • CVSS는 소프트웨어, 하드웨어, 펌웨어 취약점의 기술적 특성을 포착하는 시스템임.
  • CVSS는 취약점의 심각도를 나타내는 수치 점수를 제공함.
  • 기본(Base) 메트릭그룹은 시간에 따라 변하지 않는 취약점의 본질적 특성을 나타냄.
  • 위협(Threat) 메트릭그룹은 시간에 따라 변할 수 있는 취약점의 특성을 반영함.
  • 예: PoC 코드의 가용성, 실제 악용 여부 등.
  • 환경(Environmental) 메트릭그룹은 특정 사용자 환경에 고유한 취약점특성을 나타냄.
  • 예: 보안통제의 존재, 시스템 중요도 등.
  • 보충(Supplemental) 메트릭그룹은 취약점의 추가적인 외부 속성을 설명함.
  • 소비자가 자체 위험 분석시스템을 적용할 수 있도록 함.
  • 기본 메트릭그룹은 취약점의 본질적 특성을 나타내며, 악용 가능성(Exploitability)과 영향(Impact) 메트릭으로 구성된다.
  • 악용 가능성 메트릭은 취약한 시스템의 특성을, 영향 메트릭은 취약한 시스템과 후속 시스템에 대한 성공적인 공격의 결과를 반영한다.
  • 위협 메트릭그룹은 시간에 따라 변할 수 있는 취약점의 특성을 반영하며, 환경 메트릭그룹은 특정 사용자 환경에 고유한 취약점특성을 나타낸다.
  • 보충 메트릭그룹은 취약점의 추가적인 외부 속성을 설명하며, 소비자가 자체 위험 분석시스템을 적용할 수 있게 한다.

1.5. CVSS 평가 방법과 명명법

  • CVSS 평가는 기본(Base) 메트릭으로 시작하여 0.0에서 10.0 사이의 점수를 산출하며, 이후 위협(Threat)과 환경(Environmental) 메트릭을 통해 더 정확한 심각도를 반영할 수 있다.
  • 기본 메트릭은 주로 취약점분석가나 제품 공급업체가 지정하며, 위협과 환경 메트릭은 사용자 조직이 자체 환경에 맞게 평가한다.
  • CVSS 평가결과는 벡터 문자열로 표현되며, 이는 각 메트릭의 값을 포함한 특정 형식의 텍스트 문자열이다.
  • CVSS점수의 명명법은 사용된 메트릭을 명확히 표시하며, CVSS-B(기본), CVSS-BE(기본+환경), CVSS-BT(기본+위협), CVSS-BTE(기본+위협+환경)와 같은 형식을 사용한다.
  • CVSSv4.0에서는 기본, 위협, 환경 메트릭값이 항상 최종 점수 계산에 고려되며, 명시적으로 선택되지 않은 경우 기본값("Not Defined")이 사용된다.

1.6. 취약점 악용 가능성 메트릭의 특성

  • 취약점 악용 가능성 메트릭은 " 취약한 시스템"의 특성을 반영하며, 성공적인 공격으로 이어지는 취약점의 속성을 나타낸다.
  • 기본 메트릭 평가시, 공격자가 대상 시스템의 일반적인 구성과 기본 방어 메커니즘에 대한 고급 지식을 가지고 있다고 가정한다.
  • 공격 복잡성 평가는 공격자의 지식이나 능력과 무관하게, 취약점악용의 반복 가능성과 결정론적 성공을 기준으로 한다.
  • 대상별 공격 완화 조치(예: 맞춤형 방화벽 필터, 접근 제어 목록)는 환경 메트릭 점수 그룹에 반영되어야 한다.
  • CVSS기본 메트릭 평가에는 특정 구성이 영향을 미치지 않아야 하며, 공격 성공에 필요한 구성이 있다면 그 구성을 가정하고 취약한 시스템을 평가해야 한다.

1.7. 공격 벡터와 복잡성 평가 기준

공격 벡터(AV)는 취약점악용의 맥락을 반영하며, 공격자가 더 멀리 있을수록 심각도가 높아진다.
공격 벡터는 Network, Adjacent, Local, Physical 4가지로 분류되며, 각각 네트워크 수준 공격, 인접 토폴로지 공격, 로컬 접근 공격, 물리적 접촉 공격을 의미한다.
공격 복잡성(AC)은 공격자가 기존 보안 강화 조건을 우회하기 위해 취해야 하는 조치를 평가하며, Low와 High로 구분된다.
공격 요구사항(AT)은 취약한 시스템의 배포 및 실행 조건을 평가하며, None과 Present로 구분된다.
필요 권한(PR)은 공격자가 취약점을 악용하기 전에 필요한 권한 수준을 평가하며, None, Low, High로 구분된다.

2. 🛡️ CVSS v4.0의 영향 및 위협 메트릭

  • 영향 메트릭은 취약점악용 시 발생하는 영향을 측정하며, 취약 시스템과 후속 시스템에 대한 기밀성, 무결성, 가용성 영향을 평가한다.
  • 영향 평가시 최종 결과에 초점을 맞추며, 취약점악용으로 인한 접근 권한 상승이나 권한 획득 등 부정적 결과만을 고려한다.
  • 위협 메트릭은 취약점에 대한 현재의 공격 기술이나 코드 가용성을 측정하며, '공격 성숙도(E)' 지표를 통해 실제 공격 가능성을 평가한다.
  • 환경 메트릭은 조직 내 IT 자산의 중요도에 따라 점수를 조정할 수 있게 하며, 기밀성, 무결성, 가용성 요구사항과 수정된 기본 메트릭을 포함한다.
  • 보충 메트릭은 취약점의 추가적인 외부 속성을 설명하는 선택적 지표로, 안전성(S)과 자동화 가능성(AU) 등을 포함하며 최종 CVSS점수에는 영향을 미치지 않는다.

2.1. 취약점 악용 사례와 Active 취약점 정의

  • 취약점악용의 예시로는 악성 콘텐츠를 표시하도록 수정된 웹사이트 활용, 시스템에 심어진 악성 바이너리를 호출하는 애플리케이션 실행, 신뢰할 수 없는 네트워크를 통해 트래픽을 생성하는 애플리케이션 사용 등이 있다.
  • Active 취약점은 사용자가 취약한 시스템과 공격자의 페이로드에 대해 특정하고 의식적인 상호작용을 수행해야 성공적으로 악용될 수 있는 취약점이다.
  • Active 취약점의 예시로는 특정 방식으로 파일을 취약한 시스템에 가져오기, 코드 실행 전 특정 디렉토리에 파일 배치, 웹 애플리케이션에 특정 문자열 제출 등이 있다.
  • 또한, 파일 열기/편집, 장치 연결 등의 작업 전 프롬프트나 보안 경고를 무시하거나 수락하는 것도 Active 취약점의 예시에 포함된다.
  • Active 취약점은 사용자의 상호작용이 보호 메커니즘을 적극적으로 무력화하여 취약점악용으로 이어질 수 있는 경우도 포함한다.

2.2. 영향 메트릭의 정의와 평가 방법

  • 영향 메트릭은 성공적으로 악용된 취약점의 결과를 측정하며, 분석가는 공격자가 달성할 수 있는 합리적이고 최종적인 결과에 초점을 맞춰야 한다.
  • 취약점 평가시 접근 권한 증가, 권한 획득, 또는 기타 부정적 결과와 같이 성공적인 악용으로 인한 변화만을 고려해야 한다.
  • 영향 평가는 최종 영향을 기준으로 해야 하며, 취약점악용 전후의 변화량(delta change)을 고려해야 한다.
  • 예를 들어, 읽기 전용 권한에서 쓰기 권한을 추가로 얻는 경우, 무결성(Integrity) 영향 메트릭만 점수를 매기고 기밀성과 가용성은 '없음'으로 설정한다.
  • 기밀성 영향이 낮음에서 높음으로 변경되는 경우, 최종 상태인 '기밀성 높음'을 CVSS기본 메트릭값으로 사용해야 한다.

2.3. 취약점 영향 평가의 범위와 경계

  • CVSS에서 영향 평가는 취약한 시스템(Vulnerable System)과 후속 시스템(Subsequent System)에 대한 두 가지 영향 메트릭세트로 구성된다.
  • 취약점 평가시 관심 시스템(system of interest) 개념을 사용하여 일관된 기능과 보안정책을 가진 컴퓨팅 로직 집합의 경계를 설정한다.
  • 서버, 워크스테이션, 컨테이너화된 서비스 등 특정 목적이나 기능을 수행하는 기술 제품이나 솔루션은 하나의 시스템으로 간주된다.
  • 다른 시스템에 의해 독점적으로 사용되거나 기능을 제공하는 시스템은 함께 하나의 관심 시스템으로 취급된다. (예: 스마트 스피커 전용 데이터베이스)
  • 취약한 시스템외부에 영향이 없는 경우 후속 시스템 영향 메트릭은 NONE(N)으로 설정하며, 외부 영향은 모두 후속 시스템 영향세트에 반영한다.

2.4. 취약 시스템의 기밀성 영향 평가

  • 기밀성 영향 메트릭은 취약점악용 시 시스템이 관리하는 정보의 기밀성에 미치는 영향을 측정한다.
  • 기밀성 영향은 '높음(H)', '낮음(L)', '없음(N)' 세 단계로 구분되며, 시스템의 손실이 클수록 점수가 높아진다.
  • '높음(H)'은 모든 정보가 공개되거나 제한된 정보라도 심각한 영향을 주는 경우로, 관리자 비밀번호나 웹 서버의 개인 암호화 키 유출 등이 해당한다.
  • '낮음(L)'은 일부 제한된 정보에 대한 접근은 가능하지만, 공개된 정보가 직접적이고 심각한 손실을 초래하지 않는 경우이다.
  • '없음(N)'은 취약 시스템 내에서 기밀성 손실이 전혀 없는 경우를 의미한다.

2.5. 후속 시스템의 기밀성 영향 평가

  • 후속 시스템의 기밀성 영향은 높음(H), 낮음(L), 없음(N) 세 단계로 구분된다.
  • 높음(H)은 모든 자원이 공격자에게 노출되거나, 제한된 정보라도 직접적이고 심각한 영향을 주는 경우로, 관리자 비밀번호나 웹 서버의 개인 암호화 키 유출 등이 해당한다.
  • 낮음(L)은 일부 제한된 정보에 대한 접근이 이루어지지만, 공격자가 정보 획득을 완전히 통제하지 못하거나 손실의 범위가 제한적인 경우다.
  • 없음(N)은 후속 시스템내 기밀성 손실이 전혀 없거나, 모든 기밀성 영향이 취약한 시스템에만 국한된 경우를 의미한다.
  • 이러한 평가기준은 취약점으로 인한 기밀성 침해의 심각도를 체계적으로 분류하고 평가하는 데 도움을 준다.

2.6. 취약한 시스템의 무결성 영향 평가

  • 무결성(Integrity) 메트릭은 성공적으로 악용된 취약점이 시스템의 무결성에 미치는 영향을 측정한다.
  • 무결성은 공격자가 시스템 데이터를 무단으로 수정하거나 사용자가 중요한 행동을 부인할 수 있을 때 영향을 받는다.
  • 취약한 시스템의 무결성 영향은 높음(H), 낮음(L), 없음(N) 세 가지 수준으로 평가된다.
  • 높음(H) 수준은 무결성의 완전한 손실이나 보호 기능의 완전한 상실을 의미하며, 공격자가 모든 파일을 수정하거나 심각한 결과를 초래할 수 있는 경우이다.
  • 낮음(L) 수준은 데이터 수정이 가능하지만 공격자가 수정의 결과를 제어할 수 없거나 수정 범위가 제한적이며, 직접적이고 심각한 영향이 없는 경우이다.

2.7. 후속 시스템의 무결성 영향 수준

  • 높음(H) 수준은 무결성의 완전한 손실 또는 보호의 완전한 상실을 의미하며, 공격자가 후속 시스템이 보호하는 모든 파일을 수정할 수 있거나 일부 파일 수정이 심각한 결과를 초래할 수 있는 상태이다.
  • 낮음(L) 수준은 데이터 수정이 가능하지만 공격자가 수정 결과를 제어할 수 없거나 수정 범위가 제한적이며, 수정이 후속 시스템에 직접적이고 심각한 영향을 미치지 않는 상태이다.
  • 없음(N) 수준은 후속 시스템내에서 무결성 손실이 없거나 모든 무결성 영향이 취약한 시스템에 국한된 상태를 의미한다.
  • 이러한 무결성 영향수준은 후속 시스템에 대한 공격의 잠재적 결과를 평가하는 데 중요한 지표로 사용된다.

2.8. 가용성 영향 평가 메트릭

  • 가용성 메트릭은 취약점악용 시 영향 받는 시스템의 가용성에 미치는 영향을 측정한다.
  • 가용성은 시스템 자체의 손실을 의미하며, 네트워크 대역폭, 프로세서 사이클, 디스크 공간 소비 등의 공격이 이에 해당한다.
  • 가용성 영향은 High, Low, None 세 단계로 구분되며, 시스템에 대한 결과가 가장 심각할 때 최고 점수가 부여된다.
  • High 수준은 공격자가 취약한 시스템의 리소스에 대한 접근을 완전히 차단하거나, 심각한 결과를 초래하는 경우다.
  • Low 수준은 성능 저하나 리소스 가용성 중단이 있지만, 정당한 사용자의 서비스를 완전히 차단할 수는 없는 경우다.

2.9. 후속 시스템의 가용성 영향 수준

  • 가용성 영향이 '높음(H)'일 경우, 공격자가 후속 시스템의 자원에 대한 접근을 완전히 차단할 수 있으며, 이는 지속적이거나 공격 후에도 지속될 수 있다.
  • 가용성 영향이 '낮음(L)'인 경우, 성능 저하나 자원 가용성의 중단이 발생하지만, 공격자가 정당한 사용자의 서비스를 완전히 차단할 수는 없다.
  • '없음(N)' 수준은 후속 시스템내 가용성에 영향이 없거나, 모든 가용성 영향이 취약한 시스템에 국한된 경우를 의미한다.
  • 높은 수준의 영향은 새로운 연결 방지나 반복적인 취약점악용을 통한 서비스 완전 중단 등 심각한 결과를 초래할 수 있다.
  • 낮은 수준의 영향에서는 자원이 항상 부분적으로 사용 가능하거나 일시적으로 완전히 사용 가능하지만, 전반적으로 후속 시스템에 직접적이고 심각한 결과는 없다.

2.10. 위협 메트릭과 환경 메트릭의 주요 특징

  • 위협 메트릭은 취약점이 공격당할 가능성을 측정하며, 현재의 exploit 기술 상태와 exploit 코드의 가용성을 기반으로 한다.
  • Exploit 성숙도(E) 메트릭은 취약점공격 가능성을 평가하며, 실제 공격은 이론적 단계에서 시작하여 점차 정교해질 수 있다.
  • 환경 메트릭은 조직의 IT 자산 중요도에 따라 점수를 조정할 수 있게 하며, 기밀성, 무결성, 가용성 요구사항(CR, IR, AR)을 포함한다.
  • 수정된 기본 메트릭은 사용자 환경의 특정 특성에 따라 기본 메트릭값을 재정의할 수 있게 하며, 이는 완화 조치와 보상 제어를 정의하는 데 사용된다.
  • 안전성(Safety) 메트릭은 취약점악용이 인간의 안전에 미치는 잠재적 영향을 측정하며, IEC 61508 정의를 기준으로 평가된다.

3. 🚨 공급업체 긴급도와 취약점 대응 노력

  • CVSSv4.0은 공급업체의 추가 평가를 표준화된 방식으로 통합하기 위해 Provider Urgency라는 선택적 보충 메트릭을 제공한다.
  • Provider Urgency는 Red(최고 긴급), Amber(중간 긴급), Green(낮은 긴급), Clear(긴급하지 않음) 4단계로 평가되며, 최종 제품 공급자(PPP)가 가장 적합한 평가자이다.
  • Vulnerability Response Effort 메트릭은 소비자가 취약점에 대한 초기 대응을 얼마나 어렵게 할 수 있는지에 대한 추가 정보를 제공하며, Low, Moderate, High로 구분된다.
  • 대응 노력이 High인 경우, 취약점해결을 위해 상당한 노력이 필요하거나 현장에서 원격으로 대응이 불가능한 경우를 의미한다.
  • 이러한 메트릭들은 조직이 취약점관리 프로세스를 적절히 평가하고 우선순위를 정하는 데 도움을 준다.

3.1. 공급자 긴급성과 시스템 복구 메트릭

  • CVSSv4.0에서는 공급자 긴급성(Provider Urgency) 메트릭을 도입하여 공급자의 추가 평가를 표준화된 방식으로 반영할 수 있게 되었다.
  • 공급자 긴급성은 Red(최고 긴급), Amber(중간 긴급), Green(낮은 긴급), Clear(긴급하지 않음) 등 4단계로 평가되며, 최종 제품 공급자(PPP)가 가장 적합한 평가주체이다.
  • 복구(Recovery) 메트릭은 공격 후 시스템의 서비스 복구 능력을 평가하며, 자동(Automatic), 사용자(User), 복구 불가능(Irrecoverable) 세 가지 값으로 구분된다.
  • 복구 메트릭은 공격 후 시스템의 성능과 가용성 측면에서 서비스 복구 능력을 설명한다.
  • 두 메트릭모두 'Not Defined(X)' 옵션이 있어, 평가되지 않은 경우를 표시할 수 있다.

3.2. Value Density와 취약점 대응 노력 평가

  • Value Density는 공격자가 단일 공격으로 얻을 수 있는 자원의 가치를 'Diffuse'와 'Concentrated'로 구분한다.
  • Diffuse는 취약한 시스템의 자원이 제한적인 경우로, 단일 이메일 클라이언트 취약점공격이 예시이다.
  • Concentrated는 시스템이 풍부한 자원을 가진 경우로, 주로 '시스템 운영자'의 책임 하에 있으며 중앙 이메일 서버 공격이 예시이다.
  • 취약점대응 노력(Vulnerability Response Effort) 메트릭은 소비자가 취약점에 대한 초기 대응을 제공하는 데 필요한 노력을 'Low', 'Moderate', 'High'로 평가한다.
  • High 수준의 대응 노력은 상당한 노력이 필요하거나 장기적인 서비스 중단을 초래할 수 있는 경우로, UEFI BIOS 업데이트나 물리적 교체가 필요한 경우가 해당된다.

3.3. CVSS 점수의 질적 심각도 등급

  • CVSS점수는 텍스트 기반의 질적 심각도 등급으로 변환될 수 있으며, 이는 기본, 위협, 환경 점수 모두에 적용된다.
  • 심각도등급은 None(0.0), Low(0.1-3.9), Medium(4.0-6.9), High(7.0-8.9), Critical(9.0-10.0)의 5단계로 구분된다.
  • 예를 들어, CVSS기본 점수 5.0은 Medium 등급에 해당한다.
  • 이러한 질적 심각도등급의 사용은 선택적이며, CVSS점수 발표 시 반드시 포함할 필요는 없다.
  • 질적 심각도등급은 조직이 취약점 관리 프로세스를 적절히 평가하고 우선순위를 설정하는 데 도움을 주기 위한 것이다.

3.4. CVSS v4.0 벡터 문자열의 구조와 규칙

  • CVSSv4.0 벡터 문자열은 CVSS 메트릭정보를 간결하고 기계가 읽을 수 있는 형태로 표현한 텍스트이다.
  • 벡터 문자열은 " CVSS:4.0"으로 시작하며, 각 메트릭은 '/'로 구분되고 약어화된 메트릭 이름과 값으로 구성된다.
  • 기본(Base) 메트릭은 필수이며, 위협(Threat), 환경(Environmental), 보충(Supplemental) 메트릭은 선택사항이다.
  • 벡터 문자열은 정해진 순서를 따라야 하며, 같은 메트릭을 중복해서 포함할 수 없다.
  • 메트릭그룹별로 다양한 메트릭이 있으며, 각 메트릭은 고유한 약어와 가능한 값들을 가진다.

3.5. CVSS v4.0 벡터 문자열 예시와 유효성

  • CVSSv4.0 벡터 문자열은 취약점의 특성을 나타내는 메트릭 값들의 조합이다.
  • 유효한 벡터 문자열예시로는 기본 메트릭만 포함된 것과 위협 메트릭(E:A)이 추가된 것이 있다.
  • CVSS-BT, CVSS-BE, CVSS-B와 보충 메트릭등 다양한 조합의 유효한 벡터 문자열 예시가 제시되었다.
  • 유효하지 않은 벡터 문자열의 예로는 잘못된 메트릭 값, 중복 정의된 메트릭, 잘못된 약어 사용, 접두사 누락, 필수 메트릭누락, 고정 순서 위반 등이 있다.
  • CVSSv4.0 점수 계산 방법론은 문서의 하위 섹션에서 설명된다.

4. 🧮 CVSS v4.0의 새로운 점수 체계 개발 과정

  • CVSSv4.0의 점수 체계는 270개의 서로 다른 동등성 집합으로 1500만 개의 CVSS-BTE 벡터를 분류하는 것으로 시작했다.
  • 전문가들의 의견을 수렴하여 각 동등성 집합을 대표하는 벡터들을 비교하고, 이를 바탕으로 최소 심각도부터 최대 심각도까지의 벡터 순서를 계산했다.
  • CVSSv3.x와의 역호환성을 고려하여 정성적 심각도점수의 경계를 결정하고, 각 심각도구간 내에서 가용한 점수로 벡터들을 압축했다.
  • 동등한 벡터 집합 내에서 메트릭 값 변경 시 점수 변화가 발생하도록 작은 점수 수정 요소를 도입했다.
  • 새로운 점수 계산 방식에 대한 추가 정보는 CVSSv4.0 사용자 가이드의 2.5절에서 확인할 수 있다.

4.1. CVSS v4.0 새로운 채점 시스템 개발 과정

  • CVSSv4.0의 채점 시스템은 1500만 개의 CVSS-BTE 벡터를 270개의 서로 다른 동등성 집합으로 분류하는 것으로 시작했다.
  • 전문가들은 각 동등성 집합을 대표하는 벡터들을 비교하고, 이를 바탕으로 최소 심각도부터 최대 심각도까지의 벡터 순서를 계산했다.
  • CVSSv3.x와의 역호환성을 고려하여, 전문가 의견을 통해 정성적 심각도점수의 경계를 나타내는 벡터 동등성 집합을 결정했다.
  • 각 정성적 심각도구간 내에서 벡터 동등성 집합을 압축하고, 벡터 내 지표 값 변경 시 점수 변화를 반영하는 소규모 점수 수정 요인을 생성했다.
  • CVSSv4.0에서는 MacroVector라는 개념을 도입하여, 비슷한 정성적 심각도를 가진 CVSS벡터들을 클러스터링하고 보간법을 통해 각 벡터의 점수를 정의한다.

4.2. MacroVector 정의를 위한 메트릭 하위 그룹

  • CVSSv4.0에서는 MacroVector를 정의하기 위해 6개의 예비 메트릭 하위 그룹(EQ1-EQ6)을 설정했다.
  • 각 메트릭하위 그룹은 2-3개의 심각도 수준을 가지며, 0이 가장 심각하고 1 또는 2가 가장 덜 심각한 수준이다.
  • EQ3(VC/VI/VA)와 EQ6(VC/VI/VA+CR/CI/CA)는 독립적이지 않아 함께 고려되어야 하며, 이들의 조합으로 5개 수준이 결정된다.
  • MacroVector의 최고 심각도 벡터는 해당 MacroVector의 조건을 만족하면서 다른 벡터보다 적어도 하나의 메트릭에서 더 높은 심각도를 가진 벡터이다.
  • 하나의 MacroVector는 여러 개의 최고 심각도벡터와 최저 심각도벡터를 가질 수 있으며, 예를 들어 EQ1 수준 1의 MacroVector는 AV:A/PR:N/UI:N, AV:N/PR:L/UI:N, AV:N/PR:N:/UI:P를 최고 심각도벡터로 갖는다.

4.3. CVSS v4.0의 MacroVector 제약 조건 및 최고 심각도 벡터

  • MacroVector는 EQ1부터 EQ6까지의 하위 그룹으로 나뉘며, 각 그룹은 특정 제약 조건과 최고 심각도 벡터를 가진다.
  • EQ1은 공격 벡터(AV), 필요 권한(PR), 사용자 상호작용(UI)을 다루며, 네트워크 접근성과 권한 요구 수준에 따라 0에서 2까지의 레벨로 구분된다.
  • EQ2는 공격 복잡도(AC)와 공격 요구사항(AT)을, EQ3은 기밀성(VC), 무결성(VI), 가용성(VA) 영향을 평가한다.
  • EQ4는 보안 요구사항(SC, SI, SA)을, EQ5는 취약점 악용 가능성(E)을 다루며, EQ6는 기밀성(CR), 무결성(IR), 가용성(AR) 요구사항과 관련 영향을 결합하여 평가한다.
  • 일부 메트릭이 수정되지 않은 경우(X로 표시), 해당 메트릭은 기본값 또는 최악의 경우로 간주되어 평가된다.

4.4. 심각도 거리와 MacroVector 깊이의 개념

  • 심각도 거리는 두 벡터 간 개별 메트릭의 연속적인 단계별 변화 횟수로, 한 벡터를 다른 벡터로 변환하는 데 필요한 변화를 의미한다.
  • 예를 들어, VC:H/VI:H/VA:H 벡터는 VC:H/VI:L/VA:N 벡터와 심각도거리가 3이며, 이는 단계별 변화를 통해 확인할 수 있다.
  • MacroVector의 깊이는 해당 MacroVector 내에서 가장 높은 심각도벡터와 가장 낮은 심각도벡터 사이의 최대 심각도거리를 나타낸다.
  • MacroVector의 깊이 개념은 그래픽 시각화를 통해 더 잘 이해할 수 있으며, EQ3=2인 경우를 예로 들어 설명할 수 있다.
  • 예시로 제시된 그림은 VC:L/VI:L/VA:L(최고 심각도)부터 VC:N/VI:N/VA:N(최저 심각도)까지의 모든 메트릭값을 보여주며, 이는 MacroVector의 깊이를 시각적으로 표현한 것이다.

4.5. MacroVector 내 점수 계산 알고리즘

  • MacroVector의 최고 심각도 벡터는 GitHub의 CVSSv4.0 계산기 참조 구현에 있는 cvss_lookup.js 파일의 점수를 할당받는다.
  • MacroVector 내 벡터의 점수는 해당 MacroVector의 최고 심각도벡터 점수에서 하위 MacroVector와의 평균 비례 거리를 뺀 값이다.
  • 각 EQ에 대해 현재 MacroVector와 하위 MacroVector 간의 최대 점수 차이를 계산하고, 벡터의 심각도거리와 MacroVector 깊이를 고려하여 비례 거리를 산출한다.
  • 계산된 비례 거리의 평균을 구한 후, MacroVector 점수에서 이를 뺀 값을 해당 벡터의 최종 점수로 결정하며, 소수점 첫째 자리까지 반올림한다.
  • 모든 MacroVector와 관련 점수의 전체 목록은 GitHub의 CVSSv4.0 계산기 참조 구현 내 cvss_lookup.js 파일에서 확인할 수 있다.



728x90
반응형