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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
IonStack_S21 — Pesquisa de cadeia de exploração direcionada ao CVE-2026-43499 no Samsung Galaxy S21 | Kitploit
Ferramentas/GitHubGitHub/kurtulusakyuz/ionstack_s21
Segurança AndroidEscalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoEngenharia ReversaPós-ExploraçãoSegurança MóvelPapers e PesquisaDesenvolvimento de PayloadsExploração de Binários
GitHub
879há 21 diasAinda 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
kurtulusakyuz/ionstack_s21

IonStack_S21

Pesquisa de cadeia de exploração direcionada ao CVE-2026-43499 no Samsung Galaxy S21

Ver Repositório

IonStack_S21 — pesquisa CVE-2026-43499 para Galaxy S21 (SM-G991B)

Projeto KernelSU funcional e ativo para este dispositivo: kurtulusakyuz/dfroot-s21 — comece por aí. Este repositório mantém apenas a pesquisa IonStack.

Payload IonStack específico do dispositivo para o Samsung Galaxy S21 (o1s) no firmware G991BXXSJHZC2. Status: pesquisa ENCERRADA — apenas DoS determinístico; o caminho de escrita no kernel está provado ser impossível nesta build. Evidências completas em RESEARCH.md.

CampoValor
ModeloSM-G991B
Dispositivoo1s
FirmwareG991BXXSJHZC2
Android15 / API 35 (AP3A.240905.015.A2, fingerprint samsung/o1sxeea/o1s)
Tamanho de página4096
Kernel5.4.242-30958140-abG991BXXSJHZC2
SoCExynos 2100
MitigaçõesCFI+PAC+PAN/UAO, KDP_CRED, SELinux enforcing, sem userfaultfd

Baseado na implementação do IonStack CVE-2026-43499 publicada em NebuSec/CyberMeowfia (upstream b850d3bddc74c3328d5fbcc0568d21962b55d949) e BuSung-dev/CVE-2026-43499-S25U, com agradecimentos a F-19-F/IonStackQuest3. Licença Apache 2.0 upstream mantida em LICENSE (ver NOTICE).

Estado final (leia isto primeiro)

O programa de escrita GhostLock para este dispositivo está concluído e encerrado, não pausado. O que foi provado, em ordem:

  1. O bug é real e está presente. remove_waiter() limpa current->pi_blocked_on em vez de waiter->task->pi_blocked_on, então um rollback de FUTEX_CMP_REQUEUE_PI deixa um ponteiro pendente para um rt_waiter na pilha. O fix upstream 3bfdc63 está ausente do 5.4.242.
  2. O gatilho é confiável. O ciclo de 3 threads (owner → chain → waiter → deadlock no alvo, CMP principal falha com EDEADLK) mais um sched_setattr do consumidor reproduz um Oops idêntico ao do dispositivo (rt_mutex_adjust_prio_chain+0x108 → _raw_spin_trylock+0x1c, VA da falha 0) tanto num guest QEMU sem KDP quanto no próprio telefone (lastkmsg 118/119). O slot pendente está totalmente mapeado (topo da pilha E-0x328, ciclo de vida caracterizado via QEMU+GDB).
  3. A escrita é estruturalmente impossível aqui. Nove famílias de spray de syscall foram mapeadas em profundidade — nenhuma alcança o slot; o slab-reclaim está bloqueado por um Catch-22 de vivacidade do owner; e o dump decisivo no momento do disparo mostra que a cópia do sigreturn entrega APENAS em victim+0x40 enquanto o campo de gate percorrido lock (+0x38) NUNCA é controlado pelo atacante (15/15 dumps). Portes independentes (ASUS i005, rota sigreturn do AQUOS) atingem a mesma parede. Geometria, não probabilidade.
  4. O que sobrevive é uma primitiva de reboot determinística. Caminhadas com lock NULL causam panic no kernel e reiniciam o telefone — um DoS confiável, não uma escalada de privilégios.

Vias relacionadas de LPE de kernel de 2026 também foram fechadas nesta build pela configuração de firmware (USER_NS, RDS, CRYPTO_USER_API_AEAD todos desativados; double-free do MFC inalcançável com MFC_USE_DMABUF_CONTAINER=n; AF_ALG/eBPF restritos para shell). Artefatos pós-escrita (KernelSU .ko + ksud compilados para este firmware exato) estão preparados separadamente; os headers src/kernelsnitch/ nesta árvore permanecem preparados mas não compilados (não existe consumidor sem uma escrita).

Estrutura

Makefile                  build (NDK r27+, ANDROID_NDK_HOME)
src/                      código-fonte do exploit (apenas perfil o1s)
src/targets/o1s-G991BXXSJHZC2/  target.h + p0_fingerprint.h
src/kernelsnitch/         vazamento de mm_struct (colisão de hash futex, preparado)
tools/                    auxiliar de fingerprint p0
RESEARCH.md               notas de pesquisa (geometria, veredictos)

Build

export ANDROID_NDK_HOME=/path/to/android-ndk
make clean all
# SLIDE_WRITER_SEL=1|2|3 seleciona writers mcast/sigreturn(padrão)/xattr.
# Não definido seleciona o writer experimental pselect (ver RESEARCH.md).

Saídas (build/o1s-G991BXXSJHZC2/): cve-2026-43499 (payload LD_PRELOAD), cve-2026-43499-app.so (payload de app), cve-2026-43499-root (helper root).

Implantar e executar

adb push build/o1s-G991BXXSJHZC2/cve-2026-43499 /data/local/tmp/cve-2026-43499
adb push build/o1s-G991BXXSJHZC2/cve-2026-43499-root /data/local/tmp/cve-2026-43499-root
adb shell chmod 755 /data/local/tmp/cve-2026-43499 /data/local/tmp/cve-2026-43499-root
adb shell "LD_PRELOAD=/data/local/tmp/cve-2026-43499 sh"
# em caso de sucesso:
adb shell "/data/local/tmp/cve-2026-43499-root -c 'id; getenforce'"

Gestão de expectativas: nesta build "sucesso" significa a caminhada do gatilho e sua saída de oráculo — uma caminhada com lock NULL reinicia o dispositivo em vez de conceder root (ver "Estado final" acima). Root, se algum dia for obtido via uma futura primitiva de escrita, dura apenas até o reboot; nada é gravado na flash.

Status / avisos

  • Apenas DoS, caminho de escrita encerrado com evidências — ver RESEARCH.md para o relato completo (geometria do slot, fechamento do spray, modelo grandioso do SIGRETURN, dump decisivo no momento do disparo, confirmação no dispositivo).
  • Sensível a timing; espere panics de kernel. Reinicie para slabs limpos, mantenha o dispositivo ocioso durante a execução. /data/local/tmp é apagado no reboot — reenvie os binários após cada boot.
  • Use apenas em dispositivos que você possui ou está explicitamente autorizado a testar.
Baixar ferramenta