Skip to main content
← All vulnerabilities
CVE-2026-48708GO-2026-5216GHSA-7FQ5-7WR8-RJWJ

OliveTin has a Concurrent Template Parsing Race Condition which Leads to Cross-Request Command Contamination

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 3000.13.0, 0.0.0-20260521225117-d74da9314005
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: total

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • OliveTin OliveTin

    fixed in 3000.13.0

  • github.com/OliveTin/OliveTinGo

    fixed in 0.0.0-20260521225117-d74da9314005

References 3

GitHub · OliveTin/OliveTin