Vous êtes sur la page 1sur 30

Serveurs mandataires

Mathieu BLANC

Proxies

08/12/10

Serveurs mandataires

Gnralits

Proxies

08/12/10

Architecture, cloisonnement et redondance


Architecture DMZ Serveurs mandataires

Proxies

08/12/10

Architecture rseau
Architecture au sens large : comment organiser son rseau pour en tirer le meilleur parti en terme de fonctionnalits de performances d'administration de scurit L'architecture ainsi dtermine n'est pas restreinte un niveau du systme OSI mais au contraire influera sur l'architecture logique l'architecture physique Cependant elle est conditionne par des critres financiers : l'architecture idale peut tre trs onreuse matriels : quipements disponibles, dimension du site... humains : technicit, difficults d'exploitation

Proxies

08/12/10

Principes d'une architecture rseau


Un rseau prsente des machines aux rles et aux fonctionnements divers : pourquoi toutes les laisser sur le mme plan ? Plutt qu'une architecture plat (ie une seule plage d'adresse, pas de routage interne), on prfrera un agencement prenant en compte ces diversits. Ce type d'architecture facilite ensuite l'administration exemple : les administrateurs des stations ne seront pas les mmes que ceux des serveurs de base de donnes la mise en place de mesures de scurit contrle des flux entre les zones Mais il est plus complexe plus d'quipements grer ces architectures peuvent rapidement devenir trs compliques

Proxies

08/12/10

Dcoupage en sous-rseaux
La base de l'architecture va tre un dcoupage du rseau global en zones, le plus souvent associes un sous-rseau ou un ensemble de sous-rseaux IP. Les critres de dcoupage sont multiples accessibilit de la zone fonctions des machines population de la zone autres : systmes d'exploitation, flux spciaux L'implmentation est possible via des sous-rseaux IP mais aussi des VLANs spcifiques, gnralement calqus sur le dcoupage effectu au niveau 3 des outils de filtrage et de routage adapts

Proxies

08/12/10

Equipements de dcoupage
Un dcoupage logique bas sur des sous-rseaux IP, renforc par l'utilisation de VLANs, est un bon dpart pour dfinir une architecture. L'utilisation adapte de pare-feu (firewalls) et de mandataires (proxies) apporte un plus pour la scurit les performances Le pare-feu permet de contrler les flux entrant et sortant d'une ou plusieurs zones d'implmenter de la translation d'adresse (NAT) possibilit pour un rseau non rout d'atteindre l'extrieur le mandataire permet de donner accs certains services rseau d'implmenter du contrle au niveau applicatif (http par exemple) d'amliorer les performances (cache...)

Proxies

08/12/10

Equipements de dcoupage
Utilisation avec des rseaux privs proxy : travaille au niveau applicatif

Priv

192.168.1.0/24

brin priv

proxy

brin public

Internet

pare-feu : travaille au niveau rseau

Priv

192.168.1.0/24

brin priv

pare-feu

brin public

Internet

Proxies

08/12/10

DMZ : zone dmilitarise


Au sein du rseau, certains serveurs (mail, DNS, web) doivent tre accessibles depuis l'extrieur pour offrir un service sur Internet. Ils occupent une place particulire dans la politique de scurit du rseau : la zone qui leur est rserve est appele DMZ (DeMilitarized Zone). On reprsente alors le rseau comme suit :

Internet

pare-feu

Rseau interne

DMZ

Proxies

08/12/10

DMZ : zone dmilitarise


La politique de scurit dfinit traditionnellement, et succinctement, les rgles sur les flux comme suit : Depuis le rseau interne vers l'extrieur : autoris, ou soumis restrictions (proxy...) vers la DMZ : autoris Depuis l'extrieur vers la DMZ : autoris vers le rseau interne : interdit Depuis la DMZ vers le rseau interne : interdit vers l'extrieur : interdit Le fait que les serveurs en DMZ soient exposs au monde extrieur ncessite qu'ils soient renforcs au niveau scurit blindage systme surveillance (IDS, logs)

Proxies

08/12/10

10

DMZ avance

DMZ entrante

Internet

pare-feu

Rseau interne

DMZ sortante

Proxies

08/12/10

11

DMZ avance
DMZ entrante Serveurs publics Serveurs lgers : DNS Serveurs de donnes : HTTP, FTP, bases de donnes Passerelles Serveurs : Mail entrant, VPN Scurit : Reverse-proxy DMZ sortante Passerelles Proxies HTTP, FTP, gnriques Mail sortant VPN

Proxies

08/12/10

12

Le filtrage applicatif (proxies)


