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-2026-12960 — CVE-2026-12960 - Exportação imprópria de componentes de aplicativos Android no aplicativo ASUS Router (com.asus.aihome). PoC, APK de exploit, vídeo e relatório do fornecedor. Corrigido em 1.0.0.9.74. | Kitploit
Ferramentas/GitHubGitHub/l0lsec/cve-2026-12960
Segurança AndroidAnálise de VulnerabilidadesExploraçãoPentesting de Apps MóveisTestes de PenetraçãoSegurança Móvel
GitHubl0lsec/cve-2026-12960

CVE-2026-12960

CVE-2026-12960 - Exportação imprópria de componentes de aplicativos Android no aplicativo ASUS Router (com.asus.aihome). PoC, APK de exploit, vídeo e relatório do fornecedor. Corrigido em 1.0.0.9.74.

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
Site

CVE-2026-12960

Exportação Incorreta de Componentes de Aplicativo Android no Aplicativo ASUS Router

Um componente incluído no aplicativo ASUS Router para Android (com.asus.aihome) foi declarado android:exported="true" sem android:permission. Qualquer outro aplicativo no mesmo dispositivo, sem nenhuma permissão, poderia enviar uma Intent manipulada e fazer com que o aplicativo ASUS Router abrisse uma URI controlada pelo atacante em nome do usuário.

Relatado à ASUS em 2026-03-17. Corrigido pela ASUS e publicado como CVE-2026-12960 em 2026-07-03.

Descoberto e relatado por Sedric Louissaint da Show Up Show Out Security.


Resumo

CVECVE-2026-12960
ProdutoAplicativo ASUS Router para Android (com.asus.aihome)
Afetado≤ 1.0.0.9.71
Corrigido em1.0.0.9.74
VulnerabilidadeCWE-926: Exportação Incorreta de Componentes de Aplicativo Android
CVSS 4.06.0 Médio CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:H/SI:N/SA:N
CNAASUS
Aviso do fornecedorhttps://www.asus.com/security-advisory/
Testado emcom.asus.aihome 1.0.0.9.71 (Google Play), emulador Android 11

Detalhe técnico

O aplicativo inclui o SDK Baidu Push, que declara:

<service
    android:name="com.baidu.android.pushservice.CommandService"
    android:exported="true" />

Nenhum atributo android:permission, portanto o controle de acesso em nível de componente do Android nunca é acionado. Qualquer aplicativo instalado pode chamar startService() contra ele.

CommandService.onStartCommand() lê um PublicMsg Parcelable do extra public_msg da Intent recebida e o passa para handlePrivateNotification(), que ramifica com base no campo mOpenType fornecido pelo atacante:

mOpenTypeComportamento
1startActivity(ACTION_VIEW, Uri.parse(mUrl)) com o mUrl do atacante
2Intent.parseUri(mPkgContent, 0) e em seguida startActivity() / sendBroadcast()

Nem o remetente nem a carga são validados. Como a atividade resultante é iniciada a partir do próprio UID e processo do aplicativo ASUS, o que quer que apareça na tela parece ter vindo do aplicativo confiável de gerenciamento de roteador que o usuário acabou de abrir.

Nada disso é específico da Baidu em efeito. O SDK fornece o componente exportado, o aplicativo hospedeiro o herda, e a identidade do aplicativo hospedeiro é o que é emprestado.

Cadeia de ataque

  1. O aplicativo malicioso constrói um PublicMsg Parcelable compatível com o layout de campos do alvo.
  2. Define mOpenType = 1 e mUrl para uma URI controlada pelo atacante.
  3. Envia a Intent para CommandService. Nenhuma permissão necessária, nenhum SecurityException.
  4. onStartCommand() → handlePrivateNotification().
  5. startActivity(ACTION_VIEW, Uri.parse(mUrl)) é disparada a partir do processo do aplicativo ASUS.

