Come gia’ detto qui alcune societa’ stanno cercando di vendere applicazioni per bloccare skype dalle intranet.
Il sistema di skype e’ decentralizzato.

Come si vede da questa immagine, skype e’ composto da nodi e supernodi. Per diventare supernodi, e’ necessario avere un ip pubblico, ed abbastanza cpu/memoria e banda disponibile.
Sotto si vede una rappresentazione dei nodi europei.


Come si vede da questo diagramma di flusso, la procedura per collegarsi al network di skype e’ molto flessibile (forse troppo per alcune intranet).
L’ SC (skype client) cerca di connettersi a un HC (host cache, supernodo) direttamente via udp. Se non ci riesce, prova via http porta 80, se non ci riesce prova un tunnel con una CONNECT sulla 443 tcp. Se esiste un proxy, dovrebbe prendere le credenziali da explorer.
Insomma skype, riesce ad uscire da qualunque http proxy con abilitate le porte 80 e la 443.
Come bloccarlo?
Non e’ possibile bloccare gli HC, perche’ sono dinamici.
In una intanet non e’ plausibile bloccare tutto il traffico in uscita verso http e https… ma esiste un workaround che puo’ diventare un compromesso come viene descritto qui.
Il metodo e’ semplice, ma sembra efficace.
Skype sembra fare sempre delle CONNECT verso degli ip, e non degli hostname.
Configurando in questo modo squid:
# Your acl definitions
acl numeric_IPs urlpath_regex ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+
acl connect method CONNECT
# Apply your acls
http access deny connect numerics_IPs all
si bloccano le connect verso ip, ma non verso hostname.
I falsi positivi probabilmente saranno pochi, perche’ e’ molto probabile che quando si visitano siti https, si digiti l’ indirizzo e non il nome.
ulteriori informazioni:
An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol
p2p experts map SkypeNet’s Supernodes
Posted by becks in Voip, Skype, Protocol

