CVE-2026-43981

Algernon: Race Condition in handle() shared LState

HIGH
8.2
CVSS Score
Published: May 26, 2026 at 04:31 PM UTC
Updated: July 24, 2026 at 11:23 AM UTC
1 product affected across 1 vendorAlgernon

Using algernon by xyproto?

Get instant alerts when new vulnerabilities affect algernon - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH8.2
Exploit prediction
EPSS 0.2%
SSVC
No known exploit

Description

Algernon is a small self-contained pure-Go web server. Prior to 1.17.6, in engine/luahandler.go, the sync.RWMutex protecting LoadCommonFunctions is released before L.Push() and L.PCall() execute. Since gopher-lua's LState is explicitly not goroutine-safe, concurrent requests race on the shared state causing Lua VM corruption. The Go race detector confirms this immediately under modest concurrency (ab -n 1000 -c 100). This vulnerability is fixed in 1.17.6.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v < 1.17.6
Affected range stops below 1.17.6, so it looks safe — our inference, not a vendor statement

Remediation

No guide yet

No remediation guidance has been written for this CVE yet, and no fixed version or vendor advisory is recorded against it.

References (2)

SSVC — Action Prioritization

SSVCNo known exploitNot automatableTotal impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

8.2HIGHGitHub_M
Vector?

Quick Info

StatusDEFERRED
CWE
CWE-362

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card