What’s Vulnerable › Vulnerabilities
CVE-2026-43981: Algernon: Race Condition in handle() shared LState
- Severity: high (CVSS 8.2 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-05-26 · updated 2026-07-24
- Weakness: CWE-362
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 products
- xyproto algernon: before 1.17.6
References
- https://github.com/xyproto/algernon/issues/172
- https://github.com/xyproto/algernon/security/advisories/GHSA-rr2f-4wrm-h6rg
Get alerted when CVE-2026-43981 or the next vulnerability affects your stack