Le rle est similaire celui d'un pare-feu stateful de niveau 3-4 Autoriser ou interdire les accs entre diffrents rseaux selon la politique de scurit en vigueur Seule la mthode est diffrente Un proxy se positionne comme intermdiaire entre chaque connexion rseau Les clients se connectent au proxy au lieu de se connecter directement la destination finale, le proxy initie la seconde moiti de la connexion Intrt : aucune connexion directe entre les systmes situs de part et d'autre du pare-feu Les proxies sont gnralement mis en oeuvre par des programmes de confiance, petits, robustes et spcialiss pour une protocole donn Chaque proxy a une connaissance exhaustive du protocole qu'il vhicule analyse de scurit complte Solution du pauvre : proxies gnriques

Proxies

08/12/10

13

Fonctionnement d'un proxy applicatif


Un proxy se comporte la la fois comme client et serveur Un client souhaitant se connecter vers un serveur initie d'abord une connexion vers le proxy Ce dernier ouvre alors une connexion vers le serveur destinataire Les donnes envoyes par le client sont retransmise vers le serveur, et les donnes reues du serveur sont renvoyes vers le client Chaque requte/rponse est analyse afin de vrifier son adquation avec la politique de scurit Notion de proxy transparent Le client ne sait pas qu'il utilise un proxy pour se connecter au serveur Ncessite de modifier l'entte IP Firewall proxy Machine blinde ( bastion ) possdant plusieurs interfaces rseaux et un ensemble de proxies spcialiss Les produits commerciaux supportent souvent un trs grand nombre de protocoles Etendue relle des vrifications protocolaires ?
Proxies 08/12/10 14

Avantages et inconvnients des proxies


Analyse plus ou moins complte de la couche applicative Les jounaux de logs sont en gnral nbeaucoup plus complets et facilitent les rsolutions d'incidents Masquage de la topologie interne du rseau Le NAT peut fournir la mme fonctionnalit mais dans une moindre mesure (TTL, IPID, OS fingerprinting, etc.) Les proxies ne sont pas toujours compatibles avec les clients ou les implmentations d'un protocole donn Nouvelle application == nouveau proxy Performances Plus l'analyse protocolaire est volue, plus l'impact sur les performances est important Difficults de configuration ou de mise en place On trouve de moins en moins de vritables proxies dans les produits commerciaux, la tendance s'oriente plus vers du NAT avec un contrle (simplifi) de la couche applicative

Proxies

08/12/10

15

Serveurs mandataires

Proxy HTTP

Proxies

08/12/10

16

Proxy HTTP
Souvent appel proxy Web Deux fonctions principales Filtrage applicatif Mise en cache du contenu statique Gnralement plac dans une DMZ En coupure : les utilisateurs doivent passer par le proxy pour accder l'extrieur Avec authentification : amlioration de la traabilit Premire rponse informe le client qu'il doit fournir une auth En-tte : Proxy-Authenticate: Basic Deuxime requte du client avec ses credentials En-tte : Proxy-Authorization: Basic

Proxies

08/12/10

17

Proxy HTTP
Fonctionnement Reoit les connexions de clients autoriss Typiquement des ACL IP sources IP destinations Domaines destinations Port TCP Classiquement 80, 443, mais d'autres peuvent tre utiliss URL autorises R-met les requtes si autorises Mthode GET, POST pour HTTP Ajout de l'en-tte X-Forwarded-For Mthode CONNECT pour HTTPS Redirection transparente de la requte du client

Proxies

08/12/10

18

Mise en cache
Support disque Espace de stockage physique pour la conservation des objets mis en cache Espace de stockage en mmoire vive pour les objets les plus utiliss Politique LRU : Least Recently Used Remplacement des objets les moins rcemment utiliss et criture sur disque Systme de fichiers spcialis Optimis pour le stockage de nombreux petits fichiers Rangement par table de hachage

Proxies

08/12/10

19

Mise en cache
Dcision de mise en cache Plusieurs en-ttes HTTP contrlent la mise en cache des ressources Requtes Cache-Control Le client contrle la mise en cache dans les proxies If-Modified-Since Indique la date o l'on a tlcharg la ressource pour la dernire fois, serveur rpond code 304 si ressource non modifie Rponse Cache-Control No-cache : ne pas mettre en cache (typiquement, scripts PHP ou autres) No-store : si risque d'crire dans le cache des informations prives Last-Modified Indique la date de dernire modification de la ressource Etag Hash de la ressource, indique une certaine version
Proxies 08/12/10 20

Protocoles spcifiques
ICAP : Internet Content Adaptation Protocol Protocole de communication entre un cache et diffrent services d'adaptation du contenu Antivirus Filtrage de scripts, publicits... Objets ActiveX, Flash... ICP : Internet Cache Protocol Synchronisation de caches Web Hirarchies de caches Partage d'objets mis en cache HTCP : Hypertext caching protocol Dcouverte de proxies Gestion des proxies : mise en cache, effacement

