Come funzionano le comunicazioni tra 2 computer

Se c'e' una comunicazione e' abbastanza scontato che esistano 2 o piu' "cose" che comunicano e questi sono i computer. Cosi' come un Italiano che non conosce altre lingue non e' in grado di capire l'inglese e viceversa anche 2 computer che parlano "lingue" differenti non sono in grado di capirsi. Queste lingue si chiamano Protocolli di Comunicazione (es. Udp, Tcp/Ip, protocolli come quelli usati da Napster o dalle altre applicazioni di file sharing/peer-to-peer). Esempio per assurdo: se provaste ad accedere ai server di Napster usando Morpheus non avrete alcuna possibiltā di farcela perchč i 2 protocolli sono differenti. Dunque 2 Pc per comprendersi devono parlare lo stesso linguaggio. Noi esseri umani per comunicare usiamo la bocca mentre il computer usa "Le Porte". Alcune giā le conoscete come ad esempio la seriale e la parallela (Com e Lpt per modem, stampanti, etc). Le Porte dei software di comunicazione invece, essendo software, sono porte non reali, sono le cosiddette Porte Logiche, create via software. Ma quante sono queste benedette porte? Sono il quadrato di 256, ovvero 65536. Tante direte voi... ebbene si sono tante. E guardarle tutte e' un po' complicato! Facciamo un esempio: Immaginiamo che il vostro computer si chiami Pinco e il computer al quale vi dovete connettere si chiami Pallino. Per capirsi i 2 Pc devono usare lo stesso protocollo, ma se invece di una sola comunicazione Pinco ne volesse aprire altre? Semplice, usera' altre porte per comunicare. Quindi e' possibile che Pinco e Pallino comunichino contemporaneamente con piu' protocolli e su piu' porte. Per fare degli esempi concreti riporto qui sotto alcune delle porte piu' comuni: 21 - Usata per le connessioni ai siti Ftp 23 - Usata per le connessioni Telnet 25 - Usata dai programmi che gestiscono la posta elettronica (Smtp) 80 - Usata per trasmettere pagine Html Le porte non devono essere necessariamente queste per i relativi servizi che ho elencato (Ftp, Http, etc.) perche' possono essere configurabili dall'utente. Se io voglio aprire una pagina internet all'indirizzo www.robamia.com, lancio il browser, scrivo il link e la pagina si apre. Mettiamo invece il caso che il webmaster di www.robamia.com abbia deciso di comunicare col mondo esterno su una porta diversa da quella 80, facciamo la 555, cosa dovrei fare? Semplicissimo: http://www.robamia.com:555 Ovviamente in questo modo e' piu' difficile raggiungere la pagina perche' il browser in automatico aggiunge :80 ai siti che noi inseriamo, (perchč come scritto sopra 80 č la porta standard di comunicazione per l'Http, quindi scrivere www.robamia.com o www.robamia.com:80 e' assolutamente la stessa cosa) e siamo noi a dover metterci quel :555 in fondo. Per accedere ad un sito Ftp dal nostro browser, senza dover utilizzare programmi specifici per l'accesso Ftp, i parametri sono invece questi: ftp://username:password@ip:numerodellaporta es: ftp://lupin:terzo@195.43.22.123:34 In questo modo mi connetto con login=lupin password=terzo all'indirizzo 195.43.22.123.34 alla porta 34; se avessi omesso il :34 il browser in automatico, avendo letto ftp all'inizio, ci avrebbe aggiunto 21. Ora mettiamo il caso che io mi connetta ad un indirizzo internet standard, cosa succede? Che il Pc a cui mi collego comunichera' con me dalla Sua porta 80 e io mi connettero' a lui da una porta generata a caso sul mio pc es. 1342. Io 1342 <----> 80 Pc-Remoto Ora il Pc Remoto potrebbe anche comunicare con me piu' volte, per esempio se apro la stessa pagina in un'altra finestra il Pc Remoto mi dara' sempre la sua porta 80 ma la seconda pagina sul mio computer avra' creato una ulteriore porta es. 3452 Io 1342 <----> 80 Pc-Remoto Io 3452 <----> 80 Pc-Remoto Il numero di connessioni contemporanee che una porta puo' fare sono configurabili, vi basti pensare agli errori che riceviamo quando cerchiamo di collegarci ad un sito Ftp troppo affollato: "Il server ha raggiunto la quota massima di connessioni contemporanee, riprovare in un secondo momento" o un messaggio simile. Quando un programma cerca di entrare in una delle vostre porte si dice che il programma stā "bussando", in inglese "ping" alla porta. Se il programma usa lo stesso protocollo ed ha le autorizzazioni necessarie (es. la richiesta di una password all'utente ecc.) la porta "gli apre" e iniziano a scambiarsi i dati. A volte il vostro computer puo' ricevere numerosi ping in porte sequenziali (una dietro l'altra in ordine numerico crescente)... probabilmente qualcuno sta cercando di vedere se c'e' qualche programma malefico installato nel vostro pc in grado di garantirgli l'accesso. Si tratta delle cosiddette BackDoor (porte di "servizio", ora capite il perche' del nome) aperte dai software Trojan, ormai diffusissimi :-(( Questi programmi funzionano di solito in coppia e sono formati da: * un Server installato (di solito in modo inconsapevole) sul vostro pc che si avvia automaticamente ad ogni riavvio del computer * un Client che da remoto si connette al server I danni che il client puo' fare sul vostro Pc grazie al server che (di solito) per sbaglio avete installato (probabilmente con un allegato di posta) dipendono dalle caratteristiche programmate nel server stesso. Possono essere una semplice chat oppure il blocco del computer, l'inversione dei tasti del mouse, dello schermo, cancellare-trasferire file e tante altre cose, dipende dalla fantasia del programmatore. Questi trojani di solito usano porte standard (per es. 12345 era la porta di NetBus, famoso trojano) ma alcuni permettono di scegliere quale porta usare per comunicare e permettono anche di proteggere la connessione con una password cosicche' solo chi ha configurato con quella password quel server di backdoor puo' entrare. Volendo potete anche usarli (i trojani) tra voi amici per avere una connessione abbastanza sicura, che altro non e' che lo scopo per cui e' nato Back Orifice 2000, famosissima backdoor. Per identificare una backdoor eventualmente presente sul vostro pc potete usare: * un Trojan Hunter (cacciatore di trojan) che pinga sulle porte piu' usate dai trojani e vede se rispondono * un Port Scanner per auto-pingarvi sulle porte comunemente usate dai trojani (che e' quello che fa il Trojan Hunter solo che questi č vecchio e conosce meno porte) * un Antivirus. Per eliminare queste backdoor bisogna servirsi di un antivirus aggiornato anche se alcune backdoor (quelle fatte in casa o le piu' nuove) difficilmente verranno rilevate (ecco perchč X-NetStat qui' ci puo' aiutare). Volendo esistono anche modi manuali per eliminare le backdoor, cancellando il server e i dati che lo fanno caricare in automatico all'avvio del computer, ma consiglierei un antivirus soprattutto per i meno esperti. Cos'č l'Ip? IP stā per Internet Protocol ed e' un altro protocollo di comunicazione utilizzato assieme al TCP. Viene indicato come un numero composto in 4 parti, aaa.bbb.ccc.ddd che puo'andare da 0.0.0.0 a 255.255.255.255 Questo numero e' convertibile con appositi software reperibili in rete (anche X-NetStat lo fā) in un nome e viceversa. Ad esempio scrivere http://www.altavista.com e' uguale a scrivere http://209.73.164.90, provate. Tali numeri possono essere scritti anche in esadecimale e ottadecimale ma ve li risparmio (comunque corrispondono tutti al medesimo indirizzo). A computer spento l'IP di ogni computer č 127.0.0.0 Ora questo benedetto IP e' un numero Univoco che identifica esattamente il vosto Pc, una specie di nome e cognome. Se si riesce a risalire all'IP della persona che stā usando un trojano sul vostro Pc, segnandosi anche l'ora a cui era connesso basta avere le giuste conoscenze alla Telecom Italia o ai servizi che forniscono le connessioni ad Internet (Tiscali, Libero, etc.) e si puo' risalire all' intestatario dell' abbonamento internet usato. Se non avete le conoscenze (cosa piu' probabile) non vi resta che fare una denuncia... mah... ne varrā la pena? Usando un programma di tipo Port Scanner siamo in grado di vedere quali porte sono aperte su di un determinato IP valutando le possibili vulnerabilita': * se e' infetto da trojani se un Pc avesse la porta 12345 aperta probabilmente quella porta e' stata aperta dal trojano NetBus anche se c'e' una remota possibilitā che sia stata aperta da altri programmi oppure anche da altri trojani con porte configurabili * se stā facendo girare software che presentano dei bugs i bugs sono sfruttabili per guadagnare l'accesso a quel Pc. Questi ultimi si chiamano in gergo Exploit ovvero Sfruttamenti e sono quelli usati dai veri Hacker per guadagnare l'accesso ad un computer... un vero hacker č tale quando č in grado di scoprire da solo tali bugs. Chi li scopre di solito non dice nulla in giro a meno che non sia passato un po' di tempo oppure non sia gia' disponibile una patch, spesso perchč vuole essere l'unico a poter sfruttare la sua scoperta. Ma non sempre e' cosi', a volte infatti vengono diffusi precocemente. Start Up Scaricate il programma da http://www.dark-e.com/mirror/xnsp400.exe ed installatelo. Una volta avviato si presenterā uno splash screen iniziale e, successivamente, la schermata principale. Configurazione pulsante Options in alto, Menu' General: * Show listening connection (mettere il segno di spunta) * Show additional info in connection table (mettere il segno di spunta) * Show splash (togliere il segno di spunta perche' velocizza l'apertura di X-Netstat) * Automatically refresh connections every XX seconds (mettere il segno di spunta) Da qui' potete configurare il numero di secondi che separano un refresh delle connessioni da un altro (a vostra discrezione, io lascio sempre 15). Se non mettete la spunta il refresh potra' essere effettuato solo manualmente dall'apposito bottone. * Selezionate Modem oppure Linee piu' veloci in basso a seconda di quello che avete (non "fregate" qui' altrimenti rischiate di sovraccarichare la connessione se selezionate una linea veloce quando non l'avete). Premete Ok per convalidare le modifiche. Adesso nella finestra principale mettete il segno di spunta su AutoResolve e Show Open Ports. La finestra centrale bianca aspetta solo che voi premiate il tasto Refresh dopodichč il programma inizierā a funzionare (e il refresh si attiverā automaticamente da solo ogni tot secondi settati prima nelle opzioni). Ora la barra con su scritto 05 in basso a destra comincera' a muoversi fino al 100% e, una volta giuntaci, appariranno in questa magnifica finestra numeracci/parole... cosa sono? Nient'altro che i computer che Al Momento - In Tempo Reale sono connessi a voi o viceversa. Adesso non odiatemi per quello che sto' per dire ma č ovvio che dobbiate essere connessi ad internet per utilizzare questo software :-) Spiegazione delle varie cose scritte: # - Indica il numero della connessione. Remote Addr - Indica il numero IP o il nome del computer al quale si e' connessi. Nel caso voleste il numero e non il nome selezionate la connessione e premete in alto il tasto Info, si aprira' una finestrella ed accanto alla dicitura IP apparira'... l'IP :-) (piu' avanti spieghero' le altre cose scritte in questa finestra). Local Port - Qui' e' indicata la porta aperta sul vostro computer. Remote Port - Qui' e' indicata la porta aperta sul computer remoto. Protocol - Ci dice il tipo di "lingua" utilizzata per comunicare tra le 2 porte. Status - Etablished - Significa che la porta stā comunicando con l'altra attivamente. Closed - La connessione e' chiusa e non e' attiva. Listen - Il vostro Pc stā attendendo una risposta. Syn_Sent - Il vostro Pc stā cercando di stabilire una connessione. Syn_Received - Il vostro Pc stā per connettersi a quella porta. Close_Wait - Il Pc remoto si e' disconnesso e si aspetta la chiusura della porta. Fin_Wait_1 - La connessione su quella porta stā per essere chiusa. Closing - Il nostro Pc stā chiudendo la porta. Last_Ack - Prossima chiusura della connessione. Fin_Wait_2 - Porta chiusa, attesa di chiusura della porta remota. Time_Wait - Attesa, dopo la chiusura, di una possibile ritrasmissione. Tcb_Discard - Blocco del controllo della connessione TCP eliminato. Time - Il momento in cui si e' creata quella connessione. Recognized - Potete scegliere di dare un nome ad un IP specifico che ritenete sicuro oppure nemico, lo potete fare sempre dal tasto Info e poi premendo su Change This Entry in alto nella finestrella appena aperta. Nella porzione inferiore invece abbiamo le porte connesse (una specie di riassunto), quelle che non sono presenti nella porzione superiore ma lo sono in quella inferiore sono porte di sistema (137,138,139 ed altre). In basso nella riga grigia (accanto alla barra 100%) c'e'il vostro IP e il nome del vostro computer. Ora selezionate una connessione qualunque e premete Info che lo spieghiamo: Ip: Ip del pc a cui siete connessi Hostname: nome del pc a cui siete connessi Local Port: porta aperta sul vostro pc \ Remote Port: porta apera sul pc remoto / il "?" serve per vedere se quella porta corrisponde a dei programmi standard che di solito la usano a patto che questi dati siano inseriti nel database di X-NetStat (ovviamente non e' detto che se e' aperta ci sia necessariamente quel programma che l'ha aperta, e' solo a titolo informativo, di solito e' quel programma ma potrebbe anche non esserlo). Protocol: la lingua parlata Status Code: vedi sopra Status Description: descrizione del codice come scritto sopra ma in inglese :) Ok: chiude la finestra Advanced LookUp: la cosa piu' bella di tutte! - Su "Address" ci vā l'Ip e non il nome del computer, ricordatevelo altrimenti non funziona. - Dopo aver messo l'Ip, premendo "Trace" vi vengono elencati tutti i Pc che sono in mezzo tra voi e quello remoto finale... carinissima cosa che vi fā anche capire il perche' a volte le connessioni siano cosi lente! - Su Whois Query invece dovete mettere sempre l'Ip (non il nome) e su Whois Server scegliere quello che volete (io preferisco whois.ripe.net) e poi premere Query. Vi appariranno le caratteristiche di quell'Ip e di tutta la rete di cui fa parte compresi nomi e cognomi dei proprietari della rete (non del singolo Ip, ma solo della rete di cui fā parte). Per Ripe la cosa e' anche accessibile da qui': http://www.ripe.net/perl/whois e nel quadrato va digiatato l'Ip. Il comando di identificazione della porta e' anche accessibile in alto sul tasto Port Info e valgono le cose dette per il "?" di local e remote port della finestra Info. Il tasto Tray invece vi manda il programma in basso a destra. Refesh invece vi permette di fare il refresh quando volete voi senza aspettare i secondi impostati (a patto che la spunta sia stata messa nelle opzioni, se non la mettete il refresh potra' essere solo manuale). Il tasto Adv Stat vi da' delle informazioni avanzate da cui pero', se siete novizi, potreste ricavare poche cose utili. Il tasto Programs vi permette di aprire programmi come da Start -> Esegui oppure di selezionarne alcuni da configurare per un uso gemello con X-NetStat. Note - Se riducete il programma ad icona finira' in basso a destra vicino all'ora, doppio click per "riesumarlo". - Il "Recognize As" e' anche accessibile cliccando col destro su una connessione assieme a molte delle opzioni sopracitate (l'opzione "NetBios Lookup" serve per vedere se il Pc remoto in questione ha installato il Netbios (per spiegare cos'č ci vorrebbe una guida a parte). - Se sapete che una certa porta e' utilizzata da un programma non documentato nel database di X-NetStat potete premere su Port Info e poi su Suggest per mandare una mail all'autore al riguardo. - Nel caso in cui la porta sia elencata come tipicamente usata da un trojano, premere sul bottone "Trojan horse information" (accessibile sempre nel menu' di Port Info ma solo se la porta e' riconosciuta come essere usata da un trojano) vi mandera' ad un database online con le caratteristiche del trojano stesso e spesso anche con le informazioni sul come rimuoverlo. - L'ultima versione di X-NetStat non-Pro ha anche la possibilita' di chiudere una porta eventualmente aperta, cosa che la versione Pro non sā ancora fare.

il 26/09/2005 10:43:00 75 click



Sei il primo a lasciare un commento!

Nome: *

Email:  

URL:  

testo grassetto testo italico testo sottolineato div allinea a sinistra align center align right div inserisci il link inserisci indirizzo email inserisci immagine inserisci quota inserisci rule orizzontale div

Il tuo commento: *