
CVE-2025-62878
| العنصر | القيمة |
|---|---|
| CVE ID | CVE-2025-62878 |
| GHSA ID | GHSA-jr3w-9vfr-c746 |
| الخطورة | حرجة (CVSS 10.0) |
| CWE | CWE-23 (اجتياز المسار النسبي) |
| المكوّن المتأثر | rancher/local-path-provisioner |
| الإصدارات المتأثرة | v0.0.27 ~ v0.0.32 |
| الإصدارات المُصلَحة | v0.0.33+ |
توجد ثغرة اجتياز مسار في معامل pathPattern الخاص بـ StorageClass. يمكن لمستخدم خبيث التلاعب بـ pathPattern باستخدام عناصر مسار نسبية (مثل ../) لإنشاء PersistentVolumes تشير إلى مواقع عشوائية على العقدة المضيفة، متجاوزًا قيد الدليل الأساسي المُعدّ.
يتيح ذلك للمهاجمين:
/etc/kubernetes/pki/)| الإصدار | تاريخ الإصدار | دعم pathPattern | قابلية الاستغلال |
|---|---|---|---|
| v0.0.26 | 2023-12-03 | لا | آمن (الميزة غير موجودة) |
| v0.0.27 | 2024-05-29 | نعم | قابل للاستغلال |
| v0.0.28 | 2024-06-19 | نعم | قابل للاستغلال |
| v0.0.29 | 2024-09-03 | نعم | قابل للاستغلال |
| v0.0.30 | 2024-10-07 | نعم | قابل للاستغلال |
| v0.0.31 | 2025-01-24 | نعم | قابل للاستغلال |
| v0.0.32 | 2025-07-31 | نعم | قابل للاستغلال |
| v0.0.33 | 2025-12-25 | نعم | مُصلَح |
| v0.0.34 | 2026-01-06 | نعم | مُصلَح |
ملاحظة: يذكر التقرير الرسمي على GitHub Advisory أن الإصدارات "< 0.0.34" متأثرة، لكن اختباراتنا تؤكد:
| الحدث | التاريخ |
|---|---|
| ظهور ميزة pathPattern | 2024-05-26 (الالتزام af85381) |
| أول إصدار قابل للاستغلال (v0.0.27) | 2024-05-29 |
| الالتزام المُصحِّح | 2025-12-24 (الالتزام 1ed6b54) |
| أول إصدار مُصلَح (v0.0.33) | 2025-12-25 |
| نشر CVE | 2026-02-04 |
انظر دليل exploit/ للحصول على خطوات ونصوص إعادة الإنتاج التفصيلية.
# 1. Install vulnerable version
kubectl apply -f https://raw.githubusercontent.com/rancher/local-path-provisioner/v0.0.30/deploy/local-path-storage.yaml
# 2. Apply exploit
kubectl apply -f exploit/malicious-storageclass.yaml
kubectl apply -f exploit/malicious-pvc.yaml
kubectl apply -f exploit/exploit-pod.yaml
# 3. Verify exploitation
kubectl get pv -o jsonpath='{.items[0].spec.hostPath.path}'
# Output: /etc/kubernetes/pki
kubectl exec pki-exploit-pod -- ls -la /stolen-pki/
# Shows Kubernetes PKI certificates and private keys
قم بالترقية إلى الإصدار v0.0.33 أو أحدث:
kubectl apply -f https://raw.githubusercontent.com/rancher/local-path-provisioner/v0.0.33/deploy/local-path-storage.yaml