Linux più sicuro di Vista?
A questa domanda proverò a dare una risposta analizzando alcuni fatti.
Innanzitutto Linux non è un sistema operativo (OS), ma un kernel, ovvero la parte più importante dell'OS: Linux internals (riprendendo dal testo di Tanenbaum) definisce kernel tutto ciò che su architettura x86 gira su ring0 (in alcuni casi -1) ovvero con più alto livello di privilegio. Quindi confrontare Vista a Linux è già sbagliato in partenza: sarebbe come confrontare una Alfa 145 con il motore Wankel. Infatti 'Linux' non è installabile così com'è ma solo attraverso le distro. Questa differenza è fondamentale per capire alcuni concetti esposti in seguito.
L'ideale sarebbe comparare Vista con Ubuntu, mia distro preferita giudicata da tantissimi la più usabile (la cui prossima versione della distro sarà rilasciata in Aprile).
Quando Windows viene buildato (terribile neologismo) viene creata un'immagine DVD contenente sia il kernel sia il resto dell'OS. Il lavoro invece di creazione di una distro è leggermente diverso perché somiglia molto di più all'assemblaggio di pezzi diversi di origine diversa (il kernel proviene da qui, openoffice da qui, ecc.). Il lavoro di chi produce una distro - nel caso considerato il team di Ubuntu - è quello di verificare che tutti i pezzi siano fondamentalmente compatibili fra di loro, compilare i vari flavor (x86, amd x86, x64, ecc.), aggiungere varie raffinerie© (font, sfondi, suoni, icone) e distribuire online.
Prima fondamentale differenza: nel caso di Vista, un'unica entità commerciale - Microsoft(MS) - è responsabile di tutta la "filiera" (come il team Ferrari corse
): a cominciare dal kernel per finire con il campo minato. Nel caso di Ubuntu la responsabilità è un po' distribuita. Cosa succede se si trova un baco di sicurezza in campo minato? Nel primo caso bisogna aspettare che MS prepari la patch; nel secondo caso bisogna aspettare che i campo-minato-linux-boys preparino la patch, la passino a quelli di Ubuntu, che a loro volta testeranno, ricompileranno la build e genereranno anche loro una patch.
Update 15 Aprile 2007: A dimostrazione che quello che ho scritto non è pura demagogia cito questo passaggio:
"You may be vulnerable if you do not manually patch your MadWi-Fi driver," said Butti. Before making it public, he shared the flaw with the MadWi-Fi development team, who have released a patch. However, not all Linux distributions have yet built the patch into their code, said Butti.
In poche parole è stato trovato un baco nello stack Wi-Fi (simile a quello per Mac o più antico per Windows), la patch è pronta, ma le distro non tutte l'hanno già inclusa. Fonte.
Seconda fondamentale differenza: Windows viene compilato usando gli ultimi ritrovati in termini di sicurezza sul fronte dei compilatori. Il Service Pack 2 di XP (SP2) è un esempio: sono stati introdotti nuovi flag nel compilatore C++ (ad esempio /GS), e secondo quanto descritto in questa presentazione:
Most critical Windows components have been recompiled in SP2 using the /GS switch
- Components included in network facing processes
- Components that operateon un-trusted input
All other files required for the installation of SP2 have been recompiled with /GS switch
In Ubuntu avviene qualcosa di simile, ma siccome il compilatore è gestito da un'altra entità tale sinergia non è sempre possibile soprattutto in maniera così pervasiva.
Il fatto che la gestione del codice di Windows sia centralizzata ha permesso poi l'uso massiccio delle annotazioni SAL (Standard Annotation Language). SAL è una tecnologia interessante introdotta nei nuovi compilatori C/C++ (vedi punto precedente) che permette di descrivere meglio l'input-output delle funzioni. La documentazione è qui; ma è spiegata chiaramente anche qui. In breve le annotazioni SAL (che hanno la forma di macro C++) descrivono meglio al compilatore le caratteristiche importanti (come la larghezza del buffer) dei parametri sia in ingresso che in uscita delle funzioni: se ad esempio si prova a scrivere in un buffer dichiarato come input (__in) il compilatore genera un errore; stessa cosa se qualche linea di codice potrebbe scrivere in un buffer di output (__out) oltre la sua lunghezza dichiarata.
A questo punto è facile - tramite flag di compilazione - forzare l'uso di SAL nel codice di Windows.
Ad ulteriore prova che tali policy funzionano bene è questo post, che spiega perché una vulnerabilità critica in VML non si manifesti anche in Vista (e ciò nonostante il pezzo di codice incriminato sia presente anche in Vista!!!). Provate ad immaginare cosa accadrebbe se il team Ubuntu volesse imporre a tutto il codice che viene incluso nella distro l'uso forzato di simili costrutti!
Ma SAL non è l'unico miglioramento in termini di sicurezza. Mi limito a riciclare la tabella:
Inoltre la centralizzazione del controllo sul codice permette l'implementazione del Security Development Cycle (SDL). Per rilasciare qualcosa di mastodontico come Windows Vista, bisogna passare per un ciclo di sviluppo raffigurato qui sotto (l'immagine è riciclata da questo post dove è riportata la fonte):
In breve: il personale viene formato tramite corsi di sicurezza obbligatori basati su testi canonici e corsi in aula; il codice scritto - oltre ad essere compilato con i flag di sicurezza attivati - deve superare i "controlli di qualità" (tools automatici che spulciano il codice alla ricerca di API 'proibite' e altro). Viene poi ulteriormente analizzato, verificato per la sicurezza insieme agli esperti interni del settore ed affidato a review esterne. In cima a tutto ciò si sono aggiunte features di sicurezza come UAC (descritta più sotto).
Per contro si capisce bene che chi mette semplicemente insieme i vari pezzi (Ubuntu) non ha nessun controllo sul livello di qualità di chi li scrive e li mantiene (non voglio denigrare, ma gli estimatori dell'open source indicano spesso tra i vantaggi che chiunque possa contribuire e ciò va nella direzione opposta).
I risultati del SDL si son già visti con il SP2, Windows 2003 ed ora con Vista. Il SDL ha anche portato al design di nuove features come l'UAC (User Account Control) e tante altre (*). Nonostante però qualcuno paragoni UAC a Sudo, ci sono tre fondamentali differenze:
- Se ci si logga come amministratori UAC a differenza di Sudo non richiede la password ma solo una conferma (Apple ha provato a prendersi gioco di questo usando da suo stile la menzogna come mezzo di marketing: questo post in inglese spiega un po' la realtà delle cose).
- A differenza di tutte le altre implementazioni, sia la richiesta di password, che quella di conferma, avvengono su un desktop separato (Secure Desktop). Questo impedisce che qualcunque software possa in qualche modo interferire maliziosamente con tale richiesta (spoofing).
- Sudo usa un meccanismo di ticketing. Una volta inserita la password, si rimane 'full administrator' per 5 minuti (durata di default). Durante quell'arco di tempo tutte le operazioni che richiedono pieni privilegi verranno automaticamente autorizzate. Ciò significa ad esempio che se qualcuno dovesse manomettere 'notepad', e notepad venisse eseguito subito dopo un comando che richiede sudo, la porta è aperta ad eventuali disastri. Al contrario Vista richiede l'intervento dell'utente per ogni processo diverso. Qualcuno ha persino suggerito di disabilitare UAC: non fatelo, UAC è come una cintura di sicurezza.
Evito di ripetermi sul fatto che molti considerano l'OpenSource intrinsecamente più sicuro: qui e qui ci sono miei due post sull'argomento.
Bottom line: Vista è - in quanto a sicurezza - decisamente all'avanguardia. Consiglio caldamente a tutti quelli che usano Windows XP di fare l'upgrade. Non fatevi spaventare da problemi di appcompat perché si superano facilmente o da fantomatiche cazzate che si sentono in giro (1 2 3 4 5)!
A questo punto la risposta alla domanda posta nel titolo a me sembra ovvia. Ognuno però creda quel che vuole.
-quack
(*) altre tecnologie di sicurezza introdotte in Vista sono indicate in questo articolo di Russinovich.
UPDATE: coincidenza delle coincidenze, durante la pausa pranzo ho avuto modo di comprare il numero di Aprile 2007 di Linux Magazine che spiega perché - secondo l'autore Scott Granneman - Vista è meglio di Linux. Nello stesso articolo indica anche 10 ragioni opposte e tra le 10 (in cui Linux sarebbe meglio di Vista) vi figura la security per i seguenti tre motivi:
- UAC perché implementato male menzionando la pubblicità Apple (incredibile che l'autore creda alla pubblicità Apple e la riporti come fonte rilevante)
- Il firewall di Vista per motivi spiegati su C|Net. Cosa strana è che le mie prove su Ubuntu hanno dato gli stessi esiti di Windows. Le porte outbound sembrano aperte di default.
- Bitlocker è figo, ma è solo per Business/Ultimate. Per Linux invece c'è TrueCrypt che è gratis ed equivalente e quindi meglio. Mia opinione:
a) La differenza tra Bitlocker e TrueCrypt è abissale, in quanto per BitLocker c'è bisogno di un minimo di supporto nel kernel in modo tale che anche i file dell'OS possano essere criptati.
b) TrueCrypt è disponibile anche per Windows Vista.
In generale ho avuto l'impressione che il tono della rivista fosse dilettantesco. Altre due perle:
- DRM in Vista: per il DRM si fa riferimento all'articolo di Gutmann ampiamente criticato da tutte le direzioni (Gutmann ci tiene a far sapere che Vista non l'ha provato)
- Sulla para-virtualizzazione in RHEL 5 un altro autore ci tiene a far sapere che il vantaggio della para-virtualizzazione sta nel fatto di non richiedere hardware specializzato a differenza della virtualizzazione vera e propria che richiede "something that's only been available in the most recent AMD and Intel CPUs". Che questo sia falso lo sanno anche le pietre
Potrebbero interessarti anche:



