
Pacote de pesquisa de exploit do kernel Android para CVE-2026-43499, contendo o código-fonte do exploit popsicle, payload su incorporado, auxiliar de ponte root e artefatos de build reproduzíveis.
Data de geração: 2026-08-08
Este diretório já organizou a árvore completa de código-fonte do popsicle que pode ser recuperada no projeto atual, os cabeçalhos necessários, o payload su embutido, os binários de produção e os scripts de execução.
É necessário distinguir:
source-final-correspondence-20260808/
├─ source/
│ ├─ exploit/
│ │ ├─ popsicle/
│ │ │ ├─ main.c
│ │ │ ├─ util.c
│ │ │ ├─ slide.c
│ │ │ ├─ fops.c
│ │ │ ├─ pipe.c
│ │ │ ├─ preload.c
│ │ │ ├─ root_bridge_helper.c
│ │ │ ├─ su_blob.S
│ │ │ ├─ su_daemon.c
│ │ │ ├─ common.h / offset.h / target.h
│ │ │ ├─ kernelsnitch/
│ │ │ └─ build/embed/su_daemon_aarch64_pie
│ │ └─ ghostlock-oneplus/kernelsnitch/
│ └─ target-files/popsicle-target.h
├─ embed/su_daemon_aarch64_pie
├─ artifacts/production/
├─ runtime/
├─ review-build/
├─ rebuild-current-source.ps1
├─ source-files.sha256
├─ binary-function-size-diff.md
├─ binary-function-size-diff.csv
└─ manifest.json
Arquivo de produção:
artifacts/production/t807d-popsicle-r562-show-callback-canonical-20260804.so
SHA-256:
B6DED21F90096A2FA2567807F79E7E8CCFDF9802DAF4628277A333DD8FE7DB71
Principais entradas de código-fonte:
Arquivo de produção:
artifacts/production/t807d-root-bridge-helper-r557-show-verify-callback-20260804
SHA-256:
F7FF4C293902993183F98A8D314FA2ECD012A72A36F287A361C4503844EAAB91
Principais entradas de código-fonte:
| Objeto de produção | Código-fonte correspondente |
|---|---|
| root bridge, marker, cred, SELinux, lógica auxiliar do KSU | source/exploit/popsicle/root_bridge_helper.c |
| Símbolos de limite do su embutido | source/exploit/popsicle/su_blob.S |
| Conteúdo do su | source/exploit/popsicle/build/embed/su_daemon_aarch64_pie |
Foram completadas duas dependências de caminho relativo que são fáceis de esquecer.
Primeiro, a referência em target.h:
#include "../../target-files/popsicle-target.h"
Portanto, o código-fonte deve manter:
source/exploit/popsicle/target.h
source/target-files/popsicle-target.h
Segundo, popsicle/kernelsnitch/utils.h e kernelsnitch.h continuam referenciando:
../../ghostlock-oneplus/kernelsnitch/...
Portanto, source/exploit/ghostlock-oneplus/kernelsnitch/ também deve ser preservado.
Copiar apenas source/popsicle resultaria em um snapshot incompleto que "parece completo, mas na prática não compila". Este pacote de restauração já foi organizado conforme o layout original de caminhos relativos.
Toolchain:
NDK: D:Android
dk 29android-ndk-r29 API: 35 ABI: AArch64
Execução:
powershell.exe -NoLogo -NoProfile -ExecutionPolicy Bypass -File .
ebuild-current-source.ps1
Resultado da recompilação do código-fonte atual:
| Arquivo | Tamanho | SHA-256 |
|---|---|---|
| review-build/rebuild-current-source.so | 139600 | D5C8CF6D3A0A223F0BB3319FFAE926EF3EDF56DEF520B0A99CF7526B4437EC1A |
| review-build/rebuild-current-source-helper | 75008 | 025FD4BEB793227D9595D5739483798BBB8CDB94B69734399BE4C9F329032D8F |
Isso prova que a árvore de código-fonte é compilável, mas não pode substituir os binários de produção já verificados em artifacts/production.
Evidências da linha do tempo:
Pelo menos o conteúdo atual de common.h, pipe.c, preload.c, root_bridge_helper.c e util.c foi gravado ou modificado somente após a geração dos dois binários de produção.
Também não foram encontrados no projeto:
Portanto, partindo dos materiais existentes, o que é possível fazer é recuperar todo o código-fonte disponível e localizar as diferenças, mas não é possível transformar reversamente o ELF de produção no código-fonte C byte a byte da época.
binary-function-size-diff.md apresenta as diferenças de tamanho de função entre os arquivos de produção e os arquivos recompilados a partir do código-fonte atual.
Principais diferenças do r562 SO:
Principais diferenças do r557 helper:
Essas diferenças são consistentes com as direções de correção registradas na revisão de código do Round592: cópia de caminho de variável de ambiente, diferença de endereço de símbolo de linker independente, tratamento de falha de alocação, limpeza de reclaim, etc.
Os hashes completos do código-fonte estão em source-files.sha256. Os hashes dos artefatos de produção, scripts, arquivos embutidos e resultados de build de revisão estão em manifest.json.
Entrada do teste desta vez:
run_t807_jailbreak.cmd
PowerShell correspondente:
run_t807_jailbreak.ps1
Ele referencia fixamente:
test-payload-current-source/
Nele, o SO e o helper são os artefatos recém-recompilados a partir de source/, e não os arquivos de rollback r562/r557 em production/. O script define ForceCurrentSourceTest=true, portanto, mesmo que o dispositivo já esteja em estado de root via KernelSU, ele continuará enviando e testando os novos artefatos desta vez.
As três saídas completas desta compilação:
| Arquivo | SHA-256 |
|---|---|
| review-build/rebuild-current-source.so | D5C8CF6D3A0A223F0BB3319FFAE926EF3EDF56DEF520B0A99CF7526B4437EC1A |
| review-build/rebuild-current-source-helper | 025FD4BEB793227D9595D5739483798BBB8CDB94B69734399BE4C9F329032D8F |
| review-build/su_daemon-rebuild | D57A7F657C8DD931D2C6A82306FA097AAD14AB11E5B773F1689DD03026A880FB |
A saída de log vai para logs-current-source/.
| Objeto de produção | Código-fonte correspondente |
|---|
| Fluxo principal do SO | source/exploit/popsicle/main.c |
| Utilitários genéricos de kernel e espaço de usuário | source/exploit/popsicle/util.c |
| slide e localização de endereços | source/exploit/popsicle/slide.c |
| fops e caminho de disparo do pselect | source/exploit/popsicle/fops.c |
| pipe, reclaim, direct write | source/exploit/popsicle/pipe.c |
| Entrada do LD_PRELOAD e escrita do arquivo su | source/exploit/popsicle/preload.c |
| Símbolos de limite do su embutido | source/exploit/popsicle/su_blob.S |
| Definições comuns | common.h, offset.h, target.h |
| Configuração de alvo | source/target-files/popsicle-target.h |
| Cabeçalhos do KernelSnitch | source/exploit/popsicle/kernelsnitch/ e source/exploit/ghostlock-oneplus/kernelsnitch/ |
| Conteúdo do arquivo embutido | source/exploit/popsicle/build/embed/su_daemon_aarch64_pie |
| Definições comuns e configuração de alvo |
| o mesmo que r562 |
| Objeto | Horário do arquivo |
|---|
| Arquivo de produção do r557 helper | 2026-08-04 22:47:29 |
| Arquivo de produção do r562 SO | 2026-08-04 22:59:05 |
| main.c | 2026-08-04 22:22:16 |
| slide.c | 2026-08-04 21:54:58 |
| common.h | 2026-08-05 08:07:26 |
| pipe.c | 2026-08-05 08:07:34 |
| preload.c | 2026-08-05 08:07:30 |
| root_bridge_helper.c | 2026-08-05 08:10:10 |
| util.c | 2026-08-05 08:14:57 |