---
title: "Cara Membaca Vektor CVE - CVSS"
slug: "cara-membaca-vektor-cve"
collection: "notes"
status: "published"
publishedAt: "2026-10-03T15:50:32.128Z"
updatedAt: "2026-10-03T15:50:46.429Z"
canonical: "https://0.0.0.0:3000/notes/cara-membaca-vektor-cve"
---

# Cara Membaca Vektor CVE - CVSS

Sumber diambil dari artikel [https://www.first.org/cvss/v3-1/specification-document?utm\_source=chatgpt.com](https://www.first.org/cvss/v3-1/specification-document?utm_source=chatgpt.com)

![Screenshot 2026-10-03 15:49:45 (image)](https://0.0.0.0:3000/api/media/file/media/b52599ca-image.png)

## 1. Bentuk dasarnya

Contoh:

`CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H`

Strukturnya:

CVSS:3.1
   │
   └── versi CVSS

AV:N
AC:L
PR:N
UI:N
S:U
C:H
I:H
`A:H`

Untuk **CVSS v3.1 Base Score**, selalu ada 8 metric:

`AV / AC / PR / UI / S / C / I / A`

FIRST juga menyediakan calculator resmi untuk v3.1.

---

# 2. Bagian pertama: Exploitability

Empat metric pertama menjawab:

> **"Seberapa mudah vulnerability ini dieksploitasi?"**

AV
AC
PR
`UI`

---

## AV — Attack Vector

**Dari mana attacker bisa melakukan serangan?**

| Code | Meaning | Gampangnya |
| --- | --- | --- |
| `N` | Network | lewat network/Internet |
| `A` | Adjacent | harus berada di jaringan yang berdekatan |
| `L` | Local | harus punya akses lokal |
| `P` | Physical | harus menyentuh/manipulasi perangkat secara fisik |

Contoh:

`AV:N`

berarti vulnerability dapat dieksploitasi melalui network.

Yang menarik: `Network` tidak harus berarti "Internet publik". Menurut spesifikasi, serangan dari jaringan internal juga bisa tetap `N`.

Urutan severity:

`N > A > L > P`

Semakin remote aksesnya, semakin tinggi kontribusinya terhadap score.

---

# 3. AC — Attack Complexity

Pertanyaannya:

> **Apakah ada kondisi khusus di luar kendali attacker yang harus terpenuhi?**

| Code | Meaning |
| --- | --- |
| `L` | Low |
| `H` | High |

### `AC:L`

Eksploitasi relatif repeatable.

Misalnya:

`attacker → crafted request → vulnerability`

Tidak perlu race condition atau keadaan target yang sangat spesifik.

### `AC:H`

Ada kondisi eksternal yang harus terjadi.

Contohnya secara konseptual:

attacker
   ↓
harus menunggu kondisi tertentu
   ↓
race condition
   ↓
`exploit`

atau attacker harus memperoleh informasi tertentu tentang environment terlebih dahulu.

**Penting:** kebutuhan korban untuk mengklik sesuatu **bukan AC:H**. Itu masuk `UI:R`.

---

# 4. PR — Privileges Required

Pertanyaannya:

> **Sebelum exploit, attacker harus punya akses apa?**

| Code | Meaning | Contoh sederhana |
| --- | --- | --- |
| `N` | None | tidak perlu login |
| `L` | Low | perlu akun user biasa |
| `H` | High | perlu privilege tinggi/admin |

### `PR:N`

Internet
   ↓
attacker
   ↓
`vulnerable endpoint`

Tidak perlu authentication.

### `PR:L`

Internet
   ↓
login sebagai ordinary user
   ↓
`exploit`

### `PR:H`

login/admin privilege
        ↓
      `exploit`

FIRST mendefinisikan `PR` berdasarkan privilege yang diperlukan **sebelum successful exploitation**, bukan privilege yang mungkin diperoleh setelah exploit.

---

# 5. UI — User Interaction

Ini salah satu yang sering salah dibaca.

Pertanyaannya:

> **Apakah orang lain selain attacker harus melakukan sesuatu agar exploit berhasil?**

| Code | Meaning |
| --- | --- |
| `N` | None |
| `R` | Required |

### `UI:N`

attacker
   ↓
exploit
   ↓
`success`

Tidak ada korban yang harus melakukan tindakan.

### `UI:R`

attacker
   ↓
malicious file/link
   ↓
victim clicks/opens/does something
   ↓
`exploit`

Misalnya vulnerability pada document parser yang baru ter-trigger ketika user membuka dokumen malicious.

**Ini yang terjadi pada contoh Ghidra yang kita bahas sebelumnya:** adanya interaksi analyst membuat `UI:R`, bukan `UI:N`. Definisi resmi CVSS memang membedakan kebutuhan tindakan user ini dari Attack Complexity.

---

# 6. S — Scope

Nah, ini bagian yang sedikit lebih susah.

Pertanyaannya:

> **Apakah exploit keluar dari security authority/component yang awalnya vulnerable?**

Ada dua:

| Code | Meaning |
| --- | --- |
| `U` | Unchanged |
| `C` | Changed |

### S:U

Impact tetap berada pada security scope yang sama.

Vulnerable App
      ↓
impact
      ↓
`Vulnerable App`

### S:C

Exploit menembus security boundary dan memengaruhi component dengan security authority berbeda.

Component A
   │
   │ exploit
   ▼
`Component B`

Contoh konseptual:

sandboxed application
        ↓
sandbox escape
        ↓
`host operating system`

Ini bisa menjadi `Scope: Changed`, karena dampaknya melewati security boundary. FIRST menjelaskan Scope sebagai perubahan security authority/scope akibat vulnerability.

**Jangan menyamakan `S:C` dengan "RCE".**

RCE **bisa** `S:U` atau `S:C`, tergantung security boundary-nya.

---

# 7. Tiga metric terakhir: Impact

Sekarang pertanyaannya berubah:

> **"Kalau exploit berhasil, seberapa besar dampaknya?"**

Ada:

C
I
`A`

---

# 8. C — Confidentiality

Pertanyaannya:

> **Apakah attacker bisa mendapatkan informasi yang seharusnya tidak boleh dia akses?**

| Code | Meaning |
| --- | --- |
| `N` | None |
| `L` | Low |
| `H` | High |

### C:N

Tidak ada data rahasia yang terekspos.

### C:L

Sebagian informasi terbuka, tetapi dampaknya terbatas.

### C:H

Kehilangan confidentiality besar/total.

Misalnya vulnerability memungkinkan attacker mendapatkan credential administrator atau private key. FIRST memberikan contoh semacam ini sebagai high confidentiality impact.

---

# 9. I — Integrity

Pertanyaannya:

> **Apakah attacker bisa mengubah data/sistem?**

| Code | Meaning |
| --- | --- |
| `N` | None |
| `L` | Low |
| `H` | High |

Contoh:

`I:N`

Attacker mungkin bisa membaca data, tetapi tidak mengubahnya.

Sedangkan:

`I:H`

misalnya attacker dapat memodifikasi file/data yang dilindungi secara luas.

---

# 10. A — Availability

Pertanyaannya:

> **Apakah attacker bisa mengganggu operasi service/system?**

| Code | Meaning |
| --- | --- |
| `N` | None |
| `L` | Low |
| `H` | High |

Misalnya:

`A:N`

Service tetap berfungsi.

Sedangkan:

`A:H`

attacker dapat menyebabkan service sepenuhnya tidak tersedia atau mengalami dampak serius terhadap availability.

**Catatan penting:** Availability bukan sekadar "data hilang". CVSS membedakan dampak terhadap **operasi component/service** dari confidentiality/integrity data.

---

# 11. Sekarang baca vector contohmu

Kita punya:

`CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H`

Pecah:

`AV:N`

→ bisa diserang melalui network

`AC:L`

→ tidak ada kondisi kompleks yang diperlukan

`PR:N`

→ tidak perlu privilege/login

`UI:N`

→ tidak perlu korban melakukan sesuatu

`S:U`

→ impact tetap dalam security scope yang sama

`C:H`

→ confidentiality impact tinggi

`I:H`

→ integrity impact tinggi

`A:H`

→ availability impact tinggi

Jadi secara mental kamu bisa membacanya sebagai:

> **"Remote, simple, unauthenticated, no user interaction → high impact terhadap C/I/A."**

Itu adalah pola yang sangat serius dari sisi CVSS.

---

# 12. Base vs Temporal vs Environmental

CVSS v3.1 sebenarnya punya **tiga kelompok metric**.

### Base

Karakteristik intrinsik vulnerability:

AV
AC
PR
UI
S
C
I
`A`

Biasanya inilah yang kamu lihat pada vector CVE.

---

### Temporal

Hal-hal yang berubah seiring waktu:

E   = Exploit Code Maturity
RL  = Remediation Level
`RC  = Report Confidence`

Contoh:

`/E:P`

`P` = Proof-of-Concept.

Atau:

`/E:F`

`F` = Functional exploit.

Metric Temporal bersifat opsional.

---

### Environmental

Dampak terhadap environment tertentu:

CR
IR
AR

MAV
MAC
MPR
MUI
MS
MC
MI
`MA`

`M` berarti **Modified**.

Contohnya:

`MAV:N`

berarti environment tertentu memiliki Attack Vector Network meskipun Base metric-nya mungkin berbeda.

Environmental metrics dipakai karena organisasi berbeda bisa memiliki tingkat risiko yang berbeda untuk vulnerability yang sama.

---

# 13. Cara cepat menghafalnya

Aku biasanya menyarankan hafal dalam dua kelompok:

EXPLOITABILITY
────────────────
AV  = dari mana?
AC  = seberapa sulit?
PR  = perlu akses apa?
UI  = perlu korban?

IMPACT
────────────────
S   = keluar boundary?
C   = data bocor?
I   = data berubah?
`A   = service terganggu?`

Atau:

AV → WHERE
AC → HOW HARD
PR → ACCESS
UI → VICTIM

S  → BOUNDARY
C  → READ
I  → WRITE
`A  → BREAK`

Ini jauh lebih mudah daripada menghafalkan kepanjangan satu-satu.

---

# 14. Urutan praktis saat membaca CVE

Kalau kamu menemukan:

`CVSS:3.1/AV:X/AC:X/PR:X/UI:X/S:X/C:X/I:X/A:X`

**jangan langsung lihat angka score.**

Baca dengan urutan:

1. AV
   ↓
   Bisa dari mana?

2. AC
   ↓
   Ada kondisi khusus?

3. PR
   ↓
   Harus login?

4. UI
   ↓
   Korban harus melakukan sesuatu?

5. S
   ↓
   Menyeberangi security boundary?

6. C
   ↓
   Apa yang bisa dibaca?

7. I
   ↓
   Apa yang bisa diubah?

8. A
   ↓
   `Apa yang bisa dibuat tidak tersedia?`

Setelah itu baru lihat **Base Score**.

---

## 15. Reference resmi

Kalau kamu mau menjadikannya referensi belajar/menulis laporan, tiga halaman FIRST ini yang paling berguna:

- **CVSS v3.1 Specification** — definisi resmi semua metric dan formula. [CVSS v3.1 Specification Document](https://www.first.org/cvss/v3-1/specification-document?utm_source=chatgpt.com)
- **CVSS v3.1 User Guide** — penjelasan dan contoh scoring yang lebih konseptual. [CVSS v3.1 User Guide](https://www.first.org/cvss/v3.1/user-guide?utm_source=chatgpt.com)
- **CVSS v3.1 Calculator** — masukkan vector dan lihat score/metric-nya. [CVSS v3.1 Calculator](https://www.first.org/cvss/calculator/3.1?utm_source=chatgpt.com)
