lua CVE Vulnerabilities & Metrics

Focus on lua vulnerabilities and metrics.

Last updated: 08 Mar 2025, 23:25 UTC

About lua Security Exposure

This page consolidates all known Common Vulnerabilities and Exposures (CVEs) associated with lua. We track both calendar-based metrics (using fixed periods) and rolling metrics (using gliding windows) to give you a comprehensive view of security trends and risk evolution. Use these insights to assess risk and plan your patching strategy.

For a broader perspective on cybersecurity threats, explore the comprehensive list of CVEs by vendor and product. Stay updated on critical vulnerabilities affecting major software and hardware providers.

Global CVE Overview

Total lua CVEs: 14
Earliest CVE date: 04 Sep 2014, 17:55 UTC
Latest CVE date: 10 Apr 2023, 09:15 UTC

Latest CVE reference: CVE-2021-45985

Rolling Stats

30-day Count (Rolling): 0
365-day Count (Rolling): 0

Calendar-based Variation

Calendar-based Variation compares a fixed calendar period (e.g., this month versus the same month last year), while Rolling Growth Rate uses a continuous window (e.g., last 30 days versus the previous 30 days) to capture trends independent of calendar boundaries.

Variations & Growth

Month Variation (Calendar): 0%
Year Variation (Calendar): -100.0%

Month Growth Rate (30-day Rolling): 0.0%
Year Growth Rate (365-day Rolling): -100.0%

Monthly CVE Trends (current vs previous Year)

Annual CVE Trends (Last 20 Years)

Critical lua CVEs (CVSS ≥ 9) Over 20 Years

CVSS Stats

Average CVSS: 4.69

Max CVSS: 7.5

Critical CVEs (≥9): 0

CVSS Range vs. Count

Range Count
0.0-3.9 3
4.0-6.9 11
7.0-8.9 1
9.0-10.0 0

CVSS Distribution Chart

Top 5 Highest CVSS lua CVEs

These are the five CVEs with the highest CVSS scores for lua, sorted by severity first and recency.

All CVEs for lua

CVE-2021-45985 lua vulnerability CVSS: 0 10 Apr 2023, 09:15 UTC

In Lua 5.4.3, an erroneous finalizer called during a tail call leads to a heap-based buffer over-read.

CVE-2022-33099 lua vulnerability CVSS: 5.0 01 Jul 2022, 12:15 UTC

An issue in the component luaG_runerror of Lua v5.4.4 and below leads to a heap-buffer overflow when a recursive error occurs.

CVE-2022-28805 lua vulnerability CVSS: 6.4 08 Apr 2022, 06:15 UTC

singlevar in lparser.c in Lua from (including) 5.4.0 up to (excluding) 5.4.4 lacks a certain luaK_exp2anyregup call, leading to a heap-based buffer over-read that might affect a system that compiles untrusted Lua code.

CVE-2021-44964 lua vulnerability CVSS: 4.3 14 Mar 2022, 15:15 UTC

Use after free in garbage collector and finalizer of lgc.c in Lua interpreter 5.4.0~5.4.3 allows attackers to perform Sandbox Escape via a crafted script file.

CVE-2021-44647 lua vulnerability CVSS: 2.1 11 Jan 2022, 13:15 UTC

Lua v5.4.3 and above are affected by SEGV by type confusion in funcnamefromcode function in ldebug.c which can cause a local denial of service.

CVE-2021-43519 lua vulnerability CVSS: 4.3 09 Nov 2021, 13:15 UTC

Stack overflow in lua_resume of ldo.c in Lua Interpreter 5.1.0~5.4.4 allows attackers to perform a Denial of Service via a crafted script file.

CVE-2020-24371 lua vulnerability CVSS: 5.0 17 Aug 2020, 17:15 UTC

lgc.c in Lua 5.4.0 mishandles the interaction between barriers and the sweep phase, leading to a memory access violation involving collectgarbage.

CVE-2020-24370 lua vulnerability CVSS: 5.0 17 Aug 2020, 17:15 UTC

ldebug.c in Lua 5.4.0 allows a negation overflow and segmentation fault in getlocal and setlocal, as demonstrated by getlocal(3,2^31).

CVE-2020-24369 lua vulnerability CVSS: 5.0 17 Aug 2020, 17:15 UTC

ldebug.c in Lua 5.4.0 attempts to access debug information via the line hook of a stripped function, leading to a NULL pointer dereference.

CVE-2020-24342 lua vulnerability CVSS: 6.8 13 Aug 2020, 19:15 UTC

Lua through 5.4.0 allows a stack redzone cross in luaO_pushvfstring because a protection mechanism wrongly calls luaD_callnoyield twice in a row.

CVE-2020-15945 lua vulnerability CVSS: 2.1 24 Jul 2020, 21:15 UTC

Lua 5.4.0 (fixed in 5.4.1) has a segmentation fault in changedline in ldebug.c (e.g., when called by luaG_traceexec) because it incorrectly expects that an oldpc value is always updated upon a return of the flow of control to a function.

CVE-2020-15889 lua vulnerability CVSS: 7.5 21 Jul 2020, 22:15 UTC

Lua 5.4.0 has a getobjname heap-based buffer over-read because youngcollection in lgc.c uses markold for an insufficient number of list members.

CVE-2020-15888 lua vulnerability CVSS: 6.8 21 Jul 2020, 22:15 UTC

Lua through 5.4.0 mishandles the interaction between stack resizes and garbage collection, leading to a heap-based buffer overflow, heap-based buffer over-read, or use-after-free.

CVE-2019-6706 lua vulnerability CVSS: 5.0 23 Jan 2019, 19:29 UTC

Lua 5.3.5 has a use-after-free in lua_upvaluejoin in lapi.c. For example, a crash outcome might be achieved by an attacker who is able to trigger a debug.upvaluejoin call in which the arguments have certain relationships.

CVE-2014-5461 lua vulnerability CVSS: 5.0 04 Sep 2014, 17:55 UTC

Buffer overflow in the vararg functions in ldo.c in Lua 5.1 through 5.2.x before 5.2.3 allows context-dependent attackers to cause a denial of service (crash) via a small number of arguments to a function with a large number of fixed arguments.