Proxies

08/12/10

21

Exemples de proxies HTTP


Proxies gnraux Squid Le plus largement utilis Configuration extrmement riche Support de ICP, HTCP, ICAP (optionnel) Nombreuses options de tuning des caches RAM, disque Privoxy Excellent proxy filtrant Complexe configurer Nombreuses options : Manipulations des en-ttes HTTP Contrle des cookies Actions sur les images, publicits Retrait des pop-ups, scripts Combinaison avec squid pour le cache

Proxies

08/12/10

22

Exemples de proxies HTTP


Proxies pour l'analyse d'applications Web Webscarab Burp W3AF Outils Open Source Interception des requtes la sortie du client Manipulation des diffrents champs de l'URL Manipulation des donnes des requtes POST Fuzzing Objectifs : dcouverte de vulnrabilits ou de problmes de configuration

Proxies

08/12/10

23

Filtrage complmentaire
Black listing d'URL squidguard Interface avec squid : directive url_rewrite_program Listes d'URL bloquer Filtrage avanc d'URL Filtrage Dansguardian Equivalent de privoxy Antivirus ClamAV : antivirus open source Gestion du protocole ICAP c_icap

Proxies

08/12/10

24

Serveurs mandataires

Autres proxies

Proxies

08/12/10

25

Proxies FTP
FTP (File Tranfer Protocol) est un protocole complexe Clairement hrit d'une poque o le filtrage rseau n'existait pas 1 canal de commande (port 21/TCP) Canaux de transfert ouvert la vole suivant les besoins Commande PORT (mode actif) Ouverture d'un port sur le client pour la rception de donnes Typiquement le serveur se connecte avec le port source 20 Commande PASV (mode passif) Ouverture d'un port supplmentaire sur le serveur pour le tlchargement des donnes Les proxies FTP fonctionnent en collaboration avec le pare-feu Deux possibilits Interprtation des commandes FTP (Netfilter) Proxy communique avec le pare-feu (pf)

Proxies

08/12/10

26

Proxies FTP
Squid Proxy FTP le plus utilis, cause du dploiement pour le cache Web Squid gnre directement les listings des dossiers FTP pour affichage dans le navigateur Protocole HFTP : accs un serveur FTP via un proxy HTTP Utilis par les clients FTP classiques comme lftp Proxy FTP pur (exemple : frox, ftp-proxy) Le login indique au proxy le site contacter Login : user:pass@site Password : mot de passe sur le proxy Le proxy agit comme le client

Proxies

08/12/10

27

Proxy gnrique
Les quipements de filtrage propritaires intgrent des proxies gnriques, qui ne font que retransmettre les requtes des clients et les rponses des serveurs Pour les protocoles non grs (exclus HTTP, FTP...) Implmentation standard : socks Protocole SOCKS4 Le client socks envoie un paquet contenant un type de connexion (TCP bind ou TCP connect), une adresse IPv4 destination et un port TCP Le serveur indique en rponse si l'accs est tabli, ou refus Protocole SOCKS5 Extension : un premier change client-serveur pour l'authentification, puis une demande de connexion Support IPv6, UDP Rponse plus dtaille du serveur indiquant prcisment les cas d'erreurs (host unreachable, TTL expired...) Cration de socks chiffr avec OpenSSH (option -D) Serveur Dante
Proxies 08/12/10 28

Proxy gnrique
Tor : proxy anonymisant Principe de Tor : cration d'une chane de connexions masquant l'origine des connexions L'anonymat du client est prserv Chiffrement des connexions intermdiaires Principe d'onion routing Les donnes des connexions sont envoyes par le client avec plusieurs couches de chiffrement Les nuds intermdiaires ne connaissent que le prochain nud Seul le nud de sortie peut voir les donnes en clair (chiffrement recommand) Le retour se fait suivant le mme circuit Inconvnients Dbit faible, latence leve Nuds de sortie : lieu privilgi pour l'espionnage des communications

Proxies

08/12/10

29

Proxies particuliers
Tunnel sur proxy HTTPS Un proxy ne fait que retransmettre les donnes en mode CONNECT, il est donc possible de dtourner le fonctionnement pour faire passer d'autres protocoles que HTTPS Les ports destinations doivent tre autoriss par le proxy Typiquement, SSH (port 22/TCP) Automatisation : proxytunnel, corkscrew, netcat, connect-proxy Port partag pour SSH/SSL Dans les cas o on ne peut se connecter en sortie que sur le port 443/TCP, normalement utilis pour HTTPS, une solution existante pour permettre la connexion SSH Un wrapper redirige la connexion vers SSH ou un serveur HTTPS en fonction des en-ttes Serveur sslh

Proxies

08/12/10

30