Skip to main content

OliveTin CVE-2026-48708

| EUVDEUVD-2026-36906 HIGH
Race Condition (CWE-362)
2026-06-15 GitHub_M GHSA-7fq5-7wr8-rjwj
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate to OliveTin web UI
  2. Delivery
    Identify target privileged action
  3. Exploit
    Spam concurrent ExecRequests
  4. Execution
    Win Parse/Execute race
  5. Persist
    Privileged template executed under attacker context
  6. Impact
    Arbitrary command runs as OliveTin process

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Concurrency control, locking
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated account on the OliveTin web interface (PR:L) and at least two action executions happening concurrently - the normal operating mode whenever more than one user, or one user with parallel browser tabs, triggers actions. The race window is bounded by the time between tpl.Parse and t.Execute, so AC:H reflects that the attacker cannot deterministically force a win and must rely on scheduling or repeated attempts. No special non-default configuration, plugin, or platform is required: the shared package-level tpl variable is in the default code path of every affected version. Single-user deployments with no concurrent action invocations are not exploitable in practice.

Impact

The CVSS:3.1 vector AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H scores 7.5 (High) and matches the threat model: an authenticated low-privileged web user, network-reachable, with high attack complexity because exploitation depends on goroutine scheduling. EPSS data is not provided and the CVE is not in CISA KEV, with no public exploit identified at time of analysis, so this is not a hair-on-fire priority. However, the race triggers under normal concurrent use rather than a contrived setup, so any multi-user OliveTin deployment is realistically affected - privilege boundaries between users of different action sets can collapse non-deterministically, which is more severe than the typical 'targeted race condition' framing. Operators running single-user instances behind trusted networks face limited real-world risk; operators using OliveTin as a shared command-runner for multiple roles should treat this as a priority patch.

Exploit ScenarioDerived

Two authenticated OliveTin users - or one user triggering two actions in rapid succession - submit ExecRequests that race inside the shared template parser; the second Parse overwrites the first action's template tree just before Execute runs, causing user A's request to execute user B's parameterized shell command (or to panic the goroutine). An attacker with a low-privilege account could repeatedly invoke a benign action while a privileged user is known to be active, hoping to have their template tree adopted by the privileged user's Execute path and run an elevated command. No public exploit is identified at time of analysis, and exploitation is non-deterministic due to goroutine scheduling.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 15, 2026

Concurrent action execution in OliveTin versions 3000.0.0 and prior triggers a race condition in a shared text/template.Template instance, enabling cross-user command contamination, runtime panics, and execution of unintended commands. Authenticated users of the OliveTin web interface can exploit this by issuing parallel ExecRequests; no public exploit is identified at time of analysis, but the bug manifests during normal multi-user operation. The vendor patched the issue in version 3000.13.0.

RemediationAI

