Superutente assistito dal kernel (KernelSU)

click fraud protection

A differenza di Magisk, KernelSU incorpora la capacità di ottenere il root nel kernel stesso. Induce la shell a pensare che /system/bin/su esista sul dispositivo.

Root è molto speciale per noi di XDA. Consente agli utenti di assumere il controllo dei propri dispositivi e aggiungere funzionalità che non sono sempre disponibili, come la registrazione delle chiamate, i temi e il monitoraggio avanzato della batteria. Ci sono state alcune implementazioni root nel corso degli anni, la più popolare probabilmente è SuperSU. Recentemente, però, con l'introduzione di SafetyNet e le crescenti restrizioni sui dispositivi rooted, Magisk è stata l'implementazione root di scelta, poiché la sua funzione Magisk Hide consente agli utenti di nascondere in modo efficace il fatto di avere root da app come Netflix e Google Paga. Tuttavia, l’implementazione e la funzionalità di Magisk Hide è in gran parte un gioco del gatto e del topo in cui Google lo applica e Magisk lavora attorno a quella patch.

Magisk viene eseguito in quello che è noto come spazio utente. Questo è anche il luogo in cui viene eseguita la maggior parte dei programmi del telefono, siano essi giochi, lettori musicali o fitness tracker. È lo “spazio” rivolto all’utente del sistema operativo del dispositivo. Lo spazio utente è anche il luogo in cui si svolge la maggior parte della battaglia per Magisk Hide. Sfortunatamente, col passare del tempo e con le patch di Google sempre maggiori dei metodi di Magisk Hide, rimane sempre meno spazio per nascondersi. In futuro Magisk potrebbe perdere la capacità di nascondere completamente il root.

Pianificando questa eventualità, XDA Recognized Developer zx2c4 (Jason Donenfeld), conosciuto qui su XDA per il suo lavoro su WireGuard e la scoperta di a Vulnerabilità del bootloader di OnePlus, ha creato Superutente assistito dal kernel (KernelSU).

A differenza di Magisk, KernelSU incorpora la capacità di ottenere il root nel kernel stesso. Qui dirotta le chiamate di sistema per ingannare la shell e farla pensare /system/bin/su esiste sul dispositivo, quando in realtà non è così. Quindi esegue i comandi eseguiti con su come se fossero normali comandi, ma con privilegi di root. Questo processo non può essere impedito da SELinux (il kernel può anche disabilitare SELinux se lo desidera) e la capacità di nascondere lo stato di root dallo spazio utente, e quindi da SafetyNet, è quasi illimitata.

KernelSU, tuttavia, è lungi dall'essere completo. Al momento, non esiste alcun meccanismo di controllo degli accessi (si pensi a Magisk Manager). Per questo motivo, KernelSU è attualmente più utile agli sviluppatori del kernel piuttosto che agli utenti. Il processo di creazione di un kernel richiede agli sviluppatori di ricostruire e caricare costantemente immagini di avvio per testare e correggere bug e funzionalità, e avere root rende tutto ciò molto più semplice. Tuttavia, con opzioni root come Magisk o SuperSU, l'immagine di avvio deve essere corretta dopo ogni build affinché root funzioni, il che può avere un impatto significativo sul processo di sviluppo. KernelSU, d'altra parte, è pensato per essere integrato in fase di compilazione, senza necessità di patch post-compilazione. Per rendere l'integrazione di KernelSU facile per gli sviluppatori, è disponibile un semplice comando di una riga:

curl -LsS "https://git.zx2c4.com/kernel-assisted-superuser/plain/fetch-and-patch.sh" | bash -

Una volta eseguito, KernelSU può essere integrato nel kernel come parte del normale processo di compilazione. Ciò significa che gli sviluppatori possono creare e testare facilmente i propri kernel, senza doversi preoccupare di aggiungere root.

Sebbene KernelSU sia ancora agli inizi e sia necessario ulteriore lavoro per renderlo completo di tutte le funzionalità, è un progetto interessante. Abbiamo parlato con Magisk-creatore, sviluppatore riconosciuto XDA topjohnwu, riguardo KernelSU, e lo ha trovato anche interessante, affermando che, poiché KernelSU opera a livello del kernel, La funzionalità di Magisk Hide sarebbe molto più affidabile se aggiunta e sarebbe una "cosa divertente da fare". strumento."

Se sei uno sviluppatore di kernel o ROM interessato a KernelSU, dai un'occhiata al Discussione XDA e il homepage del progetto per saperne di più.