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
DFRoot — Ferramenta de root para Android para Samsung Galaxy S25 Ultra (SM-S938B) que encadeia DirtyFrag CVE-2026-43284 e CVE-2026-43499 para obter root automaticamente no boot via KernelSU. | Kitploit
Ferramentas/GitHubGitHub/a2333c/dfroot
Segurança AndroidEscalada de PrivilégiosMecanismos de PersistênciaExploraçãoPentesting de Apps MóveisPós-ExploraçãoTestes de PenetraçãoSegurança MóvelUtilitários e FrameworksDesenvolvimento de Payloads
GitHub
31há 4 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
a2333c/dfroot

DFRoot

Ferramenta de root para Android para Samsung Galaxy S25 Ultra (SM-S938B) que encadeia DirtyFrag CVE-2026-43284 e CVE-2026-43499 para obter root automaticamente no boot via KernelSU.

Ver Repositório

DFRoot —— Versão adaptada para SM-S938B (Galaxy S25 Ultra) · Canal rápido + Manual

Fork do diabl0w/DFRoot, adaptado especificamente para Samsung Galaxy S25 Ultra (SM-S938B / pa3q), com interface e saída de execução totalmente em chinês.

Duas cadeias, uma interface:

SoluçãoVulnerabilidadeCaracterística
Canal rápidoDirtyFrag (CVE-2026-43284)A do DFRoot original, de segundos a dezenas de segundos
ManualCVE-2026-43499Probabilística, escada de três rodadas, no máximo cerca de dez minutos

Padrão "Automático": executa primeiro o canal rápido, e se não funcionar, passa automaticamente para a solução manual.

Em uma frase: obtém root automaticamente na inicialização. A cada inicialização, tenta primeiro o canal rápido por alguns segundos; se não funcionar, passa automaticamente para a cadeia manual, repetindo três rodadas no esquema "rápido → estável → paciente".

Depois de obter root, também executa automaticamente dois comandos cmd connectivity (para remover os anúncios do "Instalador de pacotes" da Samsung), com comando, saída e código de saída registrados no log da interface — veja a seção 5, "Configuração de anúncios do instalador". A partir da v1.8, esses dois comandos são gravados como script de inicialização do KernelSU, e a cada inicialização o próprio KernelSU os executa como root, sem precisar abrir o aplicativo nem exibir pop-up de autorização.

O que mudou na v1.9

  • Corrigido o erro Cannot run program "su": error=2, No such file or directory: na v1.8, para não reiniciar mais uma vez, foi removido o --soft-reboot passado ao ksud; porém o su do KernelSU é montado em /system/bin/su pelo módulo do kernel somente na fase post-fs-data, e o late-load do ksud executa apenas as fases late-load / post-mount / service / boot-completed (código-fonte do KernelSU userspace/ksud/src/late_load.rs) — sem reiniciar o framework, esse ponto de montagem nunca aparece nesta inicialização, e o su -c … dentro do aplicativo sempre dará error=2. Esses dois problemas têm a mesma causa raiz;
  • Nova terceira via de root: o ksud embutido no aplicativo (KsudChannel) — o APK traz uma cópia extra do ksud (libksud.so, colocado em jniLibs/arm64-v8a/, instalado em nativeLibraryDir, e o App pode executá-lo diretamente via execve), usando libksud.so debug su para abrir um shell root, com os comandos escritos no stdin dele. A elevação de privilégio usa o ioctl(KSU_IOCTL_GRANT_ROOT) do kernel, sem depender de /system/bin/su, sem pop-up de autorização e sem reiniciar o framework do sistema;
  • Ordem dos canais: helper (logo após a solução manual terminar) → ksud → su. No log, primeiro é impressa uma linha de autoverificação * root 通道:helper=…,ksud=可用,su=…, para que se veja de imediato onde travou;
  • Configuração complementar alterada para 4 vezes × 15 segundos (cerca de 45 segundos): o ksud só é iniciado no momento em que o canal rápido retorna sucesso, então é normal falhar nas primeiras tentativas; agora ele tenta novamente automaticamente;
  • Antes de executar su, adiciona /data/adb/ksu/bin, /debug_ramdisk, /data/adb/magisk, /data/adb/ap/bin ao PATH, e SU_PATHS também foi ampliado para 8 entradas (algumas variantes do KernelSU só colocam su nesses diretórios).

