CVE-2026-61536 in banksinfo

Zusammenfassung

von VulDB • 31.07.2026

Banks generiert sinnvolle LLM-Prompts unter Verwendung einer einfachen Templatesprache. In Versionen vor 2.4.3 parst banks Tool-JSON-Objekte aus dem gerenderten Body von {% completion %}-Blöcken und löst anschließend deren import_path-Feld über `importlib.import_module(...) + getattr(...)` auf, um die aufrufbare Funktion zu erhalten, die einen Tool-Aufruf verarbeitet. Es gibt keine Allowlist oder Sanitisierung für import_path, sodass jedes importierbare Python-Attribut (z. B. os.system, subprocess.getoutput) ausgewählt werden kann. Wenn das LLM einen tool_calls-Eintrag ausgibt, dessen function.name mit dem vom Angreifer angegebenen Tool-Namen übereinstimmt, wird die aufgelöste aufrufbare Funktion mit kwargs aufgerufen, die aus `tool_call.function.arguments` decodiert wurden, was zu einer beliebigen Codeausführung im banks-hostenden Prozess führt. Dies unterscheidet sich von GHSA-gphh-9q3h-jgpp / CVE-2026-44209. Dieser Hinweis wurde in 2.4.2 behoben, indem src/banks/env.py von Environment zu SandboxedEnvironment gewechselt wurde. Die Korrektur betrifft nicht src/banks/extensions/completion.py, und die unsichere Import- + getattr-Kette wird weiterhin auf 2.4.2 ausgeführt. Das bösartige Tool JSON ist im gerenderten Template-Body als Klartext vorhanden – es erfordert keinen Jinja-Attributzugriff, sodass der Sandbox-Mechanismus irrelevant ist. Dieses Problem wurde in Version 2.4.3 behoben.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Zuständig

GitHub M

Reservieren

10.07.2026

Veröffentlichung

30.07.2026

Moderieren

akzeptiert

Eintrag

VDB-384881

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Sektor

Finance

Quellen

Do you want to use VulDB in your project?

Use the official API to access entries easily!