CVE-2024-27318は、Pythonのonnxパッケージにおけるディレクトリトラバーサル脆弱性です。この脆弱性は、テンソルプロトのexternal_dataフィールドが、モデルの現在のディレクトリまたはユーザーが提供したディレクトリ外のファイルへのパスを持つ可能性があることに起因します。CVE-2022-25882に対するパッチのバイパスとして発生します。影響を受けるバージョンは1.9.0以前です。バージョン1.16.0へのアップグレードで修正されています。
この脆弱性を悪用されると、攻撃者はonnxモデルの外部にある任意のファイルにアクセスできるようになります。これにより、機密情報の漏洩、システムへの不正アクセス、さらにはリモートコード実行につながる可能性があります。特に、モデルのロード時に外部からの入力を処理するアプリケーションは、この脆弱性の影響を受けやすいです。攻撃者は、悪意のあるファイルへのパスをexternal_dataフィールドに注入することで、システム上の任意の場所にアクセスできる可能性があります。この脆弱性は、モデルの信頼性を損ない、システム全体のセキュリティを脅かす重大なリスクとなります。
この脆弱性は、2024年2月23日に公開されました。現時点では、公的に利用可能なPoCは確認されていませんが、CVE-2022-25882と同様の攻撃手法が利用される可能性があります。CISA KEVリストへの登録状況は不明です。この脆弱性は、onnxモデルを扱うPythonアプリケーションを開発・運用している組織にとって、潜在的なリスクとなります。
Organizations deploying ONNX Runtime in production environments, particularly those using it for machine learning inference with untrusted data, are at significant risk. This includes developers integrating ONNX Runtime into their applications and those relying on shared hosting environments where the ONNX Runtime installation may be managed by the provider.
• python / supply-chain:
import os
import subprocess
# Check ONNX Runtime version
result = subprocess.run(['onnxruntime', '--version'], capture_output=True, text=True)
version = result.stdout.splitlines()[0]
if version <= '1.9.0':
print("ONNX Runtime version is vulnerable.")• generic web: Check for ONNX Runtime endpoints exposed in your web application. Use curl to probe for potential file access vulnerabilities.
curl 'http://your-application/onnxruntime/model?external_data=/etc/passwd'disclosure
エクスプロイト状況
EPSS
0.41% (61% パーセンタイル)
CVSS ベクトル
この脆弱性への主な対策は、onnxパッケージをバージョン1.16.0以降にアップグレードすることです。アップグレードが一時的に利用できない場合は、入力の検証を強化し、external_dataフィールドに渡されるパスが許可されたディレクトリ内に限定されるように制限してください。WAF(Web Application Firewall)を使用している場合は、外部からのファイルパスの不正なアクセスを検知・ブロックするルールを実装することを検討してください。また、ファイルアクセス権限を適切に設定し、モデルがアクセスできるファイルへのアクセスを最小限に抑えることも重要です。アップグレード後、ファイルアクセス権限と入力検証ルールが正しく設定されていることを確認してください。
Actualice la biblioteca onnx a una versión posterior a la 1.15.0. Esto se puede hacer usando el gestor de paquetes pip con el comando: `pip install --upgrade onnx`. Asegúrese de verificar que la actualización se haya realizado correctamente y que la nueva versión esté en uso.
脆弱性分析と重要アラートをメールでお届けします。
CVE-2024-27318は、Pythonのonnxパッケージのバージョン1.9.0以前に存在するディレクトリトラバーサル脆弱性です。攻撃者は、モデルディレクトリ外のファイルにアクセスできる可能性があります。
onnxパッケージのバージョン1.9.0以前を使用している場合は、影響を受けます。バージョン1.16.0以降にアップグレードしてください。
onnxパッケージをバージョン1.16.0以降にアップグレードしてください。アップグレードできない場合は、入力の検証を強化してください。
現時点では、公的に利用可能なPoCは確認されていませんが、潜在的なリスクが存在します。
onnxプロジェクトのセキュリティアドバイザリを参照してください。https://github.com/onnx/onnx/security/advisories
requirements.txt ファイルをアップロードすると、影響の有無を即座にお知らせします。