Sebbene tempo fa l'idea della sicurezza informatica era vista dall'utente medio solamente come "una tecnica per allontanarsi da un inesorabile formattazione", oggi il tema diventa centrale anche per l'utente comune. Bombardati dalle notizie come "Google attaccata grazie ad una falla scoperta su Internet Explorer" su tuti i giornali, o allarmati dell'amico che ha preso un certo virus o vittime in prima persona di un danno al software (o un furto di dati), oggi anche un bambino comincia a rendersi conto dei problemi che il malware provoca alla gente comune, alle società o alle istituzioni, insomma verso tutti. La domande che tutti si pongono sono:
- Cosa sono e come funzionano i vari tipi di malware?
- Perchè esiste il malware? Chi lo crea ed a quale scopo?
- E' vero che un sistema Microsoft è più esposto? Gli altri sistemi invece è vero che sono immuni? Meglio closed o open per la sicurezza?
- Com'è possibile difendersi dunque?
Ecco che ordinatamente provo a dare delle spiegazioni (in seguito alla mia modestissima esperienza ed ai miei "studi" sul campo).
Prima di tutto: cos'è il "MALWARE"?
Il malware è un termine molto generico al cui interno accoglie tantissime tipologie di "programmi" tali da poter trafugare o manomettere i dati in vostro possesso (ben diverso dal concetto invece di "truffa" o "scherzo" per cui posso consigliarti di fare una qualsiasi stupidaggine in modo da indurre te stesso a compromettere il tuo sistema o i tuoi dati sensibili, altrimenti probabilemte anche facebook rientrerebbe nella categoria del malware!). Esistono quindi virus, trojan, spyware, ecc... tutti "sistemi" pericolosi che potrebbero minare la stabilità del sistema vostro o altrui o peggio ancora rubare dati preziosi come password di conti correnti o informazioni personali. Una prima classificazione importante da fare è proprio la "tecnica" utilizzata per infrangere la vostra sicurezza. Nella maggiorparte dei casi si tratta di fare in modo che il vostro pc ESEGUA (che non siglifica leggere, eseguire è ben diverso) del codice senza che voi ve ne accorgiate minimamente. Ebbene ci sono tre grandi possibilita: o erroneamente installate un programma al cui interno si annida proprio un virus; oppure è possibile che del codice venga eseguito anche se in realtà dovrebbe essere SOLAMENTE letto (come ho detto prima per un computer c'è differenza tra "eseguire" e "leggere" del codice in generale); infine è possibile che qualcuno riesca a "forzare" alcuni programmi chiave che si occupano proprio di connettere il pc all'esterno (servizi come telnet o altro). Una cosa è poi certa, il Malware ha la grande tendenza a diffondersi, anzi è una delle priorità. Esso deve diffondersi quanto più rapidamente possibile, più velocemente si diffonde, più difficile sarà debellarlo e più le probabilità che faccia dei danni seri crescono.
Perchè esiste ed a quale scopo
Anche dal punto di vista degli obiettivi esistono notevoli differenze. In alcuni casi si tratta solo di farvi innervosire davanti ad un pc che tutto d'un tratto non funziona più bene. Nei casi peggiori invece gli scopi sono raccogliere dati su di voi oppure organizzare un attacco informatico (ai danni di qualcun'altro). In questi due casi l'utente NEMMENO SI ACCORGE che dentro il proprio pc c'è annidata una trappola pronta a far danno, poichè se supera i controlli del sistema, rimane poi in attesa di comandi e non rallenta minimamente l'esperienza d'uso del computer dell'utente. E' questo uno dei tanti motivi per cui spesso molti "credono" di non essere delle vittime ma sono invece inconsapevoli portatori di "infezioni da codice". Nella maggiorparte dei casi infatti l'affermazione "ho preso un virus" viene fuori quando il sistema risulta danneggiato, ma non tutti sanno che spesso i criminali vogliono soltanto rubarvi pochi kb di connessione (oltre ai dati).
Prendendo a modello il recente attacco a Google, per mezzo della falla di IE ciò è stato possibile grazie alla creazione di una botnet, cioè ad un ammasso di pc sparsi per il mondo che sottostavano agli ordini di qualcuno e che all'occorrenza potevano fiondarsi tutti insieme per causare dei disordini o semplicemente per sovraccaricare dei server (non ho letto nella fattispecie quale sia stata la strategia, sto usando solo l'esempio per poter descrivere una tecnica possibile). In questo caso dunque l'utente di un pc appartenente allo botnet è assolutamente ignaro ed è solo un mezzo per un danno che viene eseguito su terzi.
E' vero che un sistema Microsoft è più esposto? Gli altri sistemi invece è vero che sono immuni? Meglio closed o open per la sicurezza?
Diciamolo chiaro e subito: NESSUN SISTEMA E' IMMUNE DAL MALWARE, così come tutti gli esseri viventi di qualsiasi specie sono esposti alle malattie, così anche i sistemi informatici lo sono (anzi, lo sono maggiormente). Detto questo rimane il fatto che il 90% del Malware ha a che fare SOLO con windows, MA CIO' NON DIPENDE SOLO DALLA SUA DIFFUSIONE IN AMBITO CONSUMER. Facciamo prima delle dovute premesse:
1) La maggiorparte dei sistemi informatici "casalinghi" DIRETTAMENTE connessi ad internet sono router, switch con firewall, modem/router, tutti unix. Dietro di essi ci sono i pc, ma i sistemi unix stanno quasi sempre in prima linea, dopo vengono i comuni pc, adeguatamente schermati dietro il firewall hardware unix. Questo di fatto contribuisce alla sicurezza, poichè limita molti degli attacchi che un pc subirebbe se il proprio firewall (tipicamente su windows) fosse direttamente esposto.
2) I sistemi informatici "critici" sono massicciamente dotati di software o interi sistemi opensource, a differenza delle infrastrutture meno critiche che implementano molti più software proprietario di base dei corrispettivi.
3) Il numero dei sistemi informatici di tipo UNIX è maggiore di quello Windows. Basta guardarsi intorno: cellulari, navigatori satellitari, SITI INTERNET, router, mediacenter da supermercato, ecc ecc..
5) Il numero di utenti connessi ad internet (persone fisiche), ha davanti un pc Windows
Detto questo, dato che il principale fattore di un danno informatico è proprio il tizio seduto tra il monitor e la tastiera, è pur sempre vero che il target "più semplice" da colpire è l'utente medio che clicca dovunque, installa tutto e aggiorna poco o nulla. Quindi è vero che l'enorme diffusione di pc windows crea una condizione favorevole allo sviluppo "specialmente" per quel tipo di utenza. Microsoft però ha due difetti che nessun altro possiede: è chiuso ed è omologato. Anche qui è d'obbligo una analisi del significato di codice chiuso e codice aperto in termini di sicurezza e del concetto di omologazione.
Per chiarire la differenza tra open source e closed source cerchiamo di fare un paragone facile facile: il closed source è come mangiare cibo in un ristorante, l'open source è come mangiare del cibo di cui conosciamo esattamente la ricetta e la modalità di preparazione. Ebbene, se siamo noi a cucinare o qualcuno a noi vicino, possiamo sapere di cosa è fatto ciò che mangiamo, che esso non sia dannoso o se mai possiamo accertarci degli ingredienti. Mentre invece se andiamo al ristorante e poi stiamo male, come facciamo a sapere se dentro il cibo c'era qualcosa che ci è indigesto se non abbiamo accesso ne alle cucine, ne alla ricetta? Come facciamo, se vogliamo lo stesso piatto, a modificare la ricetta per renderla compatibile col nostro organismo o attinente ad una particolare dieta?
In oltre: se abbiamo la ricetta e gli ingredienti e riteniamo che qualcosa non ci vada bene, possiamo confezionarci il cibo da soli variando qualcosa, mentre invece difficilmente potremmo chiedere al ristoratore di cucinare qualcosa "a modo nostro".
Detto ciò ecco, un gruppo di esperti utilizza l'opensource come standard comune da studiare, modificare e plasmare in modo che la sicurezza aumenti, mentre invece chi si affida al software proprietario può solo pregare e pagare per l'azienda di turno, in modo che si occupi del tuo problema. Ibm, Novell, Red Hat, Google, Sun, l'istituto spaziale americano (NASA) o il CERN, banche o istituti di difesa nazionale ogni giorno leggono e rileggono il codice aperto e diffondono le proprie conoscenze in merito verso tutti, così come un medico o un ospedale condivide verso tutti le proprie scoperte per tutelare tutto il genere umano (in questo caso sopratutto se stessi o i propri ricchi clienti). Microsoft invece deve fare tutto da sola, nessun altro può vedere il codice e capire cosa va e cosa non va.
Poi c'è la diversità. Così come in natura un ottimo espediente per la sopravvivenza della vita è la biodiversità (chi lo avrebbe mai detto che i dinosauri si estinguessero e gli antenati dei topi no?), così la "diversità" fa si che l'informatica regga. Anche in questo caso il software open aiuta, poichè essendo aperto ogni azienda ne modifca una parte e la ridistribuisce e così facendo esistono 1000 versioni della medesima cosa, non 1 sola sempre uguale! La biodiversità nel campo informatico è visibilissima tra i sistemi unix che sono tutti interoperabili tra loro ma mai uguali, nemmeno all'interno di una stessa famiglia, come linux, senza contare i vari incroci possibili (ad esempio Mac osx è un incrocio tra vari software open e la parte closed ed è anch'esso unix).
C'è da dire che nell'ambito del "virus", non sono MAI stati scoperti virus (intendo virus e non altro) funzionanti su Linux, tranne alcuni casi di studio e sempre e comunque nessuno di loro è in grado di autoinstallarsi senza la password amministratore necessaria. Questo fa si che chi usa Linux si sente più libero di girare per la rete e utilizzare il pc in maniera più disinibita che un utente windows, per i quale la minaccia potrebbe essere nel primo link sotto gli occhi. Infine su linux spesso si adottano dei sistemi di installazione per cui l'utente sceglie il programma ed è il sistema stesso a prelevarlo su internet da una fonte sicura ed installarlo, evitando all'utente il problema di chiedersi se la sua fonte è sicura o meno.
Com'è possibile difendersi
Per difendersi dalla minaccia del malware in ogni caso bisogna usare il cervello ed evitare di cliccare dappertutto o di diffondere password in giro. Ma ciò che è innegabile è che un programma open "di qualità" ha minori possibilità di essere attaccato (basti pensare al paragone Internet Explorer - Firefox - Chrome). Senza togliere l'indispensabile (su windows) antivirus e firewall (su linux ancora pressochè inutili). Una cosa molto importante inoltre, sempre per gli utenti windows, è di non disabilitare mai l'UAC, probabilmente uno degli espedienti migliori per Microsoft.
Infine, e questo vale per tutti, bisogna sempre e comunque tenere aggiornare il proprio pc all'ultima versione disponibile.
Mi auguro che qualcuno approfondisca il tema e mi corregga laddove necessario. Mi sono già dilungato abbastanza e non sono entrato in merito a particolari tecnologie (SElinux o spazio utente ecc..) per venire in contro ad un pubblico più generale.
Questo documento è rilasciato come documento "Libero" per volontà espressa dell'autore. Chiunque può copiarlo, modificarlo e ridistribuirlo o rivenderlo, a patto di citare il mio nome nell'articolo