Gli attacchi ai sistemi informatici

Gli attacchi ai sistemi informatici

Gli attacchi ai sistemi informatici

Gli elaboratori, i sistemi informatici e le reti hanno sicuramente contribuito al progresso sociale, rappresentando indubbiamente gli strumenti più efficaci ed efficienti per la trattazione, la gestione e lo scambio di dati ed informazioni. Il loro ingresso nella società ha comportato cambiamenti di tale portata da dover considerare il fenomeno una vera e propria “rivoluzione”. Essa ha condizionato in modo significativo l’odierna realtà economica ed amministrativa, determinato una riorganizzazione del lavoro in molti settori e rimodellato, più in generale, il nostro modus vivendi, i nostri costumi, le abitudini, le condizioni di vita, rendendo possibili e fattivamente realizzabili, comportamenti che, solo dieci anni or sono, erano frutto delle fantasie degli scrittori più audaci.

L’avvento delle nuove tecnologie, le cosiddette autostrade dell’informazione, attestatane ed acclaratane l’utilità e necessità, ha, tuttavia, aperto la strada a nuove forme di criminalità. I diversi strumenti che la scienza pone nelle mani dell’uomo possono, infatti, essere utilizzati in modo diverso da quello per i quali sono stati progettati, e gli stessi obiettivi da raggiungere, possono divergere notevolmente dalle intenzioni originarie degli ideatori. Da questo punto di vista, significativa è la storia del sistema operativo Unix, oggi, per la sua potenza, elasticità e stabilità, standard de facto in Rete. Nato ai Bell Labs negli anni ’60, la sua filosofia era quella di fornire un ambiente “friendly” in cui gli utenti potessero facilmente cooperare e scambiarsi file. Unix, in altri termini, è stato concepito e sviluppato come sistema aperto, la sua architettura lo richiedeva perché il progetto era finalizzato a facilitare la ricerca scientifica. Solo in un secondo momento sono sorti problemi di sicurezza legati ad suo utilizzo illecito.

I sistemi informatici considerati oggetto di potenziali attacchi sono, ovviamente, sistemi facenti parte di una data rete. Da un punto di vista generale, due soli semplici elaboratori già costituiscono una rete se sono messi in grado di comunicare tra loro così da scambiarsi dati e condividere risorse. Al mondo esistono infinite reti. Ognuna di esse ha una particolare dimensione, utilizza una particolare tecnologia trasmissiva e, più genericamente, ha proprie caratteristiche hardware/software. Nel tempo la tecnologia ha permesso loro una sempre maggiore possibilità di interconnessione soprattutto grazie allo sviluppo di nuovi protocolli, ovvero di insiemi di regole standardizzate finalizzate alla trasmissione dei dati.

In questo processo ha certamente assunto un ruolo fondamentale la suite di protocolli denominata TCP/IP. Essa ha permesso a singole macchine e specifiche reti, diverse tra loro per architettura (hardware/software), di interagire rendendo fruibili quei servizi (posta elettronica, newsgroup, World Wide Web, mailing list, accesso a banche dati, IRC, ecc.) che hanno determinato la “rivoluzione” suddetta. In altre parole, tale suite, ha dato vita ad Internet: rete logica mondiale costituita da un insieme di reti fisicamente separate, ma interconnesse tramite protocolli comuni. I servizi che “la rete delle reti” mette a disposizione, se prima erano riservati a poche grandi organizzazioni, oggi, attraverso l’intermediazione degli Internet Service Provider (ISP), sono accessibili a chiunque disponga di un computer, un modem e una linea telefonica.

Come si è espressa la Commissione Europea, prendendo atto del carattere poliedrico della nuova tecnologia dell’informazione, Internet, nel corso della sua rapida e fenomenale evoluzione, si è trasformata “da rete destinata alle Amministrazioni ed al mondo accademico, in un’ampia piattaforma per comunicazioni e scambi commerciali… determinando la nascita di una pulsante economia dell’Internet…. Internet, al tempo stesso, è divenuto un potente fattore di evoluzione in campo sociale, educativo e culturale, offrendo a cittadini ed educatori la possibilità di interventi più incisivi, diminuendo gli ostacoli alla realizzazione ed alla distribuzione di materiale e rendendo possibile a chiunque accedere a fonti sempre più ricche di informazioni digitali…”.

D’altra parte, Internet è anche un formidabile veicolo attraverso il quale condurre attacchi ai sistemi informatici. Le sue caratteristiche tecnico-strutturali espongono qualsiasi sistema connesso ad una molteplicità di ulteriori forme invasive. Se prima i system administrator, oltre ad occuparsi dell’ordinaria manutenzione della rete locale, dovevano definire una politica di sicurezza ponendo prevalentemente attenzione ad eventuali attacchi interni, adesso devono considerare necessariamente anche potenziali aggressioni dall’esterno. Trovare un giusto compromesso tra sicurezza e funzionalità è diventato sempre più difficile: un’eccessiva chiusura può rendere un sistema sicuro rispetto, per esempio, ad accessi indesiderati, ma, evidentemente, può comportare scomodità di utilizzo, costi elevati e disagi per i legittimi utenti.

Negli ultimi anni il problema della sicurezza dei sistemi informatici sulla rete si è intensificato drasticamente. Se prima gli attacchi ai sistemi informatici erano ingenui e sporadici ora sono frequenti e ben condotti. Se un tempo per proteggere un sistema era sufficiente conoscere alcune semplici norme generali di pubblico dominio, ora bisogna possedere competenze sempre più elevate e sofisticate. Se poi, da altro punto di vista, si considera la dimensione transnazionale di Internet, è facile intuire che i pericoli connessi al suo utilizzo aumentano esponenzialmente.

Sicurezza dei sistemi informatici

La sicurezza delle reti e dell’informazione può essere compromessa tanto da eventi imprevisti ed involontari quali catastrofi naturali (inondazioni, tempeste, terremoti), guasti di hardware e software ed errori umani, quanto da attacchi dolosi. Tali attacchi possono assumere una grande varietà di forme. Senza entrare nel merito delle motivazioni (frode, spionaggio, danneggiamento, semplice sfida intellettuale, ecc.) che spingono certi individui a porli in essere, cercherò di descriverne alcune delle tipologie più diffuse in Rete.

Un primo tipo di aggressione è quello comunemente chiamato hacking: accesso abusivo ad un sistema informatico. L’accesso è “abusivo” perché finalizzato ad un uso della macchina non consentito. Richiede quindi, di regola, che siano superate le misure di sicurezza predisposte dall’amministratore di sistema. La nozione comprende sia il caso di chi tenta di servirsi delle risorse di un computer non disponendo di alcun tipo di autorizzazione, sia il caso di chi, utente della macchina, dispone di un’autorizzazione limitata a specifiche operazioni.

Gli attacchi possono provenire tanto dall’interno quanto dall’esterno di una data rete. I primi sono certamente più facili da portare e, per questa ragione, sono sempre stati più numerosi. Sembra però che la tendenza sia cambiata. In base a “2001 Computer Crime and Security Survey”, rapporto annuale sui crimini informatici messo a punto dall’FBI in collaborazione con il Computer Security Institute americano, nel 2001 le aggressioni ai sistemi informativi originate dall’esterno degli stessi, per la prima volta, si sono rivelate più numerose di quelle generate dall’interno delle istituzioni e delle aziende colpite. Ciò non toglie, come spiega lo stesso studio, che il pericolo più grande (con le maggiori difficoltà per contrastarlo) rimane quello legato agli attacchi dall’interno.

In questo particolare contesto, gli addetti ai lavori utilizzano un’accezione del termine hacking più specifica: tale attività è solitamente riferita ad attacchi esterni finalizzati all’acquisizione dei privilegi di “root”, cioè, dei privilegi di cui gode esclusivamente l’amministratore del sistema (o dei sistemi informatici). Tali privilegi permettono di prendere il pieno controllo della macchina subentrando al legittimo sysadmin (di regola non escludendolo dal controllo della stessa, ma facendosi riconoscere dal sistema come utente con le più alte possibilità di intervento).