Vendor-released patch: upgrade to OliveTin 3000.13.0 or later (commit d74da9314005954dd49fa20dabf272247bc76519, advisory GHSA-7fq5-7wr8-rjwj at https://github.com/OliveTin/OliveTin/security/advisories/GHSA-7fq5-7wr8-rjwj); container users should pull ghcr.io/olivetin/olivetin:3000.13.0 or docker.io/jamesread/olivetin:3000.13.0. The release notes confirm no breaking changes between the prior release and 3000.13.0, so the upgrade is low-risk. If immediate upgrade is impossible, restrict access to the OliveTin web interface to a single trusted operator (eliminating concurrent ExecRequests removes the race window) and place the instance behind an authenticating reverse proxy that serializes requests - both controls degrade the multi-user UX OliveTin is designed for, so they are stopgaps rather than long-term fixes. Auditing recently executed actions for anomalous commands is advisable since the race can silently substitute one user's command for another.

Affected VersionsENISA

OliveTin < 3000.13.0

Affected Packages

go github.com/olivetin/olivetin fix: 0.0.0-20260521225117-d74da9314005
euvd olivetin fix: 3000.13.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

OliveTin is a self-hosted Go application that exposes a web UI for triggering predefined shell commands. The vulnerable code path lives in service/internal/tpl/templates.go, where a package-level tpl variable holds a single text/template.Template that is mutated by tpl.Parse(source) and then read by t.Execute() without any mutex or per-request template clone. Each incoming ExecRequest spawns its own goroutine, so the shared mutable parse tree is concurrently written and read - the textbook CWE-362 concurrent execution using shared resource with improper synchronization (race condition). When two goroutines interleave, one action's parsed template is executed by another action's Execute call, producing cross-user command contamination.

Know when Olivetin gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 7.5 HIGH

Network-reachable web UI requires a low-privileged authenticated account (PR:L, AV:N); race timing makes exploitation non-deterministic (AC:H); cross-user command execution yields full C/I/A impact.

3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE HIGH

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

1
Patch available
Jun 15, 2026 - 22:32 EUVD

DescriptionCVE.org

OliveTin gives access to predefined shell commands from a web interface. In versions 3000.0.0 and prior, the template engine uses a single shared text/template.Template instance (tpl package-level variable in service/internal/tpl/templates.go) across all goroutines. Every action execution calls tpl.Parse(source) followed by t.Execute() on this shared instance with no synchronization. When two or more actions execute concurrently (which is the normal case - each ExecRequest spawns a goroutine), a race condition occurs: one goroutine's Parse overwrites the template tree while another goroutine is calling Execute, causing cross-user command contamination, Go runtime panic, and incorrect command execution. This issue has been resolved in version 3000.13.0.

Executive ViewAI

Why It Matters

OliveTin versions 3000.0.0 and earlier contain a race condition enabling users of the OliveTin web interface to inadvertently trigger command contamination with unintended actions. No public exploit identified at time of analysis. Organizations using OliveTin for infrastructure automation face operational disruption and unauthorized command execution risks when multiple users operate the system concurrently.

Business Impact: High
Compensating Controls

Apply vendor patch: upgrade OliveTin to version 3000.13.0 or later.

Threat Intelligence Overview

EPSS Score
0.3%
Top 73% exploitable
Threat Intel
1
1 sources
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

58
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Race conditions occur when multiple concurrent requests exploit the brief time gap between checking a condition and acting upon it (TOCTOU - Time of Check, Time of Use).

CVE-2026-27626 CRITICAL POC
9.9 Feb 25

OS command injection in OliveTin web shell interface through version 3000.10.0. OliveTin provides web-based access to pr

CVE-2026-30223 HIGH POC
8.8 Mar 06

OliveTin gives access to predefined shell commands from a web interface. [CVSS 8.8 HIGH]

CVE-2026-31817 HIGH POC
8.5 Mar 10

Arbitrary file write in OliveTin prior to 3000.11.2 allows authenticated attackers to write files to arbitrary filesyste

CVE-2026-67437 HIGH POC
7.5 Jul 29

Memory-exhaustion denial of service in OliveTin (versions 3000.0.0 through 3000.16.x) allows a remote unauthenticated at

CVE-2026-28342 HIGH POC
7.5 Mar 05

OliveTin versions prior to 3000.10.2 are vulnerable to unauthenticated denial of service through the PasswordHash API en

CVE-2026-28789 HIGH POC
7.5 Mar 05

OliveTin versions prior to 3000.10.3 are vulnerable to unauthenticated denial-of-service attacks when OAuth2 authenticat

CVE-2026-28790 HIGH POC
7.5 Mar 05

OliveTin versions prior to 3000.11.0 suffer from broken access control allowing unauthenticated users to invoke the Kill

CVE-2025-50946 MEDIUM POC
6.5 Aug 13

OS Command Injection in Olivetin 2025.4.22 Custom Themes via the ParseRequestURI function in service/internal/executor/a

CVE-2026-67438 MEDIUM POC
6.6 Jul 29

OS command injection in OliveTin versions 3000.2.0 through 3000.16.x allows an authenticated user to execute arbitrary s

CVE-2026-30233 MEDIUM POC
6.5 Mar 06

OliveTin prior to version 3000.11.1 fails to enforce view permission checks on dashboard and API endpoints, allowing aut

CVE-2026-30224 MEDIUM POC
5.4 Mar 06

OliveTin prior to version 3000.11.1 fails to invalidate server-side sessions upon user logout, allowing attackers with a

CVE-2026-30225 MEDIUM POC
5.3 Mar 06

OliveTin versions prior to 3000.11.1 contain an authentication bypass in RestartAction that allows authenticated users t

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Server 16.1 Affected
SUSE Linux Enterprise Server for SAP applications 16.1 Affected
SUSE Linux Enterprise Module for Package Hub 15 SP5 Affected
SUSE Linux Enterprise Module for Package Hub 15 SP6 Affected
openSUSE Leap 15.5 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy