Tipologie Di Attacchi Informatici

« Older   Newer »
  Share  
sabocode
view post Posted on 16/10/2009, 12:27




passwordstillrunningbug
Gli hacker, oltre che per le loro qualità tecniche, sono famosi per saper sfruttare le debolezze delle loro vittime, sia tecnologiche che umane. Cercano quindi di individuare una vulnerabilità che possa permettere loro di raggiungere il loro scopo, o quantomeno che possa permettergli di trovare una strada alternativa per arrivare a destinazione.

Benchè non esista una procedura standard che gli hacker seguono durante le loro attività possiamo riassumere il loro percorso nei seguenti passi:













Tipologie di attacchi

Footprinting
Scanning
Enumeration
Gaining access
Escalating privilege
Pilfering
Copertura tracce
Creazione Backdoors
Attacchi DoS-Denial of Service
Bug di programmazione degli applicativi,
Bug dei protocolli di comunicazione,
Bug dei servizi di rete
Cavalli di Troia
IP Spoofing
Intercettazione di sessione
Buffer Overflow
Attacchi a sicurezza delle password tramite dizionario




Footprinting:

In questa fase l’attacker (l’hacker) reperisce informazioni sulla sua vittima, partendo anche da un semplice nome si mette alla ricerca di siti internet, numeri di telefono, range di indirizzi IP e tutto cio’ che puo’ servire per avere il maggior numero di informazioni sulla sua vittima. Su internet esistono un’infinità di strumenti gratuiti (e perfettamente legali) per acquisire informazioni. Ad esempio partendo da un nome di dominio è possibile consultare dei database whois pubblici che permettono di identificare il proprietario del sito con relative informazioni personali, indirizzo e numero di telefono.

Scanning:

Una volta indivuata la vittima si prosegue isolando i sistemi che diventeranno oggetto dell’attacco. Si cerca in questa fase di isolare gli indirizzi IP delle macchine esposte su internet che forniscono servizi. L’hacker agisce in base al principio che dice che laddove c’e’ un servizio fornito c’e’ una porta TCP o UDP aperta, di conseguenza c’e’ un’applicazione che la gestisce… e le applicazioni sono vulnerabili.



Enumeration:


L’hacker ha individuato la macchina che subirà l’attacco, vuole ora capire che tipo di servizi sono presenti sul computer. Tramite dei tool di port scanning individua le porte aperte e le applicazioni che le gestiscono. In questa fase si usa una tecnica mista tramite l’uso di tools automatici ma anche di comandi manuali, ciò ovviamente presumedo che l’attacker disponga delle conoscenze tecniche adeguate. Una tecnica che in molti casi produce buoni risultati è quella del banner grabbing, che consiste nel catturare via telnet il banner iniziale che alcune applicazioni propongono, dove viene esplicitamente dichiarata l’applicazione, la versione e l’eventuale livello di patching. Tutte informazioni preziosissime per chi attacca.



Gaining Access:


E’ una delle fasi più delicate, l’attacker penetra nei sistemi sfruttando le vulnerabilità individuate grazie agli step precedenti, ma anche utilizzando metodi più semplici come ad esempio il brute force, un tipo i attacco che prevede di indovinare la password di un utente. benchè possa sembrare impossibile indovinare la password in realtà è molto più facile di quello che si pensi, molti utenti infatti hanno la pessima abitudine di scegliere password facili da ricordare come ad esempio il nome del figlio, o della moglie, la propria data di nascita o il codice fiscale. L’hacker che sa compiere opera di social engineering entra ben presto in possesso di queste informazioni e di conseguenza è in grado di indovinare la password entro breve. Il brute force prevede anche l’uso di “dizionari di password”, ovvero un elenco di parole generalmente usate come password, un tool automatico si occupa poi di provare tutte le password dell’elenco fino a trovare quella giusta (questo tipo di attacco tutt’oggi funziona 2 volte su 3!)



Escalating privilege:

L’hacker è dentro il sistema, ma è riuscito solamente ad acquisire accesso come utente normale, un livello di privilegio non sufficiente per compiere attività illecite. L’attacker ha bisogno di acquisre i privilegi di amministratore (o superuser). Anche in questo caso vale il discorso del brute force, ma più geeralmente si tenta di sfruttare vulnerabilità di applicazioni che risiedono sulla macchina vittima. Il metodo più diffuso è quello del buffer overflow, ovvero l’hacker cerca di passare una quantità di dati superiore a quella che l’applicazione riesce a gestire, in genere questo causa lo stop dell’applicazione mettendo in grado l’attacker di entrare automaticamente nel sistema con i privilegi massimi, cioè esattamente quello che stava cercando!



Pilfering:


Il sistema nel quale l’hacker è entrato potrebbe non essere quello di destinazione finale, ma solamente un punto intermedio. Il pilfering consiste nel trovare la strada verso il sistema target che può essere il repository del database centrale o il computer dell’amministratore delegato. Le informazioni necessarie si trovano proprio all’interno della macchina dove l’hacker è riuscito ad avere accesso, la lista degli host che godono di una trust relationship può essere un buon punto di partenza.



Copertura tracce:


Come tutti i ladri che si rispettino anche l’hacker non deve lasciare tracce, e le tracce in gergo informatico si chiamano “log”, ovvero dei file dove vengono registrate le attività che gli amministratori compiono. I log hanno proprio lo scopo di individuare intrusi e permetterne il rintracciamento. A seconda del tipo di macchina e di sistema operativo l’hacker sa esattamente dove andare a cercare i log di sistema e come modificarli a mano per fare in modo che non risulti la sua presenza, in pratica diventa invisibile all’occhio di chi analizza i log.




Creazione backdoor:


Compiere un’intrusione informatica è tutt’altro che semplice, una volta che l’attacker è riuscito a penetrare un sistema non può permettersi di dover ripetere tutte le volte la stessa procedura, sarebbe un’enorme perdita di tempo. La soluzione è rappresentata dalle backdoor, ovvero da piccoli programmi che permettono a chi attacca di potersi collegare in maniera quasi trasparente e diretta alla macchina, permettendogli di compiere tutte le operazioni di amministrazione, comprese quelle di estrazione dati. Una backdoor può anche essere un semplice account creato ad oh dall’hacker con privilegi di amministratore, mascherato in modo che non dia troppo nell’occhio al vero amministratore della macchina.



Denial of service:

L’attacco DoS può essere portato una volta concluse le attività per cui ci si è intrufolati nel sistema vittima. Una volta acquisiti i privilegi di amministratore è estremamente semplice avviare o fermare i processi che regolano il funzionamento delle applicazioni. nei casi più gravi l’hacker può provocare danni permanenti che, come unica soluzione, prevedono la reinstallazione totale del sistema.
Non è facile dire quanto duri un attacco in termini di tempo, sicuramente possiamo dire che esiste tutta una fase di analisi che può andare avanti per settimane prima che l’attacco venga effettivamente sferrato, ecco perchè è importante che gli amministratori controllino periodicamente le attività che vengono svolte sulle loro macchine in maniera approfondita cercando di individuare le connessioni sospette.



Cavalli di troia

