Plattform
python
Komponente
inventree
Behoben in
1.2.4
CVE-2026-35477 is a remote code execution (RCE) vulnerability discovered in InvenTree, an open-source inventory management system. This flaw allows authenticated staff users with settings access to craft malicious templates that bypass validation and execute arbitrary code during rendering. The vulnerability impacts versions 1.2.3 through 1.2.6 and is addressed in version 1.2.7.
CVE-2026-35477 betrifft InvenTree-Versionen 1.2.3 bis 1.2.6. Die Schwachstelle liegt in der Art und Weise, wie das System Teilnamen mithilfe von Jinja2-Vorlagen rendert. Obwohl eine Korrektur für CVE-2026-27629 implementiert wurde, wurde diese nicht vollständig angewendet. Insbesondere verwendet der Validator eine Jinja2-Sandbox-Umgebung, während der tatsächliche Renderer in part/helpers.py weiterhin eine nicht-Sandbox-Jinja2-Umgebung verwendet. Dies ermöglicht die Ausführung von beliebigem Code über bösartige Vorlagen in Teilnamen und gefährdet potenziell die Systemsicherheit. Die Verwendung einer Dummy-Part-Instanz mit pk=None während der Validierung führt zu einer Diskrepanz im Verhalten bedingter Vorlagenausdrücke, was die Abmilderung weiter erschwert. Ein Benutzer mit Personalberechtigungen kann diese Schwachstelle ausnutzen.
Ein Angreifer mit Personalberechtigungen kann bösartigen Code in das Format eines Teilnamens einschleusen. Dieser Code wird während des Renderings ausgeführt und kann dem Angreifer potenziell Zugriff auf sensible Daten, die Möglichkeit zur Änderung der Datenbank oder sogar die Ausführung von Befehlen auf dem Server ermöglichen. Die Diskrepanz zwischen Validierung und Rendering erschwert die Erkennung, da bösartiger Code die Validierung passieren kann, aber während des Renderings ausgeführt wird. Das Fehlen einer Sandbox-Umgebung während des Renderings ist der Schlüsselfaktor, der die Ausnutzung ermöglicht.
Organizations utilizing InvenTree for inventory management, particularly those running vulnerable versions (1.2.3 - 1.2.6) in production environments, are at risk. Shared hosting environments where InvenTree is deployed alongside other applications are also vulnerable, as a compromise of one application could lead to the exploitation of this vulnerability.
• python / server:
import os
import subprocess
def check_invenTree_version():
try:
result = subprocess.check_output(['pip3', 'show', 'invenTree'], stderr=subprocess.STDOUT)
version = result.decode('utf-8').split('Version: ')[1].strip()
if '1.2.3' <= version < '1.2.7':
print("VULNERABLE: InvenTree version detected.")
else:
print("InvenTree version is not vulnerable.")
except FileNotFoundError:
print("InvenTree not found.")
except Exception as e:
print(f"Error checking version: {e}")
check_invenTree_version()• generic web:
curl -I http://your-invenTree-instance/admin/settings/ | grep -i 'jinja2'disclosure
Exploit-Status
EPSS
0.03% (8% Perzentil)
CISA SSVC
CVSS-Vektor
Die empfohlene Lösung ist ein Upgrade auf InvenTree-Version 1.2.7 oder höher, das diese Schwachstelle vollständig behebt. Dieses Update ersetzt den nicht-Sandbox-Renderer durch die Jinja2-Sandbox-Umgebung, die vom Validator verwendet wird. Darüber hinaus wird empfohlen, alle vorhandenen Teilnamensvorlagen zu überprüfen und zu validieren, um sicherzustellen, dass sie keinen bösartigen Code enthalten. Wenn ein sofortiges Upgrade nicht möglich ist, beschränken Sie den Zugriff auf die Funktionalität zum Bearbeiten von Teilnamen auf vertrauenswürdige Benutzer und überwachen Sie die Systemprotokolle auf verdächtige Aktivitäten. Die Implementierung einer Vorlagensicherheitsrichtlinie ist entscheidend, um zukünftige Schwachstellen zu verhindern.
Actualizar InvenTree a la versión 1.2.7 o superior. Esta actualización corrige una vulnerabilidad de inyección de código a través de la manipulación de plantillas, asegurando que el renderizado de nombres de piezas se realice en un entorno sandbox seguro.
Schwachstellenanalysen und kritische Warnungen direkt in deinen Posteingang.
InvenTree ist ein Open-Source-Bestandsverwaltungssystem.
Dieses Update behebt eine Sicherheitslücke, die es einem Angreifer ermöglichen könnte, bösartigen Code auf Ihrem System auszuführen.
Beschränken Sie den Zugriff auf die Bearbeitung von Teilnamen und überwachen Sie die Systemprotokolle.
Wenn Sie eine InvenTree-Version zwischen 1.2.3 und 1.2.6 verwenden, sind Sie anfällig.
Weitere Details finden Sie in den Versionshinweisen von InvenTree 1.2.7.
Lade deine Abhängigkeitsdatei hoch und erfahre sofort, ob dich diese und andere CVEs treffen.
Lade deine requirements.txt-Datei hoch und wir sagen dir sofort, ob du betroffen bist.