flawopen.com/Teardowns/cve-2026-76504-cisco-sdwan-api-authentication-bypass
CVE-2026-76504: bypass autentikasi pada Cisco SD-WAN Manager
CVE-2026-76504 memungkinkan penyerang jarak jauh tanpa autentikasi melewati aturan autentikasi API pada Cisco Catalyst SD-WAN Manager dan memperoleh akses API sebagai administrator. Cisco mengonfirmasi eksploitasi aktif; tingkatkan ke versi perbaikan untuk cabang Anda dan selidiki Manager sebelum menyatakan sistem aman.[1], [5]
Bayangkan pintu dengan pemeriksaan keamanan yang hanya mengenali satu cara penulisan alamat. Penyerang mengubah penulisannya dengan URI encoding; satu bagian sistem tetap mengenali pintu yang sama, tetapi aturan keamanan tidak. Cisco menyatakan perbedaan ini memungkinkan permintaan melewati autentikasi dan mengakses API sebagai administrator. Perbaikannya harus menangani alamat secara konsisten dan menerapkan aturan akses yang sama; bagi operator, solusi yang didukung Cisco adalah peningkatan perangkat lunak.[1]
Konsep Kunci & Istilah
URI encoding- Cara merepresentasikan karakter dalam jalur URL dengan byte berkode persen. Semua lapisan harus mendekode dan membandingkan jalur secara konsisten.[1], [7]
Bypass autentikasi- Permintaan mencapai fungsi yang dilindungi tanpa sistem menetapkan identitas pemanggil sebagaimana diwajibkan.[1]
Aturan sesi API- Aturan Manager untuk memastikan permintaan API memiliki sesi terautentikasi yang valid sebelum mencapai endpoint.[1]
Pemetaan kerangka kerja
- Referensi CWE untuk kelemahan yang dijelaskan dalam panduan ini: CWE-177
- OWASP Top 10:2025 — A01:2025 Broken Access Control
- CISA KEV — ditambahkan 2026-09-30 — CVE-2026-76504
Analisis Akar Masalah (Root Cause)
Cisco mengaitkan CVE-2026-76504 dengan penanganan URI encoding yang tidak tepat pada permintaan HTTP di autentikasi sesi API Catalyst SD-WAN Manager. Permintaan yang dibuat khusus dapat melewati aturan autentikasi untuk membatasi endpoint API tertentu dan memperoleh akses sebagai administrator. Cisco memberi skor CVSS 3.1 9,8 Critical, menyatakan produk terdampak apa pun konfigurasi sistemnya, dan melaporkan bahwa PSIRT mengetahui eksploitasi aktif pada September 2026. Advisory menampilkan permintaan URI-encoded j_security_check sebagai contoh IOC dan secara tegas memperingatkan bahwa satu karakter URI yang dikodekan saja dapat digunakan; jangan anggap contoh itu sebagai signature deteksi lengkap. Cisco tidak menerbitkan kode sumber rentan atau diff patch, sehingga pasangan kode di bawah ini hanya ilustrasi desain otorisasi, bukan kode Cisco atau reproduksi. Cisco mencantumkan versi perbaikan per cabang dan menyatakan tidak ada workaround yang sepenuhnya mengatasi kerentanan. Pembatasan jaringan dan shield Live Protect adalah mitigasi sementara; shield dapat mengganggu login yang sah dan tidak menggantikan peningkatan versi.[1], [5]
Rilis perbaikan CVE-2026-76504 berdasarkan deployment
| Deployment / lini | Rilis yang diperbaiki | Tindakan yang diperlukan |
|---|---|---|
| Rilis on-prem sebelum 20.9 | Pindah ke lini yang didukung dengan rilis perbaikan yang tersedia. | Migrasikan; jangan tetap memakai lini lama yang tidak didukung. |
| Lini on-prem 20.9 | 20.9.10.1 | Tingkatkan setiap Manager ke versi ini atau versi lebih baru dalam lini yang didukung. |
| Lini on-prem 20.12 | 20.12.8.2 | Tingkatkan setiap Manager ke versi ini atau versi lebih baru dalam lini yang didukung. |
| Lini on-prem 20.15 | 20.15.6.1 | Tingkatkan setiap Manager ke versi ini atau versi lebih baru dalam lini yang didukung. |
| Lini on-prem 20.18 | 20.18.4.1 | Tingkatkan setiap Manager ke versi ini atau versi lebih baru dalam lini yang didukung. |
| Lini on-prem 26.1 | 26.1.2.1 | Tingkatkan setiap Manager ke versi ini atau versi lebih baru dalam lini yang didukung. |
| Lini on-prem 26.2 | 26.2.1 | Tingkatkan setiap Manager ke versi ini atau versi lebih baru dalam lini yang didukung. |
| Cisco SD-WAN Cloud (Cisco Managed) | 20.15.605 atau lebih baru; Cisco menyatakan layanan hosting sudah diperbaiki. | Pastikan deployment adalah layanan terkelola; pelanggan tidak perlu bertindak untuk rollout layanan hosting ini. |
Alur Serangan Langkah demi Langkah
Permintaan jarak jauh mencapai API Manager
Akun atau interaksi pengguna tidak diperlukan. Paparan internet meningkatkan risiko; vendor menyatakan konfigurasi tidak memengaruhi status terdampak.[1]
Jalur berkode URI melewati aturan autentikasi
Cisco mengidentifikasi penanganan URI encoding yang tidak konsisten dalam autentikasi sesi API. Materi publik tidak mengungkap implementasi rentan.[1]
Kode Sumber: Rentan vs Aman
Cisco tidak menerbitkan source code rentan atau diff patch. Contoh Python ini menunjukkan aturan desain umum, bukan kode Cisco: routing dan otorisasi harus memakai target permintaan kanonis yang sama dan tervalidasi, serta endpoint terlindungi harus mensyaratkan identitas terautentikasi. Gunakan semantik normalisasi router/framework yang terdokumentasi; jangan menambahkan decoding ad hoc atau decoding ganda. Perbaikan yang didukung untuk CVE-2026-76504 adalah peningkatan ke versi perbaikan cabang yang ditentukan Cisco.[1], [7]
Cuplikan sumber: Contoh ilustratif Python untuk kanonisasi URI dan batas otorisasi; bukan source code Cisco
from urllib.parse import unquote, urlsplit
def dispatch(raw_target, session, routes):
# Satu lapisan memeriksa jalur yang masih terenkode.
path_for_auth = urlsplit(raw_target).path
if path_for_auth.startswith("/api/") and session is None:
raise PermissionError("authentication required")
# Lapisan berikutnya mendekode sebelum pencarian rute. Kedua keputusan dapat berbeda.
route_path = unquote(path_for_auth)
return routes[route_path]()
import re
from urllib.parse import unquote, urlsplit
def canonical_path(raw_target):
raw_path = urlsplit(raw_target).path
if re.search(r"%(?![0-9A-Fa-f]{2})", raw_path):
raise ValueError("malformed URI encoding")
path = unquote(raw_path, errors="strict")
if "%" in path or "\\" in path:
raise ValueError("ambiguous path encoding")
if any(part in {".", ".."} for part in path.split("/")):
raise ValueError("path traversal segment")
return path
def dispatch(raw_target, session, routes):
path = canonical_path(raw_target) # Decode and validate exactly once.
route = routes.get(path)
if route is None:
raise LookupError("route not found")
requires_authentication, handler = route
if requires_authentication and session is None:
raise PermissionError("authentication required")
return handler()
Daftar Periksa Penguatan Sistem Rekayasa
- ✓Inventarisasi semua Catalyst SD-WAN Manager, termasuk anggota cluster dan situs pemulihan bencana; catat cabang dan build perangkat lunak yang tepat.[1], [2]
- ✓Setiap Manager on-premises harus ditingkatkan ke versi perbaikan pertama yang ditetapkan Cisco dalam rilis mayor saat ini; jangan beralih ke rilis mayor yang lebih tinggi tanpa arahan eksplisit dari TAC. Rilis sebelum 20.9 harus dimigrasikan ke cabang perbaikan yang didukung dengan mengikuti panduan kompatibilitas Cisco.[1], [2]
- ✓Sebelum peningkatan, kumpulkan file admin-tech dengan Log dan Tech dipilih dari setiap Manager, anggota cluster, dan situs DR; jangan menunggu hasil IOC untuk menerapkan patch.[2]
- ✓Buka kasus Cisco TAC Severity 3 dengan
CVE-2026-76504pada judul dan kirimkan file untuk pemeriksaan IOC; ikuti remediasi TAC jika kompromi ditemukan.[1], [2] - ✓Periksa
serviceproxy-access.logdanvmanage-server.loguntuk permintaanj_security_checkdari alamat tidak dikenal atau tidak sah serta aktivitas tak biasa dari akunviptela-reserved-;%6ahanya contoh, bukan signature lengkap.[1] - ✓Sampai semua Manager ditingkatkan, batasi akses manajemen hanya untuk host tepercaya dan lindungi komponen kontrol di belakang perangkat pemfilteran; ini pengurangan paparan sementara, bukan perbaikan.[1]
- ✓Gunakan shield Live Protect Cisco hanya sebagai perlindungan parsial sementara setelah menilai dampaknya pada login; tetap jadwalkan peningkatan perangkat lunak.[1]
- ✓Untuk Cisco SD-WAN Cloud (Cisco Managed), pastikan layanan melaporkan versi 20.15.605 atau lebih baru; Cisco menyatakan rollout terkelola tidak memerlukan tindakan pelanggan.[1], [2]
Sumber
- Cisco Security Advisory — CVE-2026-76504
- Cisco remediation workflow for the September 2026 SD-WAN advisory
- Cyber Security Agency of Singapore active-exploitation advisory
- Canadian Centre for Cyber Security advisory AV26-978
- CISA Known Exploited Vulnerabilities Catalog — CVE-2026-76504
- NVD record — CVE-2026-76504
- MITRE CWE-177 — Improper Handling of URL Encoding