CVE Listesine Dön
CVE-2026-31862

@siteboon/claude-code-ui is Vulnerable to Command Injection via Multiple Parameters

CVSS Skor

9.1

EPSS İhtimal

%0.5

Risk Skoru

0.0

Yayın

7 ay önce

Yama durumu henüz doğrulanamadı

Resmî kaynaklarda yeterli kanıt bulunamadı. Bu sonuç “yama yok” anlamına gelmez.

Envanterimdeki Etkisi

Yalnızca hesabınıza eklediğiniz kişisel ürünler değerlendirilir; kurumsal envanter burada görünmez.

Oturum kontrol ediliyor…

Zafiyet Açıklaması

DayBreach CVE AI Araştırması

CVE-2026-31862 için toplanan üretici, dağıtım, yama ve güvenlik kaynağı kayıtlarını karşılaştırıp kanıt bağlantılı bir açıklama hazırlayalım.

### Summary Multiple Git-related API endpoints use execAsync() with string interpolation of user-controlled parameters (file, branch, message, commit), allowing authenticated attackers to execute arbitrary OS commands. ### Details The claudecodeui application provides Git integration through various API endpoints. These endpoints accept user-controlled parameters such as file paths, branch names, commit messages, and commit hashes, which are directly interpolated into shell command strings passed to execAsync(). The application attempts to escape double quotes in some parameters, but this protection is trivially bypassable using other shell metacharacters such as: Command substitution: $(command) or \`command\` Command chaining: ;, &&, || Newlines and other control characters ### Affected Endpoints `GET /api/git/diff - file parameter` `GET /api/git/status - file parameter` `POST /api/git/commit - files array and message parameter` `POST /api/git/checkout - branch parameter` `POST /api/git/create-branch - branch parameter` `GET /api/git/commits - commit hash parameter` `GET /api/git/commit-diff - commit parameter` ### Vulnerable Code File: server/routes/git.js ``` // Line 205 - git status with file parameter const { stdout: statusOutput } = await execAsync( `git status --porcelain "${file}"`, // INJECTION via file { cwd: projectPath } ); ``` ``` // Lines 375-379 - git commit with files array and message for (const file of files) { await execAsync(`git add "${file}"`, { cwd: projectPath }); // INJECTION via files[] } const { stdout } = await execAsync( `git commit -m "${message.replace(/"/g, '\\"')}"`, // INJECTION via message (bypass with $()) { cwd: projectPath } ); ``` ``` // Lines 541-543 - git show with commit parameter (no quotes!) const { stdout } = await execAsync( `git show ${commit}`, // INJECTION via commit { cwd: projectPath } ); ``` ### Impact - Remote Code Execution as the Node.js process user - Full server compromise - Data exfiltration - Supply chain attacks - modify committed code to inject malware --- ### Fix **Commit:** siteboon/claudecodeui@55567f4 #### Root cause remediation All vulnerable `execAsync()` calls have been replaced with the existing `spawnAsync()` helper (which uses `child_process.spawn` with `shell: false`). Arguments are passed as an array directly to the OS — shell metacharacters in user input are inert. **Endpoints patched in `server/routes/git.js`:** - `GET /api/git/diff` — `file` (4 calls) - `GET /api/git/file-with-diff` — `file` (3 calls) - `POST /api/git/commit` — `files[]`, `message` - `POST /api/git/checkout` — `branch` - `POST /api/git/create-branch` — `branch` - `GET /api/git/commits` — `commit.hash` - `GET /api/git/commit-diff` — `commit` - `POST /api/git/generate-commit-message` — `file` - `POST /api/git/discard` — `file` (3 calls) - `POST /api/git/delete-untracked` — `file` - `POST /api/git/publish` — `branch` A strict allowlist regex (`/^[0-9a-f]{4,64}$/i`) was also added to validate the `commit` parameter in `/api/git/commit-diff` before it reaches the git process. #### Before / After ```js // BEFORE — shell interprets the string, injection possible const { stdout } = await execAsync(`git show ${commit}`, { cwd: projectPath }); // AFTER — no shell, args passed directly to the process const { stdout } = await spawnAsync('git', ['show', commit], { cwd: projectPath }); ```

