Am I affected?
Description
Improper Control of Generation of Code (Code Injection) vulnerability in ash-project ash_ai allows a remote, unauthenticated client to execute arbitrary Elixir code.
AshAi.Actions.Prompt evaluates prompt content through EEx.eval_string/2. The documented prompt: fn input, context -> ... end form lets the prompt content be built from action arguments, so when a prompt action's text incorporates request data, that attacker-controlled text is compiled and run as an EEx template (Elixir source). Content such as <%= System.cmd(...) %> therefore executes on the server before any model request is made, requiring no authentication beyond reaching a prompt action. The fix stops evaluating function-supplied prompt content as EEx; only statically configured templates are evaluated.
This issue affects ash_ai: from 0.1.0 before 1.0.0.
Weaknesses & attack patterns
Weakness
CWE-94
·
Improper Control of Generation of Code ('Code Injection')
in catalog →
MITRE ↗
Attack patterns
CAPEC-242
·
Code Injection
MITRE ↗
Affected — Hex / ash_ai Hex.pm ↗ Repository ↗
modules · source files · routines
Affected — GitHub / ash-project/ash_ai Repository ↗
modules · source files · routines
References
GHSA-2g59-hg7m-qc83 ↗
vendor-advisory
EEF-CVE-2026-77956 ↗
related
Credits
CVSS breakdown
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H