Perché Android utilizza SELinux?

8

Per limitare i processi sandbox Android utilizza SELinux. Perché quella soluzione scelta e non la capacità di linux o cgroups + namespaces? Dopo tutto, anche i cgroups + namespaces sono fatti in casa per loro. Cosa offre SELinux o cosa non offrono gli altri?

    
posta user220201 08.08.2015 - 22:27
fonte

2 risposte

3

cgroups e namespaces riguardano l'isolamento mentre SELinux è un sistema di controllo accessi obbligatorio: accesso a grana fine su cui sono consentite le chiamate di sistema, come le informazioni possono scorrere tra i processi (domini).

Le autorizzazioni di Android a cui le applicazioni devono iscriversi possono essere facilmente applicate tramite SELinux, in quanto possono elaborare l'isolamento e anche molte potenziali vulnerabilità possono essere mitigate tramite la politica di SELinux (a condizione che lo sfruttamento della vulnerabilità non sia contenuto nell'applicazione o è una vulnerabilità del kernel).

cgroups e namespaces hanno una funzione diversa, non necessariamente esclusiva: SELinux, cgroups e namespace possono essere usati insieme (il supporto SELinux migliorato per gli spazi dei nomi è stato elaborato, ma possono essere già utilizzati insieme).

    
risposta data 09.08.2015 - 09:46
fonte
2

La tecnologia dei cgroups + namespaces è molto più recente e ancora un po 'in evoluzione. Ci vuole un sacco di tempo per rielaborare qualcosa di così fondamentale. Ricorda che Android è preso da Google da un branco di produttori di hardware e personalizzato per le loro offerte, e su quelli che un esercito di sviluppatori indipendenti offre software.

Questo è molto diverso da una tipica distribuzione Linux, offrono la maggior parte del software che avresti bisogno configurato per funzionare senza intoppi e sono in grado di fare un tale passaggio con relativamente poco dolore a terze parti.

    
risposta data 09.08.2015 - 00:01
fonte

Leggi altre domande sui tag