p PatchFirst

PatchFirst · Latest vulnerabilities

banks vulnerabilities

Vulnerabilities published for banks in the last 30 days: 2. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Clear filters

Vulnerabilities: 4

  1. CVE-2026-107717

    Medium · CVSS 6.5EPSS 0.34%Fix available

    Banks: User-controlled prompt input can be parsed as privileged chat messages

    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.

    • Update to 2.5.0
    Published Updated
  2. CVE-2026-107716

    High · CVSS 7.3EPSS 0.13%Fix available

    Banks: Symlink traversal and arbitrary file disclosure/overwrite in DirectoryPromptRegistry

    Banks generates meaningful LLM prompts using a simple template language. Prior to 2.5.1, Banks DirectoryPromptRegistry does not reject symbolic links for index.json or discovered and existing .jinja prompt files. In an application where untrusted users can influence a prompt directory, DirectoryPromptRegistry._scan() and DirectoryPromptRegistry.get() can follow a link outside the registry root and disclose a file, while DirectoryPromptRegistry.set(), DirectoryPromptRegistry._save(), and DirectoryPromptRegistry._load() can read or overwrite an external link target. The issue requires attacker influence over the registry directory or its extrac

    • Update to 2.5.1
    Published Updated
  3. CVE-2026-71492

    Medium · CVSS 6EPSS 0.47%Fix available

    Banks: Path traversal in `DirectoryPromptRegistry.set()` allows arbitrary file write outside the registry root

    Banks generates meaningful LLM prompts using a simple template language. Prior to version 2.4.5, DirectoryPromptRegistry.set() in src/banks/registries/directory.py interpolates attacker-controlled Prompt.name and Prompt.version values into a Path without canonicalization or containment validation. Relative traversal such as ../victim/foo and an absolute Prompt.name can escape or discard the configured registry root, while overwrite=True permits replacement of existing target files. The poisoned name is persisted in index.json and reconstructed by _load(), allowing the out-of-root path to survive later registry loads. An application that forwa

    • Update to 2.4.5
    Published Updated
  4. CVE-2026-44209

    High · CVSS 7.5EPSS 0.42%Fix available

    Banks: Critical Remote Code Execution (RCE) via Jinja2 SSTI

    Banks generates meaningful LLM prompts using a template language that makes sense. Prior to 2.4.2, banks uses jinja2.Environment() (unsandboxed) to render prompt templates. Applications that pass user-supplied strings as the template argument to Prompt() are vulnerable to Server-Side Template Injection (SSTI), which can lead to Remote Code Execution (RCE) on the host system. This vulnerability is fixed in 2.4.2.

    • Update to 2.4.2
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →