CVE-2026-82586
HighCVSS 8.2Exploitation Probability (EPSS)
Low risk26th percentile - higher than 26% of all known CVEs
Summary
Vulnerability in ash_lua allows user-supplied Lua scripts to read attributes not on the exposed-field allow-list. The read action's aggregate path does not consult the allow-list, enabling access to sensitive data such as passwords.
Risk Assessment
An attacker who can run Lua scripts may access confidential data, including passwords, compromising confidentiality and potentially leading to privilege escalation.
Recommendation
Upgrade ash_lua to version 0.2.1 or later, which includes a fix that enforces the allow-list check in aggregate operations as well.
Related vulnerabilities
- CVE-2026-119597Critical
OpenDeepWiki through 2.0.6 contains a hard-coded JWT signing key in appsettings.json. An unauthenticated attacker can forge administrator tokens with an Admin role claim and access /api/admin endpoints.
- CVE-2026-116366Critical
An issue has been discovered in ClickHouse Server that, under certain conditions, could allow an unauthenticated user with network access to execute arbitrary code on the ClickHouse Server.
- CVE-2025-31704Critical
A vulnerability has been found in the Dahua Intelligent Connection Center. A remote attacker could send a specially crafted request to the affected system, allowing the attacker to execute arbitrary commands, resulting in remote code execution.
- CVE-2026-82104Critical
In Teltonika Networks RUTOS devices (versions 7.22 through 7.24.2) and TSWOS devices (versions 1.9 through 1.10), an unauthenticated user can directly call LUA functions, bypassing validations that would normally apply to API requests. Because these requests do not follow proper flows, this can lead to OS command execution.
- CVE-2026-103039Critical
The Gravity Forms plugin for WordPress in versions up to and including 3.1.2 is vulnerable to PHP Object Injection via a Post Custom Field of List input type. The submitted value is passed to WordPress' unrestricted global maybe_unserialize() instead of the hardened GFCommon::maybe_unserialize(), allowing unauthenticated attackers to inject a PHP object into post meta. If a gadget chain exists via another plugin or theme, this could lead to remote code execution.
- CVE-2026-119263Critical
Memory corruption in GarbageCollection in Google Chrome prior to 156.0.8078.79 allowed a remote attacker to potentially execute arbitrary code outside the sandbox via a crafted HTML page.
- CVE-2026-119261Critical
Improper input validation in Skia in Google Chrome prior to 156.0.8078.79 allowed a remote attacker to potentially execute arbitrary code outside the sandbox via a crafted HTML page.
- CVE-2023-22793Critical
A vulnerability allowing an unauthenticated attacker to perform remote code execution (RCE) on servers running the Veeam Virtualization Extensions service of Veeam Management Pack for Microsoft System Center.
- CVE-2026-61707Critical
In SOCFortress CoPilot prior to 0.1.76, case-report templates uploaded by the lowest-privilege customer_user role are later executed by non-sandboxed Jinja2 engines when an admin or analyst generates a report. Lack of template content validation and cross-tenant scoping allows an attacker to inject malicious Jinja expressions that are evaluated as Python on the backend.
- CVE-2026-61645Critical
Docat has an arbitrary file upload vulnerability in its Upload API because the API does not validate the uploaded file path or type. An attacker can overwrite sensitive configuration files or place malicious files on the Docat web server.
Original NVD description (English source)
Improper Protection of Alternate Path vulnerability in ash-project ash_lua allows a user-supplied Lua script to read attributes that are not on the exposed-field allow-list. AshLua exposes Ash resources to Lua scripts, gated by a manifest declaring which fields are exposed. The read action's operation aggregate path in AshLua.Runtime took the field name straight from the Lua call and resolved it with only String.to_existing_atom and Ash.Query.Aggregate.new!, neither of which consults the exposed-field allow-list the normal fields path enforces. A script can therefore read the value of any attribute of any record the actor may read, including private sensitive?: true columns, via resource.read({ operation = {"list", "hashed_password"} }); min and max give a value oracle. Anyone able to submit or influence a Lua script can reach this. This issue affects ash_lua: from 0.1.0 before 0.2.1.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

