Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
sony-vp-extract — Descriptografar e extrair instruções de voz MP3 dos pacotes de voz criptografados do Sony WH-1000XM4. Chave AES extraída via dump de firmware Bluetooth do SoC Airoha MT2811. | Kitploit
Ferramentas/GitHubGitHub/helgesverre/sony-vp-extract
Segurança de Sistemas EmbarcadosSegurança BluetoothFerramentas de Criptografia/DescriptografiaEngenharia ReversaSegurança Sem FioCriptografiaSegurança de HardwareAnálise de Firmware
GitHubhelgesverre/sony-vp-extract

sony-vp-extract

Descriptografar e extrair instruções de voz MP3 dos pacotes de voz criptografados do Sony WH-1000XM4. Chave AES extraída via dump de firmware Bluetooth do SoC Airoha MT2811.

2525há 2 mesesRevisado pelo Kitploit

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
Ver Repositório

Sony WH-1000XM4 - Extrator de Pacotes de Voz

Sony WH-1000XM4 Extrator de Pacotes de Voz Protocolo RACE Amp Licença: MIT

Descriptografe e extraia os prompts MP3 de orientação por voz dos arquivos de firmware criptografados do Sony WH-1000XM4.

A chave AES-128-CBC foi extraída despejando o firmware do chip Airoha MT2811 dos fones de ouvido via Bluetooth Low Energy usando o protocolo RACE, e então desmontando a rotina de descriptografia FOTA do ARM Cortex-M4. Artigo técnico completo: docs/WRITEUP.md

Início Rápido

root@kitploit:~
# Instale o Bun (se ainda não estiver instalado)
curl -fsSL https://bun.sh/install | bash

git clone https://github.com/HelgeSverre/sony-vp-extract.git
cd sony-vp-extract
bun install

# Baixa automaticamente da CDN da Sony e extrai
bun run cli/extract.ts --all

Uso

root@kitploit:~
# Extrair tudo — baixa automaticamente da CDN da Sony se voice-packs/ estiver vazio
bun run cli/extract.ts --all [diretório-entrada] [diretório-saída]

# Extrair um único pacote de voz
bun run cli/extract.ts voice-packs/VP_english_UPG_03.bin extracted/

# Exibir informações do pacote de voz
bun run cli/extract.ts --info voice-packs/VP_english_UPG_03.bin

# Baixar apenas (sem extração)
bun run cli/extract.ts --download [diretório-saída]

Alternativa em Python

root@kitploit:~
uv run extract_all.py

Baixa da CDN da Sony + descriptografa + extrai — tudo em um comando. As dependências são declaradas inline (PEP 723) — o uv run cuida de tudo automaticamente.

Idiomas Disponíveis

Formato do Pacote de Voz

root@kitploit:~
┌───────────────────────────────────────┐
│  Cabeçalho (4096 bytes)               │
│  ├── 0x000  Nonce aleatório (32 bytes)│
│  └── 0x100  Metadados TLV             │
│       ├── tipo_compressão = 2         │
│       ├── tamanho_corpo               │
│       ├── tamanho_descomprimido (1 MB)│
│       └── SHA-256 do descomprimido    │
├───────────────────────────────────────┤
│  Corpo (offset 0x1000+)               │
│  Criptografado com AES-128-CBC        │
│  └── Comprimido com LZMA1             │
│       └── Imagem de orientação (1MB)  │
│            ├── Cabeçalho (versão+cont)│
│            ├── Tabela de entradas (54×8B)│
│            │   (tamanho, off_absoluto) │
│            └── Arquivos MP3 (mono 48kHz)│
└───────────────────────────────────────┘

A Chave

root@kitploit:~
Chave AES-128-CBC: eibohjeCh6uegahf
IV AES-128-CBC:    miefeinuShu9eilo

Encontrada como strings ASCII hardcoded na seção .rodata do firmware MT2811 CM4 no offset flash 0xD53A (chave) e 0xD529 (IV). A mesma chave é usada em todas as unidades WH-1000XM4 e em todos os pacotes de idioma.

Como Foi Descoberta

  1. Conectei ao WH-1000XM4 via Bluetooth (os fones estavam emparelhados com um telefone)
  2. Descobri o serviço GATT BLE do RACE (Extensões de Comando Airoha)
  3. Despejei 59KB do firmware CM4 da flash usando RACE_STORAGE_PAGE_READ (comando 0x0403)
  4. Localizei a S-box do AES no offset do firmware 0x81F4
  5. Determinei o endereço base de execução 0x04200000 a partir do pool literal da tabela de vetores ARM
  6. Desmontei a função de descriptografia FOTA, rastreei o carregamento da chave a partir do pool literal

Detalhes técnicos completos: docs/WRITEUP.md

Pré-requisitos

  • Bun ≥ 1.0 — para a CLI em TypeScript
  • uv — para os scripts Python (as dependências são resolvidas automaticamente via metadados inline)

Extraia a Chave Você Mesmo

Se quiser verificar a chave de forma independente, pode despejar o firmware dos seus próprios fones WH-1000XM4 emparelhados e extrair a chave dele:

root@kitploit:~
# Despejar firmware via BLE e extrair chave
uv run cli/extract_key.py

# Ou se você já tiver um dump do firmware:
uv run cli/extract_key.py --firmware seu_dump.bin

# Alternativa com Bun (requer dump do firmware):
bun run cli/extract.ts --extract-key seu_dump.bin

A ferramenta procura a S-box do AES no binário do firmware, encontra strings ASCII de 16 bytes terminadas em nulo adjacentes e valida cada par candidato tentando descriptografar um pacote de voz e verificando cabeçalhos LZMA válidos.

Estrutura do Projeto

root@kitploit:~
├── cli/
│   ├── extract.ts          # Ferramenta CLI em Bun (extração + localizador de chave)
│   └── extract_key.py      # Despejador de firmware BLE + localizador de chave em Python
├── docs/
│   └── WRITEUP.md          # Artigo técnico completo
├── voice-packs/            # Arquivos .bin baixados (gitignored)
├── extracted/              # Prompts MP3 extraídos (gitignored)
├── extract_all.py          # Extrator alternativo em Python
├── package.json
└── README.md

Aviso Legal

Este projeto documenta pesquisa de segurança conduzida para fins educacionais em hardware de propriedade pessoal. Os fones analisados estavam emparelhados e conectados normalmente — nenhum acesso não autorizado foi envolvido.

Os arquivos .bin do pacote de voz e os prompts MP3 extraídos são protegidos por direitos autorais da Sony Corporation e não estão incluídos neste repositório. A ferramenta CLI os baixa diretamente da CDN pública da Sony no momento da execução. Não redistribua pacotes de voz descriptografados ou arquivos MP3 extraídos. Esta ferramenta é fornecida apenas para fins de pesquisa e interoperabilidade.

Licença

MIT

Baixar ferramenta
IdiomaArquivoComandos de VozCDN
🇬🇧 InglêsVP_english_UPG_03.bin54Download
🇫🇷 FrancêsVP_french_UPG_03.bin54Download
🇩🇪 AlemãoVP_german_UPG_03.bin54Download
🇪🇸 EspanholVP_spanish_UPG_03.bin54Download
🇮🇹 ItalianoVP_italian_UPG_03.bin54Download
🇵🇹 PortuguêsVP_portuguese_UPG_03.bin54Download
🇳🇱 HolandêsVP_dutch_UPG_03.bin54Download
🇸🇪 SuecoVP_swedish_UPG_03.bin54Download
🇫🇮 FinlandêsVP_finnish_UPG_03.bin54Download
🇹🇷 TurcoVP_turkish_UPG_03.bin54Download