Un trojan o trojan horse (dall'inglese per Cavallo di Troia), è un tipo di malware. Deve il suo nome al fatto che le sue funzionalità sono nascoste all'interno di un programma apparentemente utile; è dunque l'utente stesso che installando ed eseguendo un certo programma, inconsapevolmente, installa ed esegue anche il codice trojan nascosto.
In genere col termine Trojan ci si riferisce ai trojan ad accesso remoto (detti anche RAT dall'inglese Remote Administration Tool), composti generalmente da 2 file: il file server, che viene installato nella macchina vittima, ed un file client, usato dall'attaccante per inviare istruzioni che il server esegue. In questo modo, come con il mitico stratagemma adottato da Ulisse, la vittima è indotta a far entrare il programma nella città, ossia, fuor di metafora, ad eseguire il programma. Esistono anche alcuni software legali, come GoToMyPC o PCAnywhere, con funzionalità simili ai trojan, ma che non sono dei cavalli di Troia poiché l'utente è consapevole della situazione. Spesso il trojan viene installato dallo stesso attaccante, quando prende il controllo del sistema, acquisendone i privilegi amministrativi. In questo caso il trojan serve a "mantenere lo stato di hacking", cioè a mantenere il controllo della macchina, senza che l'amministratore legittimo si accorga che alcuni programmi nascondono delle altre funzioni.


IP Spoofing


Lo spoofing è un tipo di attacco informatico dove viene impiegata in qualche maniera la falsificazione dell'identità (spoof).
In una rete di computer, con il termine di IP spoofing si indica una tecnica tramite la quale si crea un pacchetto IP nel quale viene falsificato l'indirizzo IP del mittente.
Nell'header di un pacchetto IP si trova uno specifico campo, il Source Address, il cui valore indica l'indirizzo IP del mittente. Semplicemente modificando questo campo si può far credere che un pacchetto IP sia stato trasmesso da una macchina differente.


Buffer Overflow

Il buffer overflow è una vulnerabilità di sicurezza che può affliggere un programma software. Consiste nel fatto che tale programma non controlla in anticipo la lunghezza dei dati in arrivo, ma si limita a scrivere il loro valore in un buffer di lunghezza prestabilita, confidando che l'utente (o il mittente) non immetta più dati di quanti esso ne possa contenere: questo può accadere se il programma è stato scritto usando funzioni di libreria di input/output che non fanno controlli sulle dimensioni dei dati trasferiti.

Quando quindi, per errore o per malizia, vengono inviati più dati della capienza del buffer destinato a contenerli, i dati extra vanno a sovrascrivere le variabili interne del programma, o il suo stesso stack; come conseguenza di ciò, a seconda di cosa è stato sovrascritto e con quali valori, il programma può dare risultati errati o imprevedibili, bloccarsi, o (se è un driver di sistema o lo stesso sistema operativo) bloccare il computer. Conoscendo molto bene il programma in questione, il sistema operativo e il tipo di computer su cui gira, si può precalcolare una serie di dati malevoli che inviata per provocare un buffer overflow consenta ad un malintenzionato di prendere il controllo del programma (e a volte, tramite questo, dell'intero computer).

Questo tipo di debolezza dei programmi è noto da molto tempo, ma solo di recente la sua conoscenza si è diffusa tanto da permettere anche a dei cracker capaci di sfruttarla per bloccare o prendere il controllo di altri computer collegati in rete. Non tutti i programmi sono vulnerabili a questo tipo di inconveniente: perché un dato programma sia a rischio è necessario che:



Attacco a sicurezza delle password tramite dizionario

Nella crittanalisi e nella sicurezza informatica, un attacco a password tramite dizionario è una tecnica per "rompere" un codice cifrato o un meccanismo di autenticazione provando a decifrare il codice o a determinare la passphrase cercando tra un gran numero di possibilità. In pratica si tenta di accedere a dati protetti da password (sia remoti, come ad esempio accounts su siti web o server di posta; sia locali, come documenti o archivi protetti da password) tramite una serie continuativa e sistematica di tentativi di inserimento della password, solitamente effettuati in modo automatizzato, basandosi su uno o più dizionari. In contrasto con un metodo forza bruta (o attacco brute force), dove tutte le possibili password sono ricercate in maniera esaustiva, un attacco a dizionario prova solamente le possibili password più probabili. Si può usare una lista di parole probabili (detta dizionario). Generalmente, questi attacchi, detti per questo "a dizionario", hanno successo perché la maggior parte delle persone ha la tendenza a scegliere password semplici da ricordare (e quindi semplici da scoprire, ad esempio il proprio nome, quello dei propri figli, date di nascita) e tipicamente sceglie parole prese dalla propria lingua nativa.

I dizionari, che sono normalmente semplici file composti da sequenze di parole divise da caratteri separatori, possono riferirsi a contenuti standard (dizionario Inglese, Italiano, dizionario dei Nomi, ecc...) oppure essere creati appositamente a seconda del contesto di utilizzo.


Edited by HackerCode - 20/9/2011, 18:50
 
Top
HackerCode
view post Posted on 16/10/2009, 13:03




E' troppo affascinante l'argomento :wub:
 
Top
sabocode
view post Posted on 16/10/2009, 14:17




Tra breve introdurrò l'argomento la madre degli Hackers : La crittografia

Edited by HackerCode - 18/10/2009, 11:28
 
Top
HackerCode
view post Posted on 16/10/2009, 14:41




mmmmmmmm nn vedo l'ora :wub:
 
Top
jackals17
view post Posted on 18/10/2009, 10:06




ma quell immagine cos'è?
 
Top
sabocode
view post Posted on 18/10/2009, 10:39




CITAZIONE (jackals17 @ 18/10/2009, 11:06)
ma quell immagine cos'è?

Una sessione di Telnet con visione nel riquadro di un Traceroute
 
Top
Aliencode
view post Posted on 10/1/2010, 15:16




oh..il famoso telnet che tutti abbiamo ma nessuno sa di esserne in possesso...con questo non dico che chiunque posa usarlo per questi scopi...cmq ci vogliono le conoscenze e sopratutto...se si fanno deve essere solo a scopo di studio e non per arrecare danno ad altre persone......
 
Top
6 replies since 16/10/2009, 12:27   158 views
  Share