Trojan Horse
(Cavallo
di Troia)
Premessa.
Un po' di tempo fa mi è stato
chiesto aiuto da parte di un'amica che ha avuto problemi con il suo PC ed
Internet. Veniva importunata da persone, fino ad allora a lei sconosciute,
che però sapevano molto sul suo conto: da tutte le sue informazioni
personali (telefono, abitazione,...) a quelle sulla sua famiglia e per di
più notava strani comportamenti di funzionamento nel suo sistema proprio
quando queste persone la contattavano nelle chat. Nel cercare di capire
quali fossero le cause dei suoi problemi, ho intuito che poteva trattarsi
di quella forma di virus che fino ad allora credevo fosse pura fantasia e
ne ignoravo i rischi: i trojan horse. Dopo essermi documentato da diverse
fonti, ho iniziato a procurami del software adeguato per combattere questa
forma di virus. Be', fino ad oggi ho scoperto che circa 1 su 3 dei miei
amici e conoscenti erano infetti da uno o più trojan, me compreso! Non
avrei mai creduto che tali fossero così diffusi. Noi tutti abbiamo quindi
provveduto a ripulire i nostri sistemi. Adesso potete farlo anche voi!!!
Passerò quindi prima a descrivere velocemente cosa sono i trojans e poi
come procedere per rilevarvi ed eliminarli in modo semplice e veloce!
Cos'è
un trojan horse.
I trojan horse (cavalli di troia), o semplicemente trojan, non
sono esattamente virus, per cui se si usa un tool antivirus difficilmente
lo si individua. Sono nati come strumenti atti a spiare (violazione di
privacy) e fondamentalmente rappresentano un mezzo per controllare a
distanza (controllo remoto) le risorse hardware e software di un
PC. Con controllo remoto di un sistema si intende che su tale PC sono
effettuabili molte delle operazioni che possono attuarsi direttamente
davanti ad esso, ma a distanza. Un trojan è costituito da due moduli
principali: un programma server ed un programma client.
Il server è il programma di piccole dimensioni che infetta un PC, cioè
quando un PC è infetto da un trojan allora significa che nel file system
di quel PC è presente un programma trojan-server installato che
automaticamente si carica in memoria (vale a dire, si lancia in esecuzione
da solo). Il client è invece il programma che usa il "pirata"
per controllare un PC quando questo è infetto da un trojan (e solo in
quest'ultima ipotesi). Se un PC è infetto da un trojan, quando questo
viene connesso ad Internet, il server-trojan rimane nascosto (nel senso
che non ci si accorge che esiste, da cui il nome) e pronto per ricevere
richieste di connessione (e successivamente comandi) da parte di un
qualunque PC in rete che disponga di un programma trojan-client e che sia
maneggiato da un qualunque utente che non sia necessariamente un "pirata
telematico". I trojan sono molto diffusi, nel senso che una gran
percentuale dei nostri PC è infetta a nostra insaputa ed inoltre sono di
facile acquisizione nella grande rete sia i programmi che infettano che
quelli per il controllo di un PC infetto. Solitamente vengono distribuiti
insieme, sia il lato server che il lato client, e per la maggiore sono
programmi della categoria freeware.
Cosa
succede se si ha il PC infetto da un trojan e qualcuno si connette ad
esso.
Praticamente può far di tutto: dalla lettura di tutti i files personali
sull'hard-disk (tra cui la posta elettronica, le password, ...), alla
cancellazione di questi (fino a distruggere tutto o parte del file system
o comunque i files essenziali per l'avvio di Windows e rendere così il PC
inutilizzabile). Può fare scherzi bizzarri (apertura dello sportellino
del CD-ROM, attivazione di suoni, scambio tasti del mouse, riavvio del
sistema, ...). Può ascoltare ciò che si digita dalla tastiera, mentre si
scrive una lettera o si dialoga in chat. Altro ancora...
Come viene
infettato un PC da un trojan.
Il modo più semplice per acquisire (nel senso di infettarsi) un trojan è
quello di scaricare un programma apparentemente innocuo (un gioco,
un'applicazione di qualunque tipo) dalla rete che però dentro sé
nasconde anche un programmino trojan-server che si installa nel PC a
propria insaputa! Come succede per i virus, dopotutto. Non basta però che
tra questi files sia presente un trojan-server, ma bisogna anche
programmarlo in modo tale che questo si carichi in memoria all'avvio o
alla connessione del sistema della vittima, che sia fatto per via del
registro di configurazione o per via dei files di inizializzazione di
Windows (alla vecchia maniera!). Come fare questo? Esistono programmini
che riescono ad integrare i contenuti di pacchetti d'installazione comune
con programmi virus.
Come fa un
"pirata" a sapere se un PC è infetto da qualche trojan per
connettersi ad esso.
Esistono programmi che effettuano la scansione delle porte di un IP
(singolo PC) o di un intervallo di domini IP (più PC) per individuare su
questi l'esistenza di trojan-server pronti a ricevere comandi. Questi
programmi sono peraltro molto diffusi e spesso sono inclusi direttamente
nel programma di controllo di un trojan (trojan lato client) e nei
programmi di chat.
Esempio
pratico
Ammettiamo che si voglia trovare in rete una casuale vittima di un trojan
SubSeven nella vers. 2.1 (ALLO SCOPO DI AIUTARLO AD ELIMINARE IL TROJAN CHE
INFETTA IL SUO PC :). Procediamo perciò per via indiretta, senza sapere
nulla a priori sul suo conto. Le informazioni di cui necessitiamo in
questo caso sono la consapevolezza che su una macchina ci sia un
SubSeven-server in ascolto sulla porta 27374 (porta default per il trojan
SubSeven) ed il suo indirizzo IP nella forma classica xxx.yyy.zzz.www.
Innanzitutto conviene procurarci un programma di chat (IRC client) come looksharp,
costruito su mIRC. Da qui, dopo aver impostato i soliti parametri
personali e quelli del nostro abituale server chat (ad esempio irc.tin.it
sulla porta 6667, conveniente se vogliamo accorciare i tempi di
individuazione dell'IP completo), passiamo ad impostare le funzioni di
scansione delle porte sulle macchine remote (in breve, in "General
Setup", alla scheda "XAPS", selezionare la casella "ports"
ed immettere manualmente "27374" nello spazio al suo fianco,
eliminando eventuali altre informazioni già presenti in tale spazio).
Effettuiamo ora la connessione al server chat ed entriamo nei canali. La
scansione verrà effettuata automaticamente ed in modo trasparente a noi,
che nel frattempo chattiamo, sulle porte dei PC degli utenti presenti nei
canali in cui ci troviamo. Appena rilevata una vittima del trojan SubSeven,
apparirà una nuova finestrella denominata "XAPS". Da qui
potremo leggere il suo nick ed il suo indirizzo IP. Se questo IP non è
nella forma xxx.yyy.zzz.www (tale può apparire in forma differente in
dipendenza dal provider server a cui tale utente è connesso) bisogna
effettuare la conversione nella forma voluta (selezionando il relativo
nick nella lista utenti di un canale in cui è presente e selezionando
"DNS lookup" dal menù rapido che appare una volta cliccato esso
con il tasto destro del mouse. Dopodiché si potrà leggere e copiare il
suo IP nella forma voluta dalla finestrella "Status"). A questo
punto potremo informare l'utente direttamente dalla chat che è infetto
dal trojan SubSeven e quindi domandargli il PERMESSO di accedere al suo
sistema per aiutarlo a rimuovere esso. Se concesso tale, si potrà aprire
il SubSeven-client, immettere l'IP trovato e impostare il numero di porta
"27374". Cliccato su "connect", potrebbe essere
richiesta una password, nel qual caso potremo rispondere con "cancel".
La connessione potrebbe essere ora attiva. Nel menù del SubSeven,
selezioniamo "connection", andiamo alla sezione "server
option" e clicchiamo su "remove server". Dopo una conferma
di esecuzione dell'operazione avremo portato a termine la nostra buona
azione!
I
protocolli TCP/IP e le porte.
I sistemi connessi ad Internet comunicano tra di loro utilizzando delle
regole; queste regole sono racchiuse e definite nel protocollo TCP/IP, o
meglio, nel pacchetto di protocolli TCP/IP. In base a tale protocollo, affinché
un PC si possa connettere ad un altro PC (o sistema informatico,
in generale) è necessario che esso conosca l'indirizzo IP (es.
62.120.184.7) della macchina remota e la porta sulla quale essa è in
ascolto (cioè pronta ad accettare comandi). Per quanto definito nel
protocollo TCP/IP, ogni sistema dispone di all'incirca 65.000 porte
(numerate da 0 a 65.000); per vederla in analogia ai sistemi radiofonici,
una porta è comparabile alla frequenza di un canale sulla quale ci si
deve sintonizzare per ascoltare una specifica emittente. Un centinaio di
queste porte sono riservate (vale a dire, già assegnate dal protocollo
TCP/IP a programmi e comandi), le altre tutte libere e disponibili.
I trojan
horse.
I trojan noti sono centinaia, ma tutti con le stesse caratteristiche.
Ognuno di essi è costituito dalla coppia di programmi client-server.
Quando un PC è infetto da un trojan, allora significa che tra i files del
suo hard-disk è presente una copia di programma trojan-server. Questo
programma va in esecuzione quando si avvia il PC ed inizia ad operare (e
diventare una minaccia) alla connessione del PC in rete. A questo punto il
trojan-server resta in ascolto sulla porta per cui è stato programmato
nell'attesa di ricevere comandi. Solitamente i trojan operano su porte
predefinite (es. il trojan NetBus1.x sulla porta 12345/12346, il trojan
NetBusPro sulla porta 20034, il trojan SubSeven sulla porta 27374, ...) ma
questa non è una regola. Un trojan-server può anche essere protetto da
una password, questo per permettere l'accesso ed il controllo di un PC
infetto in maniera limitata e non da parte di un qualunque "hacker"
alla ricerca casuale di prede. La connessione ad un PC infetto può
avvenire solo utilizzando il rispettivo programma client (ad esempio, se
un PC è infetto dal trojan SubSeven, occorrerà utilizzare il
SubSeven-client per potersi connettere e controllare tale PC).
Come ci si
accorge se il proprio sistema è infetto da un trojan.
Un primo metodo per individuare un trojan nel proprio sistema è quello di
utilizzare dei semplici programmi che monitorano le porte del PC quando
questo è connesso ad Internet. Questi programmi sono solo informativi,
cioè elencano le diverse porte in ascolto o attive in un dato istante e
da qui bisogna individuare se tra queste ce ne sia qualcuna sospetta: non
è sempre molto semplice capire dal solo numero di porta se esiste un
trojan nel proprio sistema. (NukeNabber)
Un secondo metodo è quello di utilizzare programmi simili ma attivi, cioè
capaci di individuare in maniera automatica richieste di connessione
sospette. (CheckBO)
Un metodo più affidabile è quello di utilizzare un firewall locale che
controlla l'intero flusso di comunicazione da/verso la rete e garantisce
un grado di sicurezza molto elevato non solo nei riguardi dei trojan. (ZoneAlarm)
Come si
elimina un trojan dal proprio sistema.
Esistono programmi anti-trojan, simili nel comportamento agli anti-virus.
Questi possono scandire l'intero hard-disk o parte di esso alla ricerca di
trojan-server istallati in un PC e comprendono anche task residenti in
memoria per individuare in tempo reale l'insinuarsi di un trojan nel PC.
Una volta eliminati tutti gli eventuali trojans presenti sul proprio PC
non ci sarà più nessun rischio che qualcuno si possa connettere al
nostro PC e non sarà allora più necessario monitorare le porte. (BackWork)
E' anche possibile rimuovere un trojan a distanza: dopo che si è
individuata una vittima e ci si è connessi utilizzando un trojan-client,
questo programma dispone di solito anche di comandi per eliminare a
distanza il trojan-server che infetta il sistema remoto.
Trojans First Aid Kit | 3.0 | Utilità che raccoglie un pacchetto di programmi destinato innanzitutto a rimuovere i trojans che potrebbero infettare il proprio sistema. E' in grado di riconoscere ben 255 trojans noti. Inoltre include un dispositivo d'esplorazione che può rilevare nuovi trojans sconosciuti. E' anche in grado di fungere da client per una ventina di trojan più diffusi. |
BackWork | 2.12 | Utilità che effettua la scansione dei files per la ricerca di trojan horse sul proprio PC. Attualmente è in grado di riconoscerne ben 250. Uno strumento di semplice uso ed indispensabile per evitare di essere spiati da sconosciuti. |
CheckBO | 1.56 | Ottimo ed indispensabile programma che monitora le porte di comunicazione per impedire accessi non autorizzati al proprio PC durante la connessione ad Internet. Sono moltissimi i PC infetti dai trojan e, nella nostra inconsapevolezza, manipolabili da hacker (e non solo) che potrebbero fare di tutto nel nostro sistema di files: dall'acquisizione dei nostri files, alla cancellazione di essi e tanto altro! |
NukeNabber | 2.9 | Utilità che si programma in modo da ascoltare le porte TCP e UDP attraverso le quali passano gli attacchi al proprio PC connesso ad Internet. Il programma è in grado di monitorare 50 porte simultaneamente e fornire tutte le informazioni che servono per identificare e tracciare gli attacchi. Il programma include inoltre un metodo per trovare il nickname di chi attacca sui popolari server IRC. |
ZoneAlarm | 2.1.1.44 | Ottimo firewall, facile, funzionale e gratuito solo per uso personale, fornisce da solo un elevato grado di sicurezza essenziale per un PC connesso ad Internet. Controlla ogni attività collegata ad Internet e permette di bloccarle se rilevata un'azione sospetta. Ideale per difendersi da Trojan e Spyware o da ogni altra azione "pirata" di hackers. |
ZoneAlarm (TRADUZIONE ITALIANA) | 2.1.1.44 | Traduzione della versione inglese di ZoneAlarm, per utilizzarla, occorre prima aver installato la versione inglese, successivamente scaricare la traduzione, e scompattare il contenuto nel direttorio creato dall'installazione originale del programma (ATTENZIONE: scaricando l'aggiornamento di ZoneAlarm, la 2.1.1.6, NON potrai usufruire della VERSIONE ITALIANA!). |
Con Seal PC Firewall | 2.09 |
Ottimo firewall, facile, funzionale che permette il blocco di possibili intrusi nel vostro PC (valido per 30 giorni con licenza) |
Con Seal PC Firewall (LIC.) | Licenza per 30 giorni |
© Copyright "Il
Sito di Andrea Fracassi" - Gaggiano
Tutte le informazioni, testi,
immagini o suoni contenuti in questa specifica pagina sono di proprietà di
Andrea Fracassi e sono soggette a Copyright.
La riproduzione anche elettronica e la trasmissione di queste informazioni
richiede il consenso scritto di Andrea Fracassi.
Tutti i diritti riservati - All rights reserved
Pagina realizzata da Fracassi Andrea |