Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2024-4309-Analysis — Projeto Final BGT-Pentest-LAB: Análise Profunda do Bypass de Verificação de Assinatura OTA do Atualizador do Sistema Xiaomi HyperOS (CVE-2024-4309). | Kitploit
Ferramentas/GitHubGitHub/winslowe/cve-2024-4309-analysis
Análise de VulnerabilidadesExploraçãoCriptografiaTestes de PenetraçãoSegurança MóvelAprendizado e EducaçãoResposta a IncidentesExploração de BináriosLabs e Prática
GitHubwinslowe/cve-2024-4309-analysis

CVE-2024-4309-Analysis

Projeto Final BGT-Pentest-LAB: Análise Profunda do Bypass de Verificação de Assinatura OTA do Atualizador do Sistema Xiaomi HyperOS (CVE-2024-4309).

Ver Repositório
19há 2 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

🛡️ CVE-2024-4309

Xiaomi HyperOS System Updater — OTA Signature Verification Bypass & RCE


CVSS RCE Python


Status Course License Docker Tests Zero Deps


⚠️ APENAS PARA FINS EDUCACIONAIS — Proibido o uso em sistemas reais.




📋 Resumo do Projeto / Project Overview

Preparado no âmbito do projeto final de cibersegurança BGT-Pentest-LAB.

Este repositório contém a análise aprofundada, a simulação de ataque, o mecanismo de detecção e o dashboard web interativo da vulnerabilidade CVE-2024-4309, encontrada no componente System Updater do Xiaomi HyperOS, que permite a execução remota de código (RCE).

🔴 Resumo da Vulnerabilidade

CampoValor
CVE IDCVE-2024-4309
ComponenteSystem Updater (HyperOS)
Gravidade🔴 Crítica (CVSS 9.1)
CWECWE-347: Improper Crypto Signature Verification
ImpactoRCE Persistente, Acesso Root
CorreçãoHyperOS 1.0.4.0+

🎯 Vetor de Ataque

MétricaValor
Vetor de AtaqueRede Adjacente
ComplexidadeBaixa
PrivilégiosNenhum
Interação do UsuárioNenhuma
EscopoAlterado
CVSS VectorAV:A/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N



💀 Fluxo do Ataque / Attack Kill Chain

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
📖 Explicação Detalhada — Clique para ver os detalhes técnicos de cada etapa
EtapaAçãoDetalhe Técnico
1Posição MITMO tráfego de rede é interceptado via ARP Spoofing ou hotspot Wi-Fi falso
2Sequestro de DNSAs respostas DNS de update.miui.com são redirecionadas para o servidor do atacante
3Injeção de HashUm hash malicioso parcial é injetado no banco de dados ota_hashes.db
4Pacote OTA MaliciosoUm update.zip falso com o cabeçalho X-Xiaomi-Fast-Channel: true é criado
5Bypass RSAO MiuiRecoveryVerifier vê o cabeçalho Fast Channel e ignora a verificação RSA
6Bypass de HashquickHashCheck → correspondência parcial via strstr() → BYPASS
7RCEUm system.img malicioso é flashado no modo Recovery → Root Persistente



⚙️ Ferramentas Desenvolvidas / Developed Tools




🖥️ C2 Dashboard
app.py

Dashboard interativo que visualiza a simulação de ataque
passo a passo com painel web premium.
Kill chain, pontuação de risco, logs em tempo real.




⚔️ Attack Simulator
attack.py

Simulação de ataque MITM com servidor OTA falso.
4 endpoints REST, geração de ZIP malicioso,
injeção de hash e bypass do Fast Channel.




🔍 Detection Engine
detector.py

Scanner de segurança OTA em 3 estágios.
Detecção de strstr(), análise do Fast Channel,
pontuação de risco e relatório de IoC.


🔧 Fix Demo
fix_demo.py

strstr() vs strcmp() comparação interativa
e demonstração do patch.


📄 Report Generator
report_generator.py

Gerador de relatórios profissionais de análise de
vulnerabilidade em HTML pronto para PDF.


🧪 Test Suite
test_suite.py

27 testes unitários automatizados.
Testes de integração Attack + Detector.




🐛 Causa Raiz / Root Cause

❌ Código Vulnerável (strstr) ✅ Código Corrigido (strcmp)
// NativeVerifier.cpp — BUG!
bool quickHashCheck(const char* hash) {
    for (int i = 0; i < count; i++) {
        if (strstr(whitelist[i], hash))
            return true;  // Substring eşleşme ⚠️
    }
    return false;
}
// NativeVerifier.cpp — FIXED
bool quickHashCheck(const char* hash) {
    for (int i = 0; i < count; i++) {
        if (strcmp(whitelist[i], hash) == 0)
            return true;  // Tam eşleşme ✅
    }
    return false;
}
🔴 8 caracteres são suficientes — Força bruta: 2³² 🟢 64 caracteres são necessários — Força bruta: 2²⁵⁶



🗂 Estrutura do Repositório / Repository Structure

Baixar ferramenta