Facebook,
Wikio,
Segnalo.

giovedì 22 marzo 2007 alle 9:48 AM -
Posso chiederti un paio di cose in proposito? Ho letto da qualche parte che gli unici virus per linux sono creati in laboratorio a scopo accademico e che in generale un qualsiasi virus in un sistema linux, se eseguito come utente normale, non arriva oltre un certo punto... Ora non ricordo se parlava di sistema hardenizzato o no... Volevo solo capire fino a che punto è vera sta storia...
Altra cosa, il grafichetto dei supporti di sicurezza non mi pare completo... riporta solo openBSD e RHEL 4, e quest'ultima roba nn ho idea di cosa sia
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 11:45 AM -
Premetto che non ho l'intento di discutere le tue affermazioni in campo tecnico.
Tu hai condotto un ragionamento che potrebbe essere definito coerente. Volevo solo far notare una cosa. Nel dimostrare la tua tesi, cioè che è falso che GNU/Linux sia più sicuro di Vista, ti sei basato solo su materiale ed opinioni dell'azienda che produce Vista. Sono il solo a trovarlo quantomeno singolare?
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 1:06 PM -
Beh, allora porta le argomentazioni che hai da controbattere... Se secondo te sbaglia, di dove. Può anche essere strano, ma dato che in tutti i post non mi pare abbia mai detto grandissime cazzate, non ci vedo niente di male...
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 3:13 PM -
Non ho mai detto che sbaglia, ne che ha ragione. Dico solo che se chiedi all'oste se il suo vino è buono, probabilmente ti rispondera di si.
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 4:03 PM -
Ok, il problema è: dove le prendi le informazioni, allora? Sul sito di no1984.org? Sul sito della EFF? Non mi pare che in giro ci siano molti siti che espongon le innovazioni di Vista o le sue caratteristiche senza dare addosso a win in generale e alla ms...
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 4:28 PM -
Si, il problema è dove prendi le informazioni. Ti sembra strano?
Il fatto è che affinchè un ragionamento porti ad una conclusione corretta è necessario che le sue premesse siano così evidentemente vere da non richiede a loro volta alcuna dimostrazione.
La persona che ha scritto questo articolo parte da delle basi che sono ampiamente discutibili, o per lo meno non esenti dai sospetti legati all'omogeneità della loro fonte.
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 5:00 PM -
Scusa, mi sono espresso male. Sto proprio chiedendo dove altro prendere le informazioni. Non puoi citarmi siti che danno contro alla ms e win, perchè se il sito ms è di parte, lo sono anche questi ultimi. Se riesci a citarmi una fonte imparziale, meglio. Non sto facendo polemica, bada, ti sto ponendo un problema oggettivo.
PS: uno come Russinovich può anche essere al soldo di zio bill, ma un qualunque programmatore/ricercatore/scienziato non dice solo cazzate, minerebbe troppo la sua credibilità, una volta che vengono a galla.
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 5:08 PM -
Nessuna polemica, solo una piacevole discussione
Credo che esista una verità sulla questione della sicurezza win vs linux.
Dico solo che l'autore del post, a mio parere, non la sta cercando nel modo giusto. Tutto qui.
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 6:48 PM -
ecce homo.
@Blackstorm
RHEL 4 è Red Hat Enterprise Linux (una distro per validare il confronto con Windows).
Si può scrivere malware per Linux? Certamente anche il peggiore: il ransomware. Il ransomware non ha bisogno di nessun permesso amministrativo, si limita semplicemente a criptare tutto il contenuto dell'home folder dell'utente e chiedere un riscatto per la chiave. Perché non c'è traccia di ransomware per Linux? Come per lo spam, fai 'affari' solo su grandi volumi, quindi se volessi scrivere ransomware - e fare profitto (per quale altro motivo sennò?) lo farei sicuramente per Windows per massimizzare i profitti. Detto questo apro una parentesi storica: il malware negli ultimi anni - da quando la banda larga ha cominciato a prendere piede - è mutato: se si ignora questo si finisce nei guai (il vecchio pong che cancellava settori a caso è niente a confronto).
@Ulisseo: io cerco di distinguere opinione e fatti. L'opinione è personale, il fatto è quanto di più oggettivo possa essere. Dopo di che bisogna chiedersi: come si misura la sicurezza? In due modi: analisi delle features (una macchina con 8 airbags è più sicura di una con due che è più sicura di una sprovvista) e analisi degli incidenti (la macchina X è meno sicura se produce più vittime della macchina Y a parità di numero di incidenti o se il numero di incidenti è statisticamente maggiore e sottolineo statisticamente: se _TUTTI_ guidano una Fiat, non si può affermare che la Citroen è più sicura perché non ci sono incidenti
).
Siccome la seconda non è possibile dato il fatto che Vista è uscito sul mercato relativamente da poco per farne un riscontro oggettivo, cerco di basare la mia analisi - ben lungi da essere completa - sul primo tipo di dati (quello delle features).
Le features mi sembrano parlano chiaro:
Vista implementa tutto quello che si può implementare in 'automatico' (cosa su cui Linux sicuramente recupererà in futuro tranne che per l'enforcing delle SAL) e di fatto ha un controllo di processo per sua natura superiore (i developer sono _OBBLIGATI_ a fare corsi di aggiornamento _PERIODICI_ sulla sicurezza). Per quanto mi sia sforzato di cercare materiale su Linux (ho citato Linux Internals) non ho trovato niente di lampante.
Detto questo faccio notare una cosa sola: la più grande differenza tra il mondo Windows pre-Vista e Linux stava nei permessi assegnati di default durante l'installazione e ciò andava indubbiamente a vantaggio del modello Linux. Ora che con Vista non si è più full administrator di default, il gap che c'era è colmato e - per via dell'implementazione di UAC più aggressiva - pure superato.
Permalink - Rispondi al commento
giovedì 22 marzo 2007 alle 6:55 PM -
Ovviamente son più che benvenuti tutti i link ad articoli sul tema.
Permalink - Rispondi al commento
venerdì 23 marzo 2007 alle 12:27 AM -
Tempismo:
http://www.internetnews.com/security/article.php/3667201
Permalink - Rispondi al commento
venerdì 23 marzo 2007 alle 12:46 AM -
Scandaloso... Il mondo si è rovesciato :))))
Permalink - Rispondi al commento
venerdì 23 marzo 2007 alle 1:43 AM -
Ho visto ora l'update... a che articolo di Gutman ti riferisci?
Permalink - Rispondi al commento
venerdì 23 marzo 2007 alle 2:01 AM -
questo: http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.html
Diventato ormai famoso in quanto l'autore ha dichiarato di aver fatto ricerca senza aver provato Vista. Ma dov'è finito il metodo scientifico?
La risposte più belle: http://www.fastsilicon.com/content/view/141/27/
http://windowsvistablog.com/blogs/windowsvista/archive/2007/01/20/windows-vista-content-protection-twenty-questions-and-answers.aspx
Permalink - Rispondi al commento
venerdì 30 marzo 2007 alle 8:13 PM -
Permalink - Rispondi al commento
venerdì 30 marzo 2007 alle 10:53 PM -
Ciao Giovanni e benvenuto a bordo.
Un paio di note.
1) Ho intitolato questo post "Linux più sicuro di Vista?" perché ho provato Linux (Ubuntu e limitatamente SuSe) e conosco bene Vista. Mi spieghi cosa centrerebbe *BSD? Non conosco bene i fatti su *BSD e se ti interessa potrei darti la mia *limitata* opinione.
2) Dove sta scritto che "reputo Vista immune da exploits"? Ho detto solo che, con tutte le misure proattive "in place" (che per quanto riportato dalla tabella sono implementate in parte anche in OpenBSD 3.0) scrivere un exploit sarà dannatamente più difficile. Già con il solo address space layout randomization (ASLR) i worm avranno solo una probabilità su 256 di eseguire "correttamente" il codice (nei restanti casi si limiteranno a mandare in crash il processo ospite). Chi dice che un OS è immune da exploits è un folle (e questa è la mia opinione)
3) Non conosco come viene sviluppato *BSD ma mi sembra di conoscere come viene sviluppato Linux (modello collage) e MacOS (derivato *BSD, modello monolitico, stile MS). Il fatto che nei primi 90 giorni (http://blogs.csoonline.com/windows_vista_90_day_vulnerability_report) il numero delle vulnerabilità di Vista sia notevolmente minore di quelle di Linux mi fa ben sperare nella correttezza del mio ragionamento. Come puoi notare anche quelle di MacOS (nonostante "numerose") sono minori di quelle di Linux, questo a dimostrazione che forse la mia teoria della filiera non è poi così sbagliata anche se l'approccio di Apple di "negare l'evidenza" e "sistemare di nascosto" è quello che considero il più odioso.
4) Sul baco di Vista Mail: il nist ha classificato la vulnerabilità come "bassa" e mi sembra "makes sense". Per poter essere sfruttata devi avere un eseguibile su un file locale o su un percorso di rete il cui nome dell'ultimo folder coincide con il nome dell'eseguibile stesso. Non ti sto a dire perché non mi preoccuperei più di tanto e non capisco perché tu la classifichi "remote execution"; per contro quello del cursore animato mi sembra decisamente più serio (un'animazione alla fine è un file di dati) ma anche lì non si tratta di "remote execution". Cosa invece mi preoccupa molto - sempre in ambito di sicurezza - è quello che mi sembra stia succedendo negli ultimi giorni e cioé che roba come questa http://www.avertlabs.com/research/blog/?p=218 venga spacciata come "problema di sicurezza". Lascio a te l'onere di capire perché invece non è un problema di sicurezza at all.
5) non capisco cosa ci sia di poco professionale nel parlare apertamente e pacatamente di queste cose soprattutto visto che lì fuori i pregiudizi sono duri a morire. Del resto non sono il solo a pensare che Microsoft in campo di sicurezza stia nell'ultimo periodo facendo meglio di tutti (http://www.internetnews.com/security/article.php/3667201)
Permalink - Rispondi al commento
sabato 31 marzo 2007 alle 1:52 AM -
Permalink - Rispondi al commento
sabato 31 marzo 2007 alle 2:42 AM -
Mi chiedo come si faccia a bollare come "escalation" un exploit la cui descrizione comincia "loggandosi come amministratori ..."
Permalink - Rispondi al commento
sabato 31 marzo 2007 alle 4:16 AM -
Permalink - Rispondi al commento
lunedì 2 aprile 2007 alle 7:04 PM -
Ahahahahah! Fa crepare dalle risate sto post! Prima di scrivere bisognerebbe informarsi e pensare ogni tanto...
Permalink - Rispondi al commento
lunedì 2 aprile 2007 alle 7:07 PM -
Ciao Franz, ti ringrazio per il sarcasmo. Magari ti fermeresti un attimo ad illuminarci?
Permalink - Rispondi al commento
lunedì 2 aprile 2007 alle 7:08 PM -
Permalink - Rispondi al commento
lunedì 2 aprile 2007 alle 7:27 PM -
Certo, prenditi tutto il tempo.
Una cosa sola: se si deve parlare di misure statistiche (numero di bachi, gravità, ecc.), ti consiglio di dare un'occhiata anche a questo onde evitare ripetizioni.
http://aovestdipaperino.com/archive/2007/03/22/Questione-di-tempismo.aspx
Permalink - Rispondi al commento
lunedì 2 aprile 2007 alle 9:32 PM -
Permalink - Rispondi al commento
lunedì 2 aprile 2007 alle 9:51 PM -
Permalink - Rispondi al commento
lunedì 2 aprile 2007 alle 11:08 PM -
Franz, la più "grave" falla di sicurezza per Windows è quella dei cursori mannari ed è vecchia solo di pochi giorni (se non vado errato è stata annunciata Venerdì e siamo appena al Lunedì sucessivo). Se leggi bene l'articolo di punto informatico, che merita un commento a se, scopri che:
[quote]
a) Outlook 2007 è immune al problema perché visualizza le email utilizzando il motore di Word;
b) la modalità protetta di Internet Explorer 7, attiva di default, è in grado di proteggere gli utenti dagli attuali exploit;
c) gli utenti di Outlook 2002 e Outlook 2003 possono difendersi dalla vulnerabilità leggendo le email HTML in puro testo. Questo accorgimento vale anche per Windows Mail, a patto che non si risponda (reply) al messaggio maligno né lo si inoltri (forward);
d) in generale, sotto Windows Vista la pericolosità delle falla è mitigata da vari meccanismi di sicurezza, primo fra i quali lo User Account Control (UAC). Ciò non toglie che il sistema operativo sia comunque vulnerabile a livello di shell, facendone il potenziale bersaglio di vari tipi di attacco.
[/quote]
Questo per dire che Vista è un Windows a parte ed il mio confronto si limita solo a Vista (come da titolo). La falla è giudicata highly critical soprattutto per l'impatto su XP SP2 e precedenti (qualcuno aveva provato a proporre di considerare la criticità in relazione all'OS ma la proposta è stata per lo meno recepita discutibile). Oppure se si usa un browser che si "presenta" più sicuro (Firefox: faster, safer, better; in realtà niente dei tre). Con IE7, dato il Protected Mode, il problema non sussiste (ma su questa falla non mi sono ancora informato bene io stesso, mi limito a rigirare quello che tu stesso mi consigli di leggere).
Dire che l'80% delle falle di sicurezza fa sembrare il numero veramente grosso. Ma quante sono in tutto? 5 e siamo già a 120 giorni; la peggiore delle quali verrà patchata domani (5 giorni tra disclose e patch non sono tanti considerato il tempo richiesto per il test della patch). Ubuntu aveva 27 (5 volte tanti) bachi di sicurezza in 90 giorni. Il mio ragionamento - se pensi sia bacato dimmelo - è tutto lì; la sicurezza di un OS è un concetto piuttosto astratto, ma se il processo è sicuro il numero dei bachi deve avere una correlazione (molta più di quanta ce ne sia tra processo sicuro e tempo richiesto per una fix); per tale ragione il numero dei bachi nei primi 90 giorni ha molto senso.
UAC è importante: che ci siano pareri discordanti mi fa piacere; che un parere discordante venga da Kaspersky mi fa pensar male e Andreotti diceva che si fa peccato, ma ci si azzecca sempre. Ma se UAC serve a mitigare problemi come quello del cursore mannaro, mi sta veramente bene. UAC è come le cinture di sicurezza: una rottura di scatole, ma certe volte ti salvano il didietro. Tra parentesi, e farò un post in futuro, UAC è molto più usabile dell'equivalente Linux: ho provato a copiare usando l'interfaccia grafica un file nel folder /bin ma non ci sono riuscito, son dovuto ricorrere al terminale e sudo (se sai come si fa, dammi un suggerimento!). Su MacOS invece ricevo un prompt grafico, ma non è sicuro come quello di Vista (funny thing che prendano per culo Vista nei loro spot; decisamente alla prima grossa legnata forse impareranno qualcosa).
E adesso torniamo a Sudo. Siamo stati smazzulati in passato per via del fatto che in XP si è amministratori di default. Vero? Ed io concordo. I default sono importanti. Se il default di Sudo è un ticket di 5 minuti, poco importa che si possa cambiare. Anche su XP posso lavorare come utente limitato, nessuno me lo impedisce ed era il mio modo di lavorare (e di tutti quelli in casa mia: io e la formichina
) su XP. Un po' faticoso (non molto usabile), ma si _PUÒ_ fare. Ma concordo con chi diceva che il valore di default in sicurezza è importante. Con questo non voglio dire che usare Sudo è insicuro, per carità. Ma che la paranoia della sicurezza di Microsoft si vede anche in questi piccoli dettagli. Un altro piccolo dettaglio: il prompt della password su Windows avviene in un desktop separato. Su Linux non mi sembra (e potrei sbagliarmi). Su MacOS sono sicuro di no. Dettagli, ma che fanno capire l'enfasi che si è data alla sicurezza in Vista.
Sul kernel: fai un raffronto tra i bachi di sicurezza nel kernel Linux e ...? Bachi nel kernel Linux ne son stati trovati, se vuoi ti posto un paio di link, per ora ho solo pochi minuti. Ma dall'altra parte del confrono cosa ci metteresti? È importante elaborare correttamente per confrontare mele con mele (anche se in maniera approssimata).
Sui flag del compilatore: la tabella mostra che non tutte le misure sono implementate nelle distro sopra elencate (a complicare le cose su compilatori diversi, le stesse features hanno nomi diversi, per cui tutti i flag di cui parli nel tuo commento sono listati nella tabella proposta). Non ho una tabella più aggiornata ma immagino che quella fosse la situazione al momento del rilascio di Vista. Infatti nel mio post dicevo che sicuramente i miglioramenti di sicurezza sono sempre ortogonali e se un OS implementa qualcosa di nuovo tutti gli altri prima o poi colmano il gap (ad eccezione di uno, non nominiamolo; vedi post di oggi). Detto questo mi sembra difficile che tutta una distro possa essere compilata con i nuovi flag, testata, patchata e rilasciata in meno di un giorno (solare). Dalla mia esperienza, anche aggiungere una riga di commento, significa spendere almeno qualche giorno testando regressioni. Se quello che dici tu fosse vero, chi fa queste cose è veramente irresponsabile (e se qualche strana configurazione non riesce più a bootare???)
TrueCrypt e Bitlocker: il mio accento era sul mostrare che sono 2 prodotti diversi; l'autore dell'articolo su Linux Magazine dice che sono comparabili, io discordo totalmente e posso provare a spiegare perché non lo sono.
TrueCrypt è pensato con il concetto di "drive virtuale", cioé di creare un file che una volta "montato" risulti a tutti gli scopi un vero drive. Ma che come tutti i file alla fine sia facilmente trasportabile. Personalmente ha un po' di limitazioni (il modo in cui ad esempio viene gestita la password non permette la possibilità di avere più password diverse per lo stesso volume e altri interessanti giochini), ma overall è così buono che lo uso anche io!!
Bitlocker è pensato per l'encription di tutto il drive di sistema: questo significa che:
1) volendo, se rinuncio al PIN ma uso il TPM o una chiavetta USB, potrei fare il boot in maniera trasparente senza password e amenicoli
2) tutto il drive, incluso pagefile, file di sistema, il profilo utente, ecc. è criptato. E questa è una differenza fondamentale.
La complicazione nasce dal fatto che ci si ritroverebbe in una situazione a cui si riferisce come "chicken and egg problem". Se tale filesystem è completamente criptato e il driver per tale filesystem è fisicamente presente sul drive criptato, come si fa a fare il boot? Per questo ad esempio non puoi criptare tutto l'home folder con TrueCrypt: nel momento in cui fai logon il sistema (Windows, Linux, ecc.) ha bisogno di accedere a tali informazioni prima che l'utente stesso sia loggato.
Sul numero di server installati, non lo metterei in correlazione solo con la sicurezza; a parte il fatto che i numeri sono spesso contrastanti (c'è chi conta il numero di siti, chi conta il numero di installazioni, ecc. ecc.): esempio Apache che gira su Windows conta come un Windows server o no? E cose di questo genere. Micheal Howard, che di sicurezza ne sa più di me, riguardo il settore server ha diversi aneddoti simpatici.
Spero di aver risposto a tutto.
Cia`
Permalink - Rispondi al commento
martedì 3 aprile 2007 alle 1:58 PM -
Permalink - Rispondi al commento
martedì 3 aprile 2007 alle 6:07 PM -
Ciao Franz, il problema dell'incollamento è l'editor di questo blog che tratta un po' male i commenti. Spero nella nuova versione i problemi siano risolti.
Nel mio post proponevo una teoria: Microsoft dai tempi del SP2 di XP ha cambiato il modo di scrivere il SW (che poi la gente ci creda o meno è un altro discorso); questo nuovo modo - chiamato SDL - prevede che chiunque scriva SW, dal kernel al campo minato, faccia un corso di sicurezza: non si diventa genii ma si impara il minimo necessario per riconoscere qualcosa che anche solo lontanamente possa somigliare ad un problema di sicurezza e la palla poi passa agli esperti (gente del calibro di Michael Howard che con le crew si scambia trucchi del mestiere). Detto questo, la gente che scrive il plugin XYZ per Firefox, ha la stessa infarinatura di base e/o educazione "obbligatoria". Dubito come ho potuto vedere osservando in maniera passiva come l'OS venga gestito. Questa è una differenza fondamentale e per questo ti dicevo che - se in ubuntu trovassero un baco di sicurezza in campo minato - il giro sarebbe un po' più lungo: chi gestisce la distro non può avere responsabilità di ownership su milioni di righe di codice.
Sempre nel mio post il confronto è fatto (spero!) mele con mele. Credo - in buona fede - che chi ha fatto la comparazione Vista vs. Ubuntu vs. RHEL vs. MacOS abbia da qualche parte scritto cosa di ogni pacchetto sia installato di default: quando ho installato Ubuntu ad esempio mi son ritrovato con 4GB di "pacchetti" (dubito siano 20000 ma non ho nessun modo per controllarli) che hanno richiesto 143 updates di cui il 50% si trattava di update di sicurezza 27 dei quali considerati gravi; da li ho capito che - avendo installato la distro usando l'ISO di default - i numeri dell'articolo di cui ti parlavo erano se non esatti molto vicini.
Ora se il kernel - che nel mondo *nix è un'entità totalmente separata - non ha nessun baco "gravissimo" ma firefox cliccando su un link esegue uno script con permessi locali (uno dei bachi peggiori della storia di cui vorrei precisare solo Linux ne era affetto) ai fini della discussione sulla sicurezza fa pochissima differenza. Non credo che nel Kernel vero e proprio di NT sia mai stato trovato qualche baco di sicurezza grave: a voler essere pignoli ad esempio Sasser fu un exploit per un servizio di sistema. Alla valutazione degli effetti invece fa veramente poca differenza: fu una strage (che incidentalmente colpì PC non patchati da mesi! Questa è un'altra cosa peculiare in questo tipo di exploit... altro che "zero day"
).
La tabella che ho riportato non è aggiornata: è stata scritta prima del rilascio di Vista quando i giochi in tavola erano ormai fatti e per questo figura OpenBSD 3 e non 4 (immagino). Si potrebbe dire la stessa cosa per RHEL uscito da pochi giorni in versione nuova, ma mi ripeterei. Il gap sicuramente verrà colmato.
Hardening tools: sul mercato desktop non hanno molto senso. Chi usa Windows 2003 - che ha l'hardening attivato di default - come sistema operativo desktop (scelta per me discutibile!) la prima cosa che fa è disabilitarli perché anche navigare su google diventa impossibile a furia di ricevere prompt. Su un sistema operativo desktop ogni passo aggiuntivo per semplificare la vita degli utenti costa molto denaro.
Per quanto riguarda gli utenti siamo d'accordo entrambi: io stesso ho in un paio di occasioni lanciato processi sospetti da una shell di amministratore (per distrazione non per ingenuità!) e non mi sento di condannare nessuno. Però sappi che il virus è il prezzo che una piattaforma paga per la sua popolarità (ho sentito dire da qualcuno - who shall remain nameless - che siccome è difficile scrivere SW per Linux per via dell'eterogeneità, scrivere virus è altrettanto impossibile: uno dei pensieri più stupidi che l'umanità potesse partorire in quanto un OS deve essere disegnato per semplificare il compito di scrivere su una piattaforma, secondo Tanenbaum - mica pizza e fichi)
TPM: il target per il TPM sono le aziende (sopratutto certe aziende governative: CIA, FBI, NSA, ecc. di quelle che per ogni laptop smarrito procurano milioni di $$ di danni) e gli utenti "smaliziati". _IO_ non avrei nessun problema ad attivare BitLocker con TPM se il mio hardware lo supportasse (ma ho comprato nel frattempo un USB stick apposito); ma c'è gente che passa il tempo a fare "conspiracy theories" sulle cose più stupide possibili (un esempio su tutti: leggiti il post di oggi e guarda cosa la gente ricicla sui propri blog). Se vuoi farti un sacco di risate su teorie improbabili il blog migliore è quello di Raymond Chen http://blogs.msdn.com/oldnewthing.
Cia'
PS: mi considererei già ampiamente soddisfatto se il tono della conversazione fosse passato dal sarcastico al serio. Immagino che cambiare la percezione nei confronti di Windows - dopo anni di incidenti anche gravi - non sia una cosa facile, ma mi basta che abbia dato a pensare
Permalink - Rispondi al commento
domenica 8 aprile 2007 alle 9:38 PM -
Permalink - Rispondi al commento