
BGT-Pentest-LAB अंतिम परियोजना: Xiaomi HyperOS सिस्टम अपडेटर OTA हस्ताक्षर सत्यापन बाईपास (CVE-2024-4309) गहन विश्लेषण।
⚠️ केवल शैक्षिक उद्देश्यों के लिए — वास्तविक प्रणालियों पर उपयोग निषिद्ध है।
BGT-Pentest-LAB साइबर सुरक्षा फाइनल प्रोजेक्ट के दायरे में तैयार किया गया है।
Xiaomi HyperOS System Updater घटक में मौजूद और रिमोट कोड एक्ज़ीक्यूशन (RCE) की अनुमति देने वाली CVE-2024-4309 भेद्यता का गहन विश्लेषण, हमले का अनुकरण (सिमुलेशन), डिटेक्शन इंजन और इंटरैक्टिव वेब डैशबोर्ड इस रिपॉजिटरी में शामिल हैं।
🔴 भेद्यता सारांश
|
🎯 हमला वेक्टर
|
flowchart TD
subgraph MITM ["Aşama 1: Ağ Erişimini Ele Geçirme (MITM)"]
A["🌐 1. MITM (ARP Spoofing)"] --> B["🎯 2. DNS Hijack (update.miui.com)"]
end
subgraph INJECTION ["Aşama 2: Veritabanı ve Paket Manipülasyonu"]
B --> C["💾 3. Hash Enjeksiyonu (ota_hashes.db)"]
C --> D["📦 4. Zararlı OTA Paketi Hazırlama"]
end
subgraph BYPASS ["Aşama 3: Güvenlik Kontrollerini Atlama (Bypass)"]
D --> E["🔓 5. RSA İmza Atlatma (Fast Channel)"]
E --> F["⚡ 6. Hash Doğrulama Atlatma (strstr Bug)"]
end
subgraph EXPLOIT ["Aşama 4: Yetki Yükseltme & Sızma"]
F --> G["💀 7. RCE & Kalıcı Root (system.img Flash)"]
end
%% Stil Tanımlamaları
style MITM fill:#0f172a,stroke:#38bdf8,stroke-width:1px,color:#38bdf8
style INJECTION fill:#0f172a,stroke:#818cf8,stroke-width:1px,color:#818cf8
style BYPASS fill:#0f172a,stroke:#f59e0b,stroke-width:1px,color:#f59e0b
style EXPLOIT fill:#0f172a,stroke:#ef4444,stroke-width:2px,color:#ef4444
style A fill:#1e293b,stroke:#0284c7,stroke-width:2px,color:#e2e8f0
style B fill:#1e293b,stroke:#0284c7,stroke-width:2px,color:#e2e8f0
style C fill:#1e293b,stroke:#4f46e5,stroke-width:2px,color:#e2e8f0
style D fill:#1e293b,stroke:#4f46e5,stroke-width:2px,color:#e2e8f0
style E fill:#451a03,stroke:#d97706,stroke-width:2px,color:#fef3c7
style F fill:#451a03,stroke:#d97706,stroke-width:2px,color:#fef3c7
style G fill:#4c0519,stroke:#e11d48,stroke-width:3px,color:#ffe4e6
| चरण | क्रिया | तकनीकी विवरण |
|---|---|---|
| 1 | MITM स्थिति | ARP Spoofing या नकली Wi-Fi हॉटस्पॉट के माध्यम से नेटवर्क ट्रैफ़िक पर कब्ज़ा किया जाता है |
| 2 | DNS Hijack | update.miui.com DNS प्रतिक्रियाओं को हमलावर के सर्वर पर पुनर्निर्देशित किया जाता है |
| 3 | Hash Injection | ota_hashes.db डेटाबेस में आंशिक दुर्भावनापूर्ण हैश इंजेक्ट किया जाता है |
| 4 | दुर्भावनापूर्ण OTA पैकेज | X-Xiaomi-Fast-Channel: true हेडर वाला नकली update.zip बनाया जाता है |
| 5 | RSA बाईपास | MiuiRecoveryVerifier Fast Channel हेडर देखता है और RSA जाँच को बायपास कर देता है |
| 6 | Hash बाईपास | quickHashCheck → strstr() के साथ आंशिक मिलान → BYPASS |
| 7 | RCE | Recovery मोड में दुर्भावनापूर्ण system.img फ्लैश किया जाता है → स्थायी Root |
|
🖥️ C2 Dashboard app.py
प्रीमियम वेब पैनल के साथ हमले के अनुकरण को चरण-दर-चरण विज़ुअलाइज़ करने वाला इंटरैक्टिव डैशबोर्ड। Kill chain, जोखिम स्कोर, रीयल-टाइम लॉग्स। |
⚔️ Attack Simulator attack.py
नकली OTA सर्वर के साथ MITM हमले का अनुकरण। 4 REST endpoint, दुर्भावनापूर्ण ZIP जनरेशन, hash injection और Fast Channel बाईपास। |
🔍 Detection Engine detector.py
3-चरणीय OTA सुरक्षा स्कैनर। strstr() डिटेक्शन, Fast Channel विश्लेषण, जोखिम स्कोर और IoC रिपोर्ट। |
|
🔧 Fix Demo fix_demo.py
strstr() vs strcmp() इंटरैक्टिवतुलना और पैच प्रदर्शन। |
📄 Report Generator report_generator.py
PDF-रेडी पेशेवर HTML भेद्यता विश्लेषण रिपोर्ट जनरेटर। |
🧪 Test Suite test_suite.py
27 स्वचालित यूनिट परीक्षण। Attack + Detector एकीकरण परीक्षण। |
| ❌ भेद्य कोड (strstr) | ✅ पैच किया गया कोड (strcmp) |
|---|---|
|
|
| 🔴 8 अक्षर पर्याप्त — Brute-force: 2³² | 🟢 64 अक्षर आवश्यक — Brute-force: 2²⁵⁶ |