
app che porta CVE-2019-2215 su arm32 e monta un binario su in /sbin con denylist + installer di app root. Inclusa guida firehose/Magisk
Accesso root per il Sonim XP3800. Sono disponibili due metodi — scegli quello più adatto alla tua situazione.
L'app Root Manager sfrutta CVE-2019-2215 (una vulnerabilità kernel use-after-free del binder) per ottenere i permessi di root direttamente sul dispositivo. Nessun computer, nessuno sblocco del bootloader, nessun flashing richiesto. Il binario dell'exploit è un port ARM32 sviluppato da zero specifico per il kernel 3.18.71 dell'XP3800 — ogni offset delle strutture del kernel è stato derivato dal reverse engineering del kernel binario del dispositivo.
Installa l'APK tramite ADB (l'XP3800 blocca l'installazione di APK dal dispositivo stesso), tocca Installa e il root viene scritto permanentemente in /system/bin/su. Il root persiste dopo i riavvii senza servizio di avvio o processo in background — il binario è semplicemente lì, come qualsiasi altro comando di sistema.
adb install RootManager.apk
La prima volta che su viene invocato dopo un avvio, esegue l'exploit del kernel (~1,2 secondi) e avvia un demone root persistente. Ogni successiva chiamata a su si connette al demone istantaneamente (~0,13 secondi) — nessun exploit, nessuna manipolazione del kernel. Il demone entra nel namespace di mount del PID 1 tramite setns(), quindi i comandi hanno accesso completo al filesystem, incluso /system.
L'exploit è serializzato con flock() per prevenire esecuzioni concorrenti (che causerebbero il panico del kernel) e riprova fino a 3 volte in caso di fallimento.
su viene installato permanentemente in /system/bin. Nessun tmpfs, nessun ricevitore di avvio, sopravvive a riavvii e reset di fabbrica./system è un semplice ext4, rimontabile liberamente in lettura-scrittura. Le modifiche persistono tra i riavvii.com.verizon.mdm.basicphone di Verizon e disabilitalo (o ripristinalo). Vedi Rimozione di Verizon MDM. Crediti: @anonymousfliphonesoom_score_adj = -1000). Vedi Il demone.su. Filtra per Utente/Sistema/Tutti, cerca per nome o pacchetto.Il binario su ha una denylist incorporata. Per impostazione predefinita, qualsiasi app può usare su a meno che non sia nella denylist. Gestisci la denylist dalla schermata principale dell'app: seleziona la casella accanto a qualsiasi app per bloccarla.
Termux e la shell ADB (uid 2000) sono sempre consentiti indipendentemente dalla denylist. Sono supportate voci con caratteri jolly come com.example.*.
L'alternativa è flashare un'immagine di boot patchata tramite la modalità EDL di Qualcomm e QFIL.
Dettagli importanti:
dd una volta ottenuto il root. Non scaricare immagini di boot da internet — altre varianti o versioni del firmware potrebbero non corrispondere al tuo dispositivo e potrebbero impedire l'avvio.L'XP3800 non ha dm-verity — la partizione /system è un semplice filesystem ext4 senza controllo di integrità. Il flag androidboot.veritymode=enforcing è impostato nella riga di comando del kernel ma è completamente inoperante: non ci sono dispositivi device mapper dm-verity, nessuna partizione vbmeta e nessun albero hash.
su -c "mount -o remount,rw /system"
# fai le tue modifiche
su -c "mount -o remount,ro /system"
Le modifiche persistono tra i riavvii. Fai attenzione a cosa cancelli — rimuovere il file di sistema sbagliato può causare un bootloop del dispositivo.
Richiede Termux con aapt2, ecj, d8, apksigner, zip e ~/.android/{android.jar,framework-res.apk,debug.keystore}.
./build.sh
Output: RootManager.apk
L'exploit e la sua implementazione sono documentati in dettaglio:
Questo software è fornito così com'è senza garanzia. L'autore non si assume alcuna responsabilità per dispositivi brickati, rotti o altrimenti danneggiati. Usalo a tuo rischio.
| Comando | Descrizione |
|---|
su | Shell root interattiva (preserva l'ambiente del chiamante) |
su -c 'cmd' | Esegue un comando come root (usa la shell di sistema e il PATH) |
su cmd | Uguale a -c |
su -p -c 'cmd' | Esegue un comando preservando l'ambiente completo del chiamante |
su --preserve-environment -c 'cmd' | Uguale a -p |
su -s bash -c 'cmd' | Specifica la shell |
su --daemon | Avvia manualmente il demone root (richiede root) |
su --mount-master | Accettato per compatibilità (no-op — il demone ha già il namespace di mount completo) |
su -v | Output verboso dell'exploit |