CVE-2024-1560は、MLflowのアーティファクト削除機能におけるパス・トラバーサル脆弱性です。この脆弱性を悪用されると、攻撃者はサーバーのファイルシステム上の任意のディレクトリを削除できてしまう可能性があります。影響を受けるバージョンはMLflow 2.9.2以下です。対策としては、MLflowのバージョンアップグレードが推奨されます。
この脆弱性は、MLflowのアーティファクト削除処理におけるパス検証の不備に起因します。攻撃者は、deleteartifactmlflowartifactsハンドラおよびlocalfileuritopath関数におけるダブルデコードプロセスを悪用し、パスを不正に操作することで、本来アクセスできないはずのディレクトリを削除することが可能になります。これにより、機密情報を含むファイルや、システム運用に不可欠な設定ファイルなどが削除されるリスクがあります。攻撃者は、この脆弱性を利用して、MLflowサーバーの可用性を低下させたり、さらなる攻撃への足がかりを築くことも考えられます。
CVE-2024-1560は、2024年4月16日に公開されました。現時点では、KEV(Known Exploited Vulnerabilities)には登録されていません。しかし、パス・トラバーサル脆弱性は、比較的悪用が容易であり、攻撃者による悪用が懸念されます。公的なPoC(Proof of Concept)はまだ確認されていませんが、脆弱性の詳細が公開されているため、近い将来にPoCが公開される可能性もあります。
Organizations heavily reliant on MLflow for model tracking, deployment, and management are at significant risk. Specifically, environments with shared MLflow instances or those lacking robust access controls are particularly vulnerable. Users who have write access to the MLflow artifact store are potential threat actors.
• python / server:
import os
import subprocess
def check_mlflow_vulnerability():
try:
result = subprocess.run(['mlflow', 'artifacts', 'list'], capture_output=True, text=True, check=True)
if '2.9.2' in result.stdout:
print("MLflow version is vulnerable.")
else:
print("MLflow version is likely patched.")
except FileNotFoundError:
print("MLflow not found.")
check_mlflow_vulnerability()• linux / server:
journalctl -u mlflow -g 'artifact deletion' | grep -i error• generic web:
Use curl to test artifact deletion endpoints with path traversal payloads (e.g., curl 'http://mlflow-server/artifacts/../sensitive_file') and observe the response.
disclosure
エクスプロイト状況
EPSS
0.11% (29% パーセンタイル)
CVSS ベクトル
MLflow 2.9.3以降にアップグレードすることが最も効果的な対策です。アップグレードが困難な場合は、WAF(Web Application Firewall)を導入し、不正なパス操作を検知・遮断するルールを設定することを推奨します。また、MLflowのアーティファクト削除機能の使用を制限したり、アクセス制御を強化することで、リスクを軽減できます。ファイルシステムのアクセス権限を適切に設定し、MLflowプロセスがアクセスできるディレクトリを最小限に抑えることも有効です。
Actualice la biblioteca mlflow a una versión posterior a la 2.9.2. Esto solucionará la vulnerabilidad de path traversal. Puede actualizar usando `pip install mlflow --upgrade`.
脆弱性分析と重要アラートをメールでお届けします。
CVE-2024-1560は、MLflowのアーティファクト削除機能におけるパス・トラバーサル脆弱性であり、攻撃者がサーバー上の任意のディレクトリを削除できる可能性があります。
MLflowのバージョンが2.9.2以下の場合、この脆弱性に影響を受ける可能性があります。
MLflowをバージョン2.9.3以降にアップグレードすることが推奨されます。
現時点では、積極的な悪用事例は確認されていませんが、脆弱性の詳細が公開されているため、悪用される可能性はあります。
MLflowの公式アドバイザリは、MLflowのリリースノートまたはセキュリティアナウンスメントで確認できます。
requirements.txt ファイルをアップロードすると、影響の有無を即座にお知らせします。