IMPACT — Etkilenen Ürünler ve Yazılımlar

Affected Products

The following products are affected by CVE-2026-31862 vulnerability. Even if our threat engine is aware of the exact versions of the products that are affected, the information is represented below.

IDVENDORPRODUCTACTION
1npm@siteboon/claude-code-ui İncele
Total Affected Vendor: 1|Products: 1

RED HAT CSAF/VEX — Ürün Etki Kontrolü

Red Hat bu CVE için henüz bir CSAF/VEX etki kaydı yayımlamamış. Bu durum “etkilenmiyor” anlamına gelmez.

SCORING — CVSS Çoklu Kaynak Skoru

CVSS Scores

The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and display CVSS scores from various sources for each CVE.

SCOREVERSIONSEVERITYVECTORSOURCE
9.1CVSS 3.x—Vektör yayımlanmadıGitHub Advisory
0.0CVSS 4.0—Vektör yayımlanmadıGitHub Advisory

Yama ve İyileştirme Rehberi (Solution)

Solution & Remediation Advisory

Yama durumu bilinmiyor

İncelenen resmî kaynaklarda yama durumu doğrulanamadı. Bu sonuç “yama yok” anlamına gelmez.

Etkilenen ürün ve sürümü yukarıdaki kaynak kanıtlarıyla doğrulayın.
İnternete açık servislerde erişimi kısıtlayın ve ağ segmentasyonu uygulayın.
Yama doğrulanana kadar üretici bültenini izleyin; bilinmeyen durumu “yama yok” olarak yorumlamayın.
Sunucu günlüklerini ve ağ uçlarını anormal çalıştırma belirtileri için izleyin.

Public exploit ve aktif sömürü durumu

Doğrulanmış exploit istihbaratı

Bu CVE için henüz doğrulanmış public PoC, exploit repository’si veya Metasploit modülü bulunamadı.

Zafiyet Dağılımı ve Saldırı Kalıpları (CWE & CAPEC)

CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2026-31862 is associated with the following CWEs:

Common Attack Pattern Enumeration and Classification (CAPEC)

Common Attack Pattern Enumeration and Classification (CAPEC) stores attack patterns, which are descriptions of the common attributes and approaches employed by adversaries to exploit the CVE-2026-31862 weaknesses.

Saldırı Vektörü ve Erişilebilirlik Karakteristiği

ErişimAğ üzerinden
YetkiYüksek
KullanıcıGerekmiyor

Resmi Kaynaklar ve Danışma Bültenleri

CVSS Vektör Radar Grafiği

9.1 / 10
Attack VectorNetworkComplexityLowPrivilegesHighUser Interact.NoneConfidentialityLowIntegrityNoneAvailabilityHigh

Vulnerability Scoring Details

CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
Attack VectorNetwork (Ağ)
Attack ComplexityLow (Düşük)
Privileges RequiredHigh (Yüksek Yetki)
User InteractionNone (Gerekmiyor)
Confidentiality (Gizlilik)Low (Düşük)
Integrity (Bütünlük)None (Yok)
Availability (Erişilebilirlik)High (Yüksek)

Yama durumu bilinmiyor

İncelenen resmî kaynaklarda yama durumu doğrulanamadı. Bu sonuç “yama yok” anlamına gelmez.

Üreticiyi takip et

N
npm logo
npm

Zafiyet Türü (CWE & CAPEC)

İlgili Benzer Açıklar

Bu açığı API ile alın

Etkilenen ürünler, sürüm aralıkları, istismar durumu ve yama bilgisi tek istekte; ücretsiz anahtarla.

curl -H "x-api-key: $DAYBREACH_API_KEY" \
  "https://api.daybreach.dev/api/v1/intel/cves/CVE-2026-31862"