Sandboxing di Chrome: un “casino” su Linux
In News il 3/06 @ 18:33 trackbackIl sandboxing è un espediente per aumentare la sicurezza di applicazioni, in questo caso di Google Chrome, isolandola dal sistema per evitare che un eventuale buco vada a compromettere tutto il resto.
Leggo su OSNews che secondo gli sviluppatori di Google Chrome, implementare tale caratteristica su Windows è stato “un affare complicato”, su Mac OS X facile… e su Linux un casino. Per forza: non è ancora emerso un sistema unificato per avere il sandboxing su Linux, tra l’abbandonato AppArmor (SUSE, Ubuntu), il mai decollato SELinux (Fedora), LSM e altre tecnologie alternative. Tutta questa varietà sarà anche un ottimo principio filosofico, ma poi di fatto frena chi deve creare applicazioni che funzionino bene per tutte le distribuzioni. Solita vecchia storia.
|
— Pagine forse correlate:
Commenti »
In realtà l'unico sistema utilizzato a livello enterprise è SElinux (per quanto sia incasinato), ed è su quello che bisognerebbe convergere…
Non so se sono OT, ma ho una domanda: che rapporto c'è tra chromium e chrome?
Io ho capito che chromium è il “cuore”, software libero, e chrome è una sua “pacchettizzazione” proprietaria. E' corretto?
Continuerà ad esistere una versione libera e una proprietaria del “cuore” chromium?
Forse perché alcune distribuzioni hanno preferito seguire una via meno difficile (AppArmor) o ignorare il problema piuttosto che investire risorse in una adeguata implementazione di SELinux?
Ti dico di più: in realtà c'è anche SRWare Iron che rimuove le funzionalità “spione” di Chromium:
http://en.wikipedia.org/wiki/SRWare_Iron
Strano che non sia uscito prima per MAC e poi per tutte le altre piattaforme, visto che è stato così semplice programmare la SandBox.;)
@Felipe: un ottimo principio (togli l'apostrofo!)
Uso Linux e soprattutto Ubuntu da tre anni, per cui sono e resto poco più di un principiante. Però inizio a percepire la sensazione, o il timore, che Linux resterà sempre un divertente banco di prova per chi, come il sottoscritto, si vuole divertire con il pc. Non c'è niente da fare, la forza della pluralità dei progetti diventa nello stesso tempo la debolezza dell'offerta al pubblico. Troppa libertà = molta confusione?
Linux cresce piano e lentamente, ma costantemente. Chi parla sempre di un boom imminente è un po' un illuso o uno che parla senza dati alla mano.
Inizierò a preoccuparmi solo quando la quota, invece che crescere leeeeeeeentamente, comincerà a diminuire. Finora non è mai successo.
a me sembra piuttosto stazionaria.
è probabile che tu abbia ragionissima, il problema è che finché qualcuno non imporrà una scelta definitiva, dall'alto, sarà dura standardizzare; come d'altra parte succede in molti altre situazioni che riguardano Linux come piattaforma.
Pensate che nel kernel 2.6.30 è stato integrato un altro framework di sicurezza ( due per l'esattezza , ma solo uno può essere paragonato per funzionalità a SeLinux e Apparmor ) : Tomoyo http://tomoyo.sourceforge.jp/
Senza contare GrSecurity
Sono d'accordo, se non altro per il fatto che è integrato nei sorgenti di Linux.
Tutte le altre cose vanno bene, ma non mi si venga a dire che non c'è un modo ufficiale. Esiste, è in Linux, senza bisogno di patch.
Acc… maledetti edit, grazie ;)
Poi quando “oso” dire che i fork sono il male di linux vengo sempre smentito nelle maniere più fantasiose.
Ecco qui un esempio evidente che la frammentazione è male.
Qui stiamo tornando al post “Linix fa schifo” che in realta' significa “il software per il desktop Linux fa schifo”. Chrome per Linux e' come Firefox per Linux e qualsiasi altra cosa per Linux. La frammentazione non e' la causa, e' l'effetto.
La causa e' che il software per Linux e' sviluppato come hobby e quindi ognuno fa le sue cose come gli pare. Mi sembra abbastanza ridicolo aspettarsi che siano le distribuzioni a lavorare per l'unificazione degli sforzi che le priverebbe della loro ragione di esistere. Oltre al fatto che nessuno investe soldi per sviluppare qualcosa che poi deve regalare, altra triste verita' del software Linux.
In base a quali dati?
Infatti qui non si parla di fork, ma proprio di progetti diversi.
Se vuoi dirmi anche che uno tra Gnome e KDE è “di troppo” perché crea frammentazione dillo pure, ma io resterò di opinione opposta.
LorenzoC: il business model secondo cui uno dovrebbe sviluppare qualcosa e poi “venderla” e non “regalarla” é vecchio di almeno 10 anni (sarete rimasti tu, Microsoft e la EMI a crederci ancora probabilmente).
Casomai mostri del calilbro di google non avessero ancora insegnato niente al mondo…
Quindi selinux e apparmor, tanto per parlare di ciò di cui stiamo parlando, sono sviluppati da hobbysti che regalano il software?
Facciamoci due risate va. Prima di scrivere certe cose informati e collega il cervello, soprattutto.
LorenzoC: … nessuno investe soldi per sviluppare qualcosa che poi deve regalare …
A parte che le principali multinazionali (quali IBM, HP, Oracle, Nokia, ecc. ) investono parecchi soldi in progetti open source, ci sono migliaia e migliaia di altre aziende che fanno utili anche molto consistenti producendo software open di cui vendono licenze commerciali o servizi addizionali.
Ci sono casi in cui il software per linux è sviluppato per hobby, ma ci sono moltissimo software professionali (sia open che closed) !!
SELinux mai decollato… specificare l'ambito, dato che in ambito server si utilizza e anche molto (se si vuole una sicurezza più elevata)
Infatti SELinux fornisce tutto quello di cui si ha bisogno per implementare sandbox. E di fatto è “praticamente” uno standard (è presente di default su tutti i kernel e tutte le distribuzioni offrono il supporto a SELinux). Ora se nella pagina di google chromium alla voce SELinux c'è scritto che nessuno ha conoscenze per dire qualche cosa di sensato, comincio a capire coma mai hanno detto che su Linux è un casino implementare una sandbox.
Probabilmente parli per sentito dire.
Hai provato a cercare prodotti software per commercialisti, consulenti del lavoro, gestionali per aziende? Buffetti, Sistemi, Sole24Ore regalano software? E tutte quelle società che sviluppano moduli SAP li regalano? Diciamo che ormai tutti sono propensi a vendere servizio di assistenza, ma il software continuano a venderlo. e in alcuni casi non a buon prezzo.
Vorrei fare alcuni chiarimenti sulla questione portata da Filipe… dunque per prima cosa Ubuntu nel proprio kernel ha sia AppArmor che SELinux ed entrambe queste soluzioni sono sviluppate sopra LSE (definiamole dei wrapper). La difficoltà per quelli Google di non è l’implementazione in sé, visto che per Ubuntu e openSuse la cosa sarebbe più o meno subito fatta, ma come fare ad implementare la sendbox per le altre distribuzioni visto che non hanno ancora ben chiarito quale soluzione adottare nel proprio kernel.
Il casino insomma non è esattamente una questione di sviluppo, ma è dovuto all'attuale situazione delle distribuzioni Linux che adottano le tecnologie che meglio per loro vanno bene…
Male che vada potrebbe uscire un Chromium solo per Ubuntu e openSuse :D
Hai fatto il discorso a metà, infatti ci sono moltissimi software commerciali a sorgente aperto, soprattutto in un certo ambito applicativo e con software ben più complessi che quelli di Buffetti e Sole24Ore.
L'unica sarebbe quella di cerare un layer standard con il quale le applicazioni possano interfacciarsi.
Sarebbe un'ottima soluzione anche per altri mille progetti.
Pensiamo ad esempio alla ricerca desktop. Facciamo un layer standard capace di interfacciarsi con tracker,beagle,strigi,vattelaacercà e le applicazioni prendono i risultati indipendentemente da quello che ci sta sotto.
Un pò come fa phonon con i vari backend.
Così diamo libertà a tutti quelli che vogliono sviluppare qualcosa di nuovo, magari sperimentando altre tecnologie innovative e nello stesso tempo garantiamo la compatibilità.
“Imporre” mi sembra un termine forte. Uno standard secondo me non va imposto ma condiviso, finchè non emerge in maniera democratica il vincitore per “selezione naturale”.
C'è naturalmente bisogno di persone che prendono decisioni, ma mi piace pensare a queste decisioni come proposte, non come imposizioni.
Anche io a volte ho avuto la stessa sensazione.
Per me rimarrà sempre un banco di prova su cui gli smanettoni potranno sperimentare liberamente (l'essenza dell'innovazione). Ma per diventare ANCHE una piattaforma realmente utilizzabile in ambito consumer, dall'attuale arena di alternative dovranno emergere delle opzioni (parlo di componenti software, non di distribuzioni) che forniscano al sistema quella massa critica e quell'uniformità strutturale necessaria per penetrare maggiormente il mercato.
Lo stesso ambito che gli sviluppatori di Chrome definiscono “a mess” :/
Quando argomenti fai anche i nomi prego.
Maledetta fretta non si capisce quello che volevo esprimere e molto probabilmente ho franteso anche il tuo intervento..
Nello specifico mi riferivo a questo
***************
il business model secondo cui uno dovrebbe sviluppare qualcosa e poi “venderla” e non “regalarla” é vecchio di almeno 10 anni (sarete rimasti tu, Microsoft e la EMI a crederci ancora probabilmente).
***************
Non e' vero che sono rimasti in pochi a crederci ancora. Solo questo.
E per il momento non entro nel dettaglio “quello e' meglio di quello” :-)
apparmor abbandonato? Oo
Cioè in pratica hanno difficoltà a implementare una sandbox SELinux based
Qualcuno può gentilmente indicare loro che esiste un editor anche abbastanza intuitivo : http://seedit.sourceforge.net/
Ho capito il tuo intervento, quello che volevo precisare è che ci sono moltissime case software che prodotti commerciali a sorgente aperto (o contribuiscono molto attivamente al loro sviluppo).
Esempi: Hp, Sun, Oracle, Adobe, IBM, ecc. ecc.
Fortunatamente :-)
Hai notato che tutti quelli che hai nominato danno un colpo al cerchio e una alla botte?
Forse non esiste un modo giusto e uno sbagliato. Dipende…
Eh no, eh? Decidi: o è democratico o è per selezione naturale :D
Non c'è nulla di democratico nella selezione naturale! O mi sono perso qualcosa? ;)
Io non voglio togliere a nessuno il piacere di giocare con Linux e di usarlo per imparare e magari anche di farne una professione. Linux esiste e ha ragione di esistere.
Detto questo, torno a dire che le distribuzioni solo l'ultima “entita'” a cui chiedere di contribuire alla “standardizzazione” o alla “unificazione”, visto che esistono SOLO perche' non esiste niente di standard e di unificato. Inoltre, il miliardario che in questo momento investe in Ubuntu non ha nessuna intenzione di spendere soldi suoi per sviluppare un qualsiasi software che non sia funzionale a “vendere” il suo prodotto. Dove per “vendere” si intende creare sopra il successo della propria distribuzione un mercato per i servizi a pagamento. In effetti fa esattamente il contrario e cioe' prende pressoche' gratis il lavoro di altri (a partire da Debian), lo impacchetta col suo logo e lo ripropone come fosse roba sua. Direi che il bilancio e' abbastanza “negativo” visto che l'investimento di Ubuntu si limita allo “impacchettamento”.
Riguardo le divinita' superiori tipo IBM, Sun, eccetera, che investirebbero in progetti Open Source, la quota di “mercato” di Linux dello 1% dopo “n” mila anni dimostra abbastanza chiaramente da una parte che sarebbero scemi ad investire con la prospettiva di un ritorno di queste proporzioni e dall'altra che in effetti non investono in nulla che abbia un effetto concreto nello allargamento di questo mercato. Puo' darsi che sviluppino qualcosa per ragioni loro e poi quando non hanno prospettive di farne un prodotto commercializzabile lo rendano disponibile con l'idea di cavare fuori quanto possibile dalla nicchia Linux e similia. Vedi Java diventare “open” quando la quota di mercato e' scesa sotto una certa soglia, non prima.
mi piace questa idea del layer. Facciamola.
Poi arriva Tizio e dice, chemmerda, litiga con gli sviluppatori e forka una versione incompatibile, e metà delle distro la adottano; poi Tizio cambia licenza e Caio forka e ne crea un'altra e un'altra parte delle distro si ridistribuisce tra il layer 1 2 e 3.
Continua fino ad N.
A questo punto creiamo un layer di astrazione da 1,2, …, N; poi Pippo forka il layer B da A, poi Pluto, ecc
:P
Non è più semplice mettersi d'accordo, anche se a costo di perdere qualche piccola “libertà di scelta” ? :)
ciao
la libertà non esiste
Come è successo con l'audio. Risultato? un casino totale in cui non funziona una beata fava. Effetti? Gli sviluppatori “esterni” impazziscono a stare dietro a tutte queste vaccate, e ogni 6 mesi i software che usano l'audio smettono di funzionare (esempi: flash, skype ecc.)
No per loro la difficoltà è scegliere il tipo di soluzione che possa andare bene per tutte quante le distribuzioni. Anche se a dire il vero la soluzione più diffusa sembra proprio essere SELinux… si vedrà insomma…
Potrebbero scegliere la via di Ubuntu ( e mi pare che anche in OpenSUSE sia così ) : Apparmor e SELinux sono entrambi supportati … SELinux richiede che i programmi siano compilati con il supporto a SELinux stesso mentre Apparmor no … quindi i programmi di Ubuntu possono benissimo girare sia in ambiente SELinux protected sia in ambiente Apparmor protected.
Potrebbero compilare chromium con il supporto a SELinux , inserire uno shell/perl/python script da eseguire prima della fase di installazione per stabilire quale dei due framework è attualmente in uso – facile da implementare : basta controllare il path /sys/kernel/security – , installare ad occorrenza la relativa policy SELinux o il relativo profilo di Apparmor , richiamare il relativo init script per il reloading delle policies SELinux o dei profili di Apparmor e infine installare il programma.
Magari effettivamente è un po'complicato , ma che diamine … loro so' Google , non $Noi_Vendiamo_Aria_Fritta (cit) srl
Shuttleworth non ruba niente! Nel pieno rispetto delle licenze riutilizza il software per fare di gnu/linux il sistema più diffuso!
Si occupa di marketing, meno di produzione ex-novo.
Non esiste nessuna distribuzione a cui va il merito di produrre tutto in casa!
beh, perchè ancora non c'è effettivamente uno standard.
Se io phonon definisco tutte le interfacce, e tu xine parli con me, e gstreamer parla con me, qualsiasi applicazione può parlare con l'uno o con l'altro tramite me (non preoccupandosi nemmeno di cosa ci sia sotto). Beh, è banale, insomma, è come un qualsiasi driver. Prendiamo ad esempio la stampante. L'applicazione chiama la routine di stampa (standard), punto. Poi quale sia effettivamente la stampante e quale driver ci stia sotto non è di sua competenza.
Certo, se poi già le interfacce sono un casino… questo è un altro discorso.
Io la vedo invece come l'enesima botta al mondo linux da parte di google… Com'è schifano tanto le cose proprietarie e poi chrome è uscito prima per Windows poi uscirà per mac e alla fine forse anche per linux? e poi come non parlare del fatto che due dirigenti di google dovranno decidere per quale azienda lavorare perchè stanno anche con Apple??? e allora questa frase “su Windows è stato “un affare complicato”, su Mac OS X facile… e su Linux un casino” inizia ad avere un senso fà tutto schifo tranne Mac OS X dove è tutto “facile” ??? come è stato detto il sistema unificato c'è ed è nel kernel…
Scusate se sono pessimista ma questa è la mia chiave di lettura, è più che ovvio che ognuno spinga verso i propri interessi, e sempre più spesso vedo un legame a doppio filo tra Google e Apple e ciò non mi piace pernulla… Inoltre il riassunto finale della frase sopra citatà è anche “tutto ciò che è proprietario è buono poi se è di apple è ancora meglio, se non è proprietario fa schifo e non ne vogliamo sapere”..
No, io parlo di livelli più bassi: OSS, ALSA, PULSEAUDIO e via dicendo. E' un incubo, e ogni 6 mesi si riparte da capo. Inoltre, pensare di fare librerie di compatibilità tra un sottosistema ed un altro, a parte essere una cosa folle dal punto di vista del design, è un approccio che, come dimostrato ampiamente dalla storia, non funziona!
chi usa Linux (una qualsiasi distro) da più di 6 mesi sa di cosa sto parlando.
con queste premesse non si va da nessuna parte.
Guarda che la maggior parte dei progetti di IBM, Sun, ecc. open, nascono open, non lo diventano col tempo quando non hanno prospettive. Quello che non vuoi capire è che se un progetto è open non vuol dire che non sia commercializzabile. IBM, Oracle, Adobe ecc. hanno ampi ritorni economici sugli investimenti in prodotti open. Oltre a queste ci sono tantissime altre aziende che investono solo in prodotti open (e anch'esse con ottimi ritorni economici).
La percentuale dell'1% non ha nessun valore per tre motivi. Il primo che questa si riferisce al parco macchine mondiale e non a specifici settori. Specifici settori (server, settori ingegneristici, centri di calcolo, animazione 3D e effetti speciali, sviluppo software, embedded, gestione infrastrutture din rete, ecc.) sono quelli che maggiormente generano ricavi, e li le proporzioni sono ben diverse (arrivando fino a più del 90% per esempio nel campo di animazione 3D e effetti speciali cinematografici). La maggior parte dei computer mondiali sono costituiti da sistemi a basso valore aggiunto (lapdop, netbook, ecc.) e quindi non ha senso fare un unica percentuale. Ed infine queste cifre sono molto indicative perchè, per come sono campionati i dati, la diffusione linux è ben superiore dell' 1%.
In realtà ai livelli più bassi c'è ALSA (o OSS su sistemi più vecchi). PULSEAUDIO, jack, esound, ecc. sono sistemi intermedi. Penso che la frammentazione da ridurre sia proprio quella nei sistemi intermedi. Se si utilizza il solo layer a basso livello (ALSA) non si hanno gli effetti che dici, se si lavora su livello intermedio allora si.
In effetti non mi sono espresso bene.
Diciamo che sarebbe bello (forse) che una tecnologia emergesse esclusivamente per i propri meriti ma come sappiano bene non sempre è così ;) In gioco ci sono sia meriti tecnici che pubblicità e fattori umani.
Riformulando il mio commento precedente, credo che dovrà emergere una piattaforma stabile e condivisa per essere largamente utilizzata. Sempre comunque incoraggiando l'innovazione.
Non so se questo sia possibile o anche desiderabile, ma lo vedo come l'unico modo per incrementare la base di utenza attirando al tempo stesso più utenti e più supporto da parte dell'industria.
Sono riusciti a fare qualcosa: http://dev.chromium.org/getting-involved/dev-ch...
Mi chiedo dove sia il problema. In tutte le distribuzioni si può supportare SELinux o AppArmor. Se non lo sono di default basta aggiungere quello che manca.