Plattform
python
Komponente
onnx
Behoben in
1.21.1
1.21.0
A symlink traversal vulnerability has been identified in Open Neural Network Exchange (ONNX) versions up to 1.9.0. This flaw, present in the external data loading functionality, allows an attacker to read files outside the intended model directory. The vulnerability is patched in version 1.21.0 and users are strongly advised to upgrade to mitigate the risk of unauthorized data access.
CVE-2026-34447 in ONNX ermöglicht das unbefugte Lesen von Dateien durch Symlink-Traversal beim Laden externer Daten. Konkret validiert die Funktion resolveexternaldatalocation in onnx/onnx/checker.cc, die über onnx.externaldatahelper.loadexternaldatafor_model in Python verwendet wird, externe Datenpfade nicht ausreichend. Wenn ein ONNX-Modell einen externen Datenpfad angibt, der auf einen Symlink zu einer Datei außerhalb des Modellverzeichnisses verweist, kann ein Angreifer diese Datei lesen. Dies stellt eine Verletzung der Vertraulichkeit dar, die unbefugten Zugriff auf sensible Informationen ermöglicht, die auf dem Dateisystem gespeichert sind.
Ein Angreifer kann diese Schwachstelle ausnutzen, indem er ein bösartiges ONNX-Modell erstellt, das einen externen Datenpfad angibt, der auf einen Symlink verweist. Dieser Symlink kann so konfiguriert werden, dass er auf eine sensible Datei auf dem Dateisystem verweist. Wenn das bösartige ONNX-Modell geladen wird, folgt die Funktion resolveexternaldata_location dem Symlink und liest die Zieldatei, wodurch deren Inhalt für den Angreifer offengelegt wird. Die Komplexität der Ausnutzung hängt von der Fähigkeit des Angreifers ab, das bösartige ONNX-Modell zu erstellen und zu verbreiten, sowie von der Konfiguration des Dateisystems.
Organizations and developers utilizing ONNX for machine learning interoperability, particularly those deploying ONNX models in Python environments, are at risk. Environments with shared hosting or where ONNX models are loaded from untrusted sources are especially vulnerable. Legacy ONNX deployments using older versions are also at increased risk.
• python / server:
import os
import subprocess
def check_symlink(model_path):
try:
# Attempt to resolve a symlink outside the model directory
os.readlink(os.path.join(model_path, '..', '..', '..', 'sensitive_file.txt'))
return True # Symlink resolution successful (vulnerable)
except OSError:
return False # Symlink resolution failed (not vulnerable)
# Example usage (replace with your model path)
model_path = '/path/to/your/onnx/model'
if check_symlink(model_path):
print('Potential symlink traversal vulnerability detected!')
else:
print('No symlink traversal vulnerability detected.')disclosure
Exploit-Status
EPSS
0.01% (1% Perzentil)
CISA SSVC
CVSS-Vektor
Die primäre Abhilfemaßnahme für CVE-2026-34447 ist das Upgrade auf ONNX-Version 1.21.0 oder höher. Diese Version enthält eine Korrektur, die externe Datenpfade ordnungsgemäß validiert und Symlink-Traversal verhindert. Darüber hinaus wird empfohlen, strenge Zugriffskontrollen auf dem Dateisystem zu implementieren, auf dem ONNX-Modelle und externe Daten gespeichert sind, und die Leseberechtigungen auf autorisierte Benutzer und Prozesse zu beschränken. Das Überwachen von Systemprotokollen auf verdächtige Aktivitäten im Zusammenhang mit dem Laden externer Daten kann ebenfalls dazu beitragen, potenzielle Angriffe zu erkennen und darauf zu reagieren.
Actualice la biblioteca ONNX a la versión 1.21.0 o superior. Esto corrige la vulnerabilidad de recorrido de enlaces simbólicos en la carga de datos externos, evitando la lectura de archivos fuera del directorio del modelo.
Schwachstellenanalysen und kritische Warnungen direkt in deinen Posteingang.
ONNX (Open Neural Network Exchange) ist ein offener Standard für die Darstellung von Modellen für maschinelles Lernen. Es ermöglicht den Austausch von Modellen zwischen verschiedenen Frameworks für maschinelles Lernen.
Diese Schwachstelle ermöglicht es einem Angreifer, vertrauliche Dateien auf dem System zu lesen, was die Sicherheit der Anwendung oder des Systems gefährden könnte.
Aktualisieren Sie so schnell wie möglich auf ONNX-Version 1.21.0 oder höher.
Implementieren Sie strenge Zugriffskontrollen auf dem Dateisystem und überwachen Sie die Systemprotokolle auf verdächtige Aktivitäten.
Sie finden weitere Informationen in Schwachstellen-Datenbanken wie der NVD (National Vulnerability Database).
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.