A ordem dos campos PublicMsg, recuperada de writeToParcel no smali descompilado e reimplementada em poc/PublicMsg.java:

String mMsgId, mAppId, mTitle, mDescription, mUrl, mPkgName
int    mPkgVercode, mNotificationBuilder, mNotificationBasicStyle
int    mOpenType, mUserConfirm
String mCustomContent, mPkgContent
int    mAdvertiseStyle
String mAdvertiseSmallIconUrl, mAdvertiseLargeIconUrl, mAdvertiseClickUrl,
       mAdvertiseBigPictureUrl, mAdvertiseBigPictureClickUrl, mAdvertiseDownloadClickUrl

Se a ordem estiver errada, o Parcel é desserializado em lixo. Se estiver correta, o serviço aceita a mensagem como se a própria infraestrutura de push da Baidu a tivesse enviado.

Cargas úteis demonstradas

Seis esquemas de URI, um serviço exportado, zero permissões:

#EsquemaResultado
1https:Navegador abre uma página de phishing controlada pelo atacante
2sms:Compositor de SMS pré-preenchido com uma mensagem de engenharia social
3tel:Discador pré-preenchido com um número controlado pelo atacante
4mailto:Compositor de e-mail pré-preenchido para exfiltrar credenciais
5market:Redirecionamento para a Play Store para instalação de malware
6geo:Redirecionamento para o Maps para um centro de serviço falso

Prova de conceito

media/poc_commandservice.mp4 é a execução completa de 31 segundos: compilar, instalar, disparar e o emulador reagindo a cada carga útil em sequência.

Ataque 1: página de phishingAtaque 2: compositor de SMSAtaque 3: discadorPermissões do aplicativo PoC
Browser opened to an attacker URLSMS composer pre-filled with a fake ASUS security alertDialer pre-filled with an attacker numberAndroid App info screen showing "No permissions requested"

Essa última captura de tela é todo o argumento. Nenhuma permissão solicitada. O aplicativo que acabou de conduzir seis ações através do aplicativo ASUS Router não pediu nada ao usuário.

Reproduzindo

Requer ADB, um JDK e as ferramentas de build do Android SDK (aapt2, d8/dx, zipalign, apksigner) além de platforms;android-30.

./poc/poc_commandservice_exploit.sh <device_serial>

O script executa três fases:

  1. Verificação de acesso. Envia as três ações de CommandService de com.android.shell e relata se alguma é rejeitada. Um serviço protegido por permissão lança SecurityException aqui. Este aceitou todas as três.
  2. Compilação. Compila o PoC, empacota e assina exploit_commandservice.apk, e o instala. Uma cópia pré-compilada está em poc/ se preferir pular esta etapa.
  3. Execução. Traz o aplicativo ASUS para primeiro plano, inicia o PoC a partir de um contexto de aplicativo não privilegiado e captura a evidência no logcat.

Saída da Fase 1 em um dispositivo vulnerável:

[ACCESS]  passthrough.notification.CLICK → service accepted intent
[ACCESS]  privatenotification.CLICK      → service accepted intent
[ACCESS]  privatenotification.DELETE     → service accepted intent

  Phase 1 result: 3/3 actions accepted without permission check

E o ServiceRecord de dumpsys activity services, que registra o chamador:

intent={act=com.baidu.android.pushservice.action.privatenotification.CLICK
        cmp=com.asus.aihome/com.baidu.android.pushservice.CommandService}
recentCallingPackage=com.android.shell
startRequested=true callStart=true

Fase 3, a partir de um aplicativo real não privilegiado em vez do shell:

W PoCExploit: [OK] attack1_url_open → com.asus.aihome/com.baidu.android.pushservice.CommandService
W PoCExploit: [OK] attack2_sms_compose → ...
(all 6 succeed)

startService() retornou o ComponentName alvo em vez de null, e nenhum SecurityException foi lançado. O Android resolveu a Intent e a entregou.

Conteúdo do repositório

Baixar ferramenta