O que mudou na v1.8

  • Não reinicia mais uma vez após a inicialização: não passa mais --soft-reboot ao ksud. Antes, esse parâmetro fazia o ksud reiniciar o framework do sistema após a instalação — o que o usuário via era "o aparelho reiniciou sozinho depois de ligar"; pior ainda, esse reinício interrompia o processo do aplicativo junto com a "Configuração de anúncios do instalador" que ele estava executando;
  • Configuração de anúncios do instalador alterada para script de inicialização do KernelSU: não depende mais de o aplicativo usar su no momento da inicialização (nessa hora o KernelSU ainda não está pronto, e em aparelho real falhava a cada inicialização, sendo necessário abrir manualmente o KernelSU e depois o aplicativo para funcionar). Agora os mesmos dois comandos são gravados em /data/adb/service.d/dfroot-ads.sh, e o KernelSU o executa como root a cada inicialização — sem passar pelo aplicativo, sem passar pelo su, sem nenhum pop-up de autorização;
  • Se falhar uma vez no momento da inicialização, tenta novamente de forma automática: isso é delegado ao serviço em primeiro plano, que tenta a cada 30 segundos durante os 5 minutos seguintes, e encerra ao obter sucesso uma vez (nessa ocasião de sucesso, o script de inicialização também é instalado);
  • A interface ganhou uma linha "开机脚本:…", exibindo diretamente o resultado da última execução do script.

O que mudou na v1.7

  • A opção "Lento" foi renomeada para "Manual", e a descrição também mudou: se o automático não funcionar, tenta manualmente;
  • Nova opção "Configuração de anúncios do instalador": após obter root, executa automaticamente os dois comandos cmd connectivity, com comando, saída e código de saída todos registrados no log da interface (execução bem-sucedida sempre tem saída);
  • Verifica a cada inicialização e também a cada abertura do App; se não tiver funcionado, complementa uma vez;
  • Os demais comportamentos permanecem iguais (canal rápido + solução manual + automático na inicialização).

1. O que é cada uma das duas cadeias

Canal rápido: DirtyFrag (CVE-2026-43284)

A cadeia que já vem no DFRoot original, com todo o código em app/src/main/jni/ (exp.c + dois trechos de shellcode + o módulo de kernel em dirtyfrag-lkm/), compilado como libexp.so e chamado diretamente pelo App:

  1. Usa descriptografia AES-CBC ESP no local + splice() para alterar o page cache de arquivos somente leitura;
  2. Grava o módulo de kernel em /vendor/lib64/libstagefrighthw.so e o carrega com finit_module, colocando o SELinux em permissive;
  3. Faz hook em libc.so / libc++.so, aproveita o domínio do modprobe para iniciar o ksud embutido, e faz late-load do KernelSU.

Rápido (segundos), ao custo de deixar vestígios de "já armado nesta rodada" em /dev/df, e o caminho de instalação do ksud dele é diferente do da cadeia manual (veja a seção 7).

Manual: CVE-2026-43499

Os três binários são pré-compilados (byte a byte inalterados):

ArquivoLocalFunção
libcve43499root.sojniLibs/arm64-v8a/helper, ELF executável, o App o executa diretamente via execve, não precisa de Shizuku
cve-2026-43499-app.soassets/payloads/payload, carregado pelo helper via dlopen para executar a vulnerabilidade
ksud-s25u-kdpassets/payloads/O próprio KernelSU (ksud + kernelsu.ko embutido)
1. helper --run-payload <payload> <helper> <log>   obtém root (probabilístico)
2. helper -c "cp ksud …"                           coloca o ksud em /data/local/tmp
3. helper --late-load                              bind mount /system/bin/logcat,
                                                   e executa "logcat late-load …" para instalar o KernelSU

Critério de sucesso: aparecem simultaneamente no log exploit completed e done=1 root=1.

A solução "Manual" na interface executa exatamente isso (a solução "Automático" também a executa em seguida quando o canal rápido não funciona).


2. Como o modo automático encadeia (v1.5 adiciona a cadeia, v1.6 corrige o automático na inicialização, v1.7 adiciona a configuração de anúncios do instalador, v1.8 corrige o reinício na inicialização e a configuração de anúncios, v1.9 corrige o "su não existe")

Clique manual no botão (na interface)
   └─ Executa no processo atual: solução "Automático" = canal rápido → manual; solução "Manual" = manual direto
Baixar ferramenta