dess iir tunneling des flux réseaux dans des environnements de type « http-only » application...
TRANSCRIPT
DESS IIR
Tunneling des flux réseaux dans des Tunneling des flux réseaux dans des environnements de type « HTTP-only »environnements de type « HTTP-only »
Application SocksViaHTTP
2
DESS IIR
MotivationsMotivations
Le tunneling est un sujet qui a été abordé de nombreuses fois en OSI/IP
Mais: vision synthétique de cette solution technique Quels sont les problèmes liés à une véritable
implémentation
Vision essentiellement axée sur les couches bases Choix d’un type de tunneling à un niveau plus applicatif:
HTTP
3
DESS IIR
PlanPlan
Introduction Communication avec Proxy HTTP – Firewall Communication avec SOCKS via HTTP Portion client et interface SOCKS Portion client et « tunneling direct » Portion serveur : concepts Portion serveur : technologie Remarques Démonstration Conclusion Questions
4
DESS IIR
IntroductionIntroduction
Avec le développement de l'Internet, et des liaisons à connexions permanentes, de plus en plus de particuliers ou d’entreprises cherchent à partager leur accès au réseau mondial.
Solutions: NAT (Network Address Translation) et Proxy– NAT: indépendant du protocole, transparent– Proxy : dépendant du protocole, interprète les données
Critères décisifs de l’entreprise : sécurité et bande passante optimale
5
DESS IIR
Communication avec Proxy HTTP – FirewallCommunication avec Proxy HTTP – Firewall
Cette architecture :– n’autorise que des requêtes HTTP– Interdit l’utilisation des services comme le telnet ou le FTP
Firewall
Proxy/Cache
LAN
CommunicationHTTP port 80
vers l’exterieur
Autre type decommunication
INTERNET
Serveur
6
DESS IIR
Communication avec SOCKS via HTTP Communication avec SOCKS via HTTP
Encapsulation des données dans un tunnel HTTP– Implique l’existence d’une machine de relais.– Et d’un système d’interconnexion entre portion cliente et
application cliente.
INTERNET
Serveur
RelaisPortion ServeurSocksViaHttp
Firewall
Proxy/Cache
LAN
Communication
Portion ClienteSocksViaHttp
7
DESS IIR
SOCKS via HTTP – Portion client SOCKS via HTTP – Portion client
Interface grâce à l’utilisation d’un serveur SOCKS– Trois versions supportées SOCKSv4, SOCKSv4.A, SOCKSv5.– Système d’interconnexion entre portion client et application
client
LAN
Communication Tunneling
HTTPPortion ClienteSocksViaHttp
Socks
8
DESS IIR
SOCKS via HTTP – Portion client SOCKS via HTTP – Portion client
Interface grâce au « tunneling direct »– Pour les applications non compatibles avec SOCKS.– Utilisable que pour des applications avec des numéros de ports
statiques.
LAN
Communication
Tunneling HTTPPortion ClienteSocksViaHttp
VNC
9
DESS IIR
SOCKS via HTTP – Portion serveur SOCKS via HTTP – Portion serveur
La portion serveur est responsable des connexions avec l’application serveur
Nécessité de maintenir un contexte pour chaque connexion dont elle a la responsabilité
Communication entre les portions client et serveur
matérialisée par l’envoi et la réception de messages HTTP contenant une classe JAVA sérialisée.
COMMANDE
IDENTIFIANT
DONNEES
ETAT
10
DESS IIR
SOCKS via HTTP – Portion serveur SOCKS via HTTP – Portion serveur
Technologie Servlet
– La spécification Servlet définit un modèle de composants côté serveur qui peut être implémenté par les fournisseurs de serveurs Web. Les servlets offrent une API simple mais puissante pour générer dynamiquement des pages Web
jHTTPServer
– Constitué d’un moteur HTTP il assure l’exécution de Servlets. Intégré à SocksViaHTTP il permet de mettre en place facilement la portion serveur
11
DESS IIR
Remarques Remarques
SocksCap pour Windows
– Il intercepte de manière transparente les appels à l’API WinSock
– permet de remplacer le mode « tunneling direct »
SSL/TLS
– Côté application serveur certains certificats peuvent être générés en tenant compte de l’IP publique de la connexion entrante
– Cas de blocage côté client
– Solution: utiliser un wrapper SSL comme TLSWRAP pour le FTPS
12
DESS IIR
Démonstration Démonstration
PROXY
PARIS
LYON
FIREWALL
RELAIS S.V.H.cqs.dyndns.org
ADSL 128Ko/32Ko
RELAIS S.V.H.michmeu.dyndns.org
ADSL 64Ko/16Ko
Ordinateur
OrdinateurOrdinateur
deb.dyndns.orgADSL 64Ko/16Ko
13
DESS IIR
En pratique: sous Windows En pratique: sous Windows Nom Protocoles testés Mode Remarques
FlashFXP FTP, FTPS SocksTotalement fonctionnel, modes SOCKSv4 ou SOCKSv5
CuteFTP FTP, FTPS Socks
Idem mis à part la résolution des noms. CuteFTP ne fait aucune requête de résolution
SecureCRT TELNET, SSH Socks Totalement fonctionnel
Telnet TELNET Tunnel direct Totalement fonctionnel
Outlook Express POP3 Socks Totalement fonctionnel
Outlook POP3, IMAP Tunnel direct Totalement fonctionnel
Internet Explorer HTTP Tunnel direct Totalement fonctionnel
VncViewer VNC Tunnel direct Totalement fonctionnel
mIRC IRC Socks
Totalement fonctionnel. Support du SOCKSv4, SOCKSv4.A et SOCKSv5.0
ICQ ICQ Socks
Ne fonctionne que en SOCKSv4.0. Les requêtes SOCKS v5.0 ne sont pas valides
14
DESS IIR
En pratique: sous Unix En pratique: sous Unix
Nom Protocoles testés Mode Remarques
lFTP FTP, FTPS Socks Totalement fonctionnel
IglooFTP FTP Socks Totalement fonctionnel
Telnet TELNET Tunnel direct Totalement fonctionnel
Mozilla HTTP Socks Totalement fonctionnel
VncViewer VNC Tunnel direct Totalement fonctionnel
Sirc IRC SocksTotalement fonctionnel, Support du SOCKSv4.0 et SOCKSv4.A
15
DESS IIR
Conclusion Conclusion
Le tunneling HTTP est un moyen particulièrement efficace pour permettre l’utilisation de services utiles dans des environnements très restrictifs munis de Proxy HTTP et de firewalls.
Le problème de la sécurité– SOCKSViaHTTP ne permet que des « connexions clientes »
Enrichissement personnel– Technologies de tunneling et d’encapsulation– Critères de sécurité dans les architectures réseaux d’aujourd’hui
16
DESS IIR
Questions Questions
?