Medium severity · published Oct 8, 2026
CVE-2026-107717
Banks: User-controlled prompt input can be parsed as privileged chat messages
6.5
CVSS
0.3%
EPSS
No
On KEV
Description
Banks generates meaningful LLM prompts using a simple template language. Prior to 2.5.0, Banks Prompt.chat_messages() attempts to parse every line of rendered template output as ChatMessage JSON. When an application renders untrusted data and passes the returned ChatMessage objects to an LLM provider, attacker-controlled JSON can cross the prompt boundary and become a system, assistant, or tool message because ChatMessage.role accepts arbitrary strings. This can override application instructions, alter the intended prompt structure, or confuse downstream tool and message handling. This issue is fixed in version 2.5.0.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
Low
Integrity
Low
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 27% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
BA
banks · masci
< 2.5.0 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-107717
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-107717
x_refsource_CONFIRM
https://github.com/masci/banks/security/advisories/GHSA-hmq2-7hp6-7crh
x_refsource_MISC
https://github.com/masci/banks/pull/78
x_refsource_MISC
https://github.com/masci/banks/commit/02172b816fb84f6a824cc09a8aca7416f53c12cb
x_refsource_MISC
https://github.com/masci/banks/releases/tag/v2.5.0
More from banks
7.5
CVE-2026-61536
Banks: Unsafe importlib.import_module of attacker-controlled Tool.import_path in CompletionExtension allows RCE
7.5
CVE-2026-62663
Banks: Arbitrary File Read via Path Traversal in Media Filters (image/audio/video/document)
7.5
CVE-2026-44209
Banks: Critical Remote Code Execution (RCE) via Jinja2 SSTI
7.3
CVE-2026-107716
Banks: Symlink traversal and arbitrary file disclosure/overwrite in DirectoryPromptRegistry
6.0
CVE-2026-71492
Banks: Path traversal in `DirectoryPromptRegistry.set()` allows arbitrary file write outside the registry root