In termini generali, ogni sistema operativo, ogni software che gestisce un particolare servizio, nonché ogni protocollo che consente la trasmissione di dati ha delle intrinseche debolezze. Esperti di sicurezza informatica e crackers, sono costantemente alla ricerca di tali falle. Mentre i primi tenteranno però di patcharle, cioè di eliminarle, i secondi tenteranno invece di sfruttarle per i loro progetti criminosi.

Per poter attaccare un sistema è fondamentale studiarlo a fondo: occorre conoscere il tipo di macchina (lato hardware), il nome di dominio (es. www.microsoft.com), il suo indirizzo IP, il suo sistema operativo, il tipo di server ftp utilizzato, il tipo di programma di posta elettronica (email), il tipo di server http, il modo in cui il sysadmin assegna gli account,…ecc. Tutte queste informazioni sono necessarie, infatti, per decidere quale tipo di attacco sferrare.

Per questa prima fase si utilizzano sistematicamente tecniche di indagine non invasive (footprinting) ed invasive. Esempio del primo tipo: ricercare le informazioni sulle pagine web del sito internet visibili e invisibili (come quelle nascoste nei tag di commento all’interno dei sorgenti html della pagina web); nei newsgroup; attraverso l’interrogazione di siti come “InterNIC” (Internet Network Information Center) o “Geektools” (entrambi contengono dei database aggiornati che permettono di risalire ai nomi dei soggetti, ai loro domini, ai contatti amministrativi, tecnici e di zona oltre agli Indirizzi IP dei loro server DNS); tramite il social engineering (con l’ “ingegneria sociale” si sfruttano i frammenti di conoscenza specialistica già posseduti per ingannare il proprio interlocutore e carpire ulteriori preziose informazioni, se non addirittura direttamente un account). Esempi del secondo tipo (più facilmente rilevabili dalla macchina presa di mira): scanning (scansione) del sistema (l’obiettivo è interrogare tutti i punti identificati con la precedente fase non invasiva – Porte, Range IP (raggio degli indirizzi IP) , DNS, etc. – per identificare gli elementi attivi e quindi disponibili per un eventuale attacco); enumeration (processo tramite il quale si cerca, principalmente, di identificare degli account validi o risorse condivise accessibili); brute force (tentativi manuali o automatizzati tramite appositi tool di indovinare la password necessaria a garantirsi l’accesso). Questa tecnica, in verità non molto efficace, è di solito utilizzata per ottenere un account valido (composto da user id e password) su sistemi Unix. Una volta acquisite alcune informazioni sugli utenti, si tenta l’accesso provando ad inserire, come user id e password, termini “probabili”; specifici programmi, scelto un user id, provano sistematicamente ad accedere al sistema utilizzando password prelevate da appositi dizionari. In questo caso la migliore difesa è sempre quella di scegliere per gli utenti password adeguate da sostituire ad intervalli di tempo regolari, effettuare una attenta attività di auditing (ascolto) su queste operazioni e soprattutto disabilitare gli account non utilizzati.

Una volta raccolte tutte queste informazioni, l’aggressore sarà in grado di accedere al sistema (per esempio, attraverso un account valido). Conseguenza normale di un attacco è l’installazione sul sistema di una backdoor. Se ben strutturata, questa “porta di servizio” sarà invisibile e non rilevabile facilmente dai normali strumenti diagnostici e permetterà all’aggressore di rientrare nel sistema in qualsiasi momento. Su piattaforme Microsoft Windows, sono famose le backdoor create dai programmi SubSeven, NetBus e BackOrifice.

Il passo successivo, sarà acquisire i privilegi di amministratore o, comunque, consolidare i risultati ottenuti (ad esempio creandosi un ingresso privilegiato). L’ultimo passo consisterà, infine, nel cancellare le tracce lasciate durante l’attacco come, ad esempio, i log che lo riguardano. I file di log, presenti su ogni sistema, sono i file che registrano ogni operazione effettuata sul sistema stesso: quale macchina si è collegata, a che ora, per quanto tempo, con quale account, quali comandi sono stati eseguiti, ecc.

Precedente La funzione del DNS (Domain Name System) in una rete informatica Successivo Echelon: lo spyware globale

Lascia un commento

*