{"id":892,"date":"2011-04-10T13:24:01","date_gmt":"2011-04-10T12:24:01","guid":{"rendered":"http:\/\/blog.guiguiabloc.fr\/?p=892"},"modified":"2011-04-11T17:16:36","modified_gmt":"2011-04-11T16:16:36","slug":"palo-alto-networks-faut-il-repenser-notre-vision-du-firewall","status":"publish","type":"post","link":"http:\/\/blog.guiguiabloc.fr\/index.php\/2011\/04\/10\/palo-alto-networks-faut-il-repenser-notre-vision-du-firewall\/","title":{"rendered":"Palo Alto Networks : Faut-il repenser notre vision du Firewall ?"},"content":{"rendered":"<p style=\"text-align: center;\">\n<div id=\"attachment_924\" style=\"width: 250px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/Come_on_guys.jpg\" target=\"_blank\"><img aria-describedby=\"caption-attachment-924\" loading=\"lazy\" class=\"size-medium wp-image-924\" title=\"Come_on_guys\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/Come_on_guys-240x300.jpg\" alt=\"\" width=\"240\" height=\"300\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/Come_on_guys-240x300.jpg 240w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/Come_on_guys.jpg 401w\" sizes=\"(max-width: 240px) 100vw, 240px\" \/><\/a><p id=\"caption-attachment-924\" class=\"wp-caption-text\">Photographe:Cpl Barry Lloyd RLC Cr\u00e9dit : www.defenceimages.mod.uk<\/p><\/div>\n<p>Aujourd&rsquo;hui je vous propose de vous parler d&rsquo;une nouvelle g\u00e9n\u00e9ration de Firewall mais aussi, je l&rsquo;esp\u00e8re, vous pousser \u00e0 la r\u00e9flexion sur notre conception du firewall telle qu&rsquo;on l&rsquo;a aujourd&rsquo;hui en se demandant, si, apr\u00e8s tout, on n&rsquo;est pas un peu r\u00e9trograde.<\/p>\n<p>Petit historique.<\/p>\n<p><a title=\"http:\/\/www.paloaltonetworks.com\/\" href=\"http:\/\/www.paloaltonetworks.com\/\" target=\"_blank\">Palo Alto Networks<\/a> est une soci\u00e9t\u00e9 cr\u00e9\u00e9e en 2005 par un monsieur tr\u00e8s connu du monde de la s\u00e9curit\u00e9 : Nir Zuk.<br \/>\nSi son nom ne vous dit rien (bouh ! Honte \u00e0 vous, que vous soyez flageller sur la place publique et que les corbeaux viennent \u00e9corcher votre peau blanch\u00e2tre (euh non, je suis un peu trop extr\u00e9miste l\u00e0&#8230;) ), sachez que Nir Zuk est l&rsquo;un des cr\u00e9ateurs du Stateful inspection de <a title=\"http:\/\/www.checkpoint.com\/\" href=\"http:\/\/www.checkpoint.com\/\" target=\"_blank\">Checkpoint,<\/a> l&rsquo;ancien directeur technique de Netscreen Technologies (rachet\u00e9 par <a title=\"http:\/\/www.juniper.net\/us\/en\/\" href=\"http:\/\/www.juniper.net\/us\/en\/\" target=\"_blank\">Juniper<\/a>) et aussi cr\u00e9ateur d&rsquo;un des premiers IPS du march\u00e9 via son ancienne soci\u00e9t\u00e9 OneSecure. Bref, un type qui s&rsquo;y connait \u00ab\u00a0un peu\u00a0\u00bb \ud83d\ude09<\/p>\n<p>Notre vision g\u00e9n\u00e9raliste du Firewall telle qu&rsquo;on l&rsquo;a aujourd&rsquo;hui, est un filtrage de niveau 3 et 4, parfois 7 de la couche OSI (allez hop, pour ceux qui aurait rater mes anciens billets vous martelant d&rsquo;avoir un minimum de connaissance des couches OSI, <a title=\"http:\/\/fr.wikipedia.org\/wiki\/Mod%C3%A8le_OSI\" href=\"http:\/\/fr.wikipedia.org\/wiki\/Mod%C3%A8le_OSI\" target=\"_blank\">on y retourne<\/a>), ce \u00e0 quoi l&rsquo;on va rajouter, bien s\u00fbr, cette fameuse inspection stateful.<\/p>\n<p><em>pause<\/em><\/p>\n<p><em>\u00ab\u00a0Mais dites moi Monsieur Abloc, c&rsquo;est quoi \u00e7a l&rsquo;inspection Stateful ???\u00a0\u00bb<\/em><em> <\/em><\/p>\n<p><em>\u00ab\u00a0Je te remercie de poser la question, jeune padawan, mais vu que tu es un fid\u00e8le lecteur, dans ma grande mansu\u00e9tude, je t&rsquo;autorise \u00e0 m&rsquo;appeler guiguiabloc.\u00a0\u00bb<\/em><\/p>\n<p><em> <\/em><em>\u00ab\u00a0Oh merci vous \u00eates bien bon avec moi ! C&rsquo;est trop d&rsquo;honneur\u00a0\u00bb<br \/>\n\u00ab\u00a0De rien mon petit, vas en paix et \u00e9coute\u00a0\u00bb<\/em><\/p>\n<p>(d\u00e9sol\u00e9, une crise passag\u00e8re&#8230;)<\/p>\n<p>Dans un firewall vous allez, au niveau\u00a0 3, par exemple, autoriser telle adresse ip \u00e0 acc\u00e9der \u00e0 telle autre adresse ip. Au niveau 4, vous allez autoriser cette ip source \u00e0 acc\u00e9der depuis un port tcp sup\u00e9rieur \u00e0 1023 \u00e0 acc\u00e9der au serveur web de l&rsquo;autre adresse ip sur le port 80.<\/p>\n<p>(pourquoi sup\u00e9rieur \u00e0 1023 ? parce qu&rsquo;une requ\u00eate cliente vers un serveur prend al\u00e9atoirement un port source sup\u00e9rieur \u00e0 ce nombre, les ports inf\u00e9rieurs \u00e0 1023 ne pouvant \u00eatre \u00ab\u00a0r\u00e9serv\u00e9\u00a0\u00bb qu&rsquo;\u00e0 des services reconnus (je simplifie hein !)).<\/p>\n<p>D&rsquo;ailleurs il vous suffit de regarder vos connexions \u00e9tablies pour le voir :<\/p>\n<p>guiguiabloc@Thanatos:~$ netstat -tan | grep 80<br \/>\ntcp\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0\u00a0\u00a0\u00a0\u00a0 0 192.168.8.201:44450\u00a0\u00a0\u00a0\u00a0 174.36.30.59:80\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ESTABLISHED<\/p>\n<p>o\u00f9 192.168.8.201 est le client et 174.36.30.59, le serveur web.<\/p>\n<p>Donc, remarque aux gens qui configurent leurs firewalls pour la premi\u00e8re fois, autoriser le 80 depuis l&rsquo;ext\u00e9rieur vers l&rsquo;int\u00e9rieur pour surfer, bah \u00e7a sert \u00e0 rien (on le voit souvent :p)<\/p>\n<p>Jusqu&rsquo;\u00e0 maintenant on est en mode \u00ab\u00a0stateless\u00a0\u00bb.<\/p>\n<p>Le mode stateful va allez jusqu&rsquo;\u00e0 la notion de session du protocole TCP.<\/p>\n<p>Quand Kevin veut se connecter au serveur web de <a href=\"http:\/\/blog.guiguiabloc.fr\/tatiana.html\" target=\"_blank\">Tatiana<\/a> (qui offre avec gentillesse des apercus non n\u00e9gligeable de son architecture)), en tcp (donc niveau 4 \ud83d\ude09 ), il envoit un SYN\u00a0 (je veux me connecter \u00e0 toi, Tatiana, t&rsquo;es trop de la balle), le serveur de Tatiana r\u00e9pond SYN\/ACK (j&rsquo;ai pris connaissance de ton d\u00e9sir passionn\u00e9 de venir visiter mes zolies pages et de contempler la fa\u00e7on dont j&rsquo;enroule mes c\u00e2bles), le pc de Kevin renvoit un ACK (oh oui, je veux voir tes zolies pages et tes c\u00e2bles si bien dispos\u00e9s, merci de me r\u00e9pondre Tatiana (flap,flap, flap)).<\/p>\n<p>C&rsquo;est ce qu&rsquo;on appelle un triple-handshake (ou poign\u00e9e de main \u00e0 3 temps). (NB: le flap flap flap ne faisant pas partie de la n\u00e9gociation et je vous interdit dans vos esprits pervers de faire un quelconque rapport entre \u00ab\u00a0hand\u00a0\u00bb et \u00ab\u00a0shake\u00a0\u00bb dans l&rsquo;exemple ci-dessus ! Ignoble individu que vous \u00eates !)<\/p>\n<p>En plus, lors de cet \u00e9change, des num\u00e9ros de s\u00e9quence sont g\u00e9n\u00e9r\u00e9s et par le client (num\u00e9ro de s\u00e9quence initial), repris par le serveur (+1) qui y rajoute ses num\u00e9ros d&rsquo;acquittement, que le client reprend aussi.<\/p>\n<p>(je vais pas vous faire un cours sur tcp, Google est votre ami \ud83d\ude42 )<\/p>\n<p>A cet instant, nous avons une session d&rsquo;\u00e9tablie que le firewall, en mode stateful connait.<\/p>\n<p>Il va donc consid\u00e9rer que vu que le flux existe et que la session est \u00e9tablie, il est d\u00e9sormais inutile d&rsquo;analyser les paquets entre le client et le serveur pour cette session tcp, il consid\u00e8re que c&rsquo;est autoris\u00e9 (c&rsquo;est du filtrage dynamique).<\/p>\n<p>En mode Stateful, le firewall a donc connaissance de l&rsquo;existence ou non d&rsquo;une session entre deux ips. Il rejettera un paquet tcp de type SYN\/ACK s&rsquo;il n&rsquo;a pas vu un SYN du client sur cette session auparavant.<\/p>\n<p>L&rsquo;inspection stateful permet donc un filtrage avanc\u00e9 sur les connexions \u00e9tablies ou non, m\u00eame si le port tcp est ouvert, il ne sera pas forc\u00e9ment accept\u00e9 par le firewall.<\/p>\n<p><strong>Exemple d&rsquo;intrusion en mode stateless (sch\u00e9matiser sans NAT\/PAT toussa)<\/strong> :<\/p>\n<p>Le pc client (Thanatos, 192.168.8.201) a un vnc server sur son poste en \u00e9coute sur le port 5900.<\/p>\n<p>Le firewall entre lui et internet \u00e0 une r\u00e8gle de type :<\/p>\n<p>permit tcp host ip client gt 1023 any eq 80<\/p>\n<p>(le client en source port sup\u00e9rieur \u00e0 1023 peut aller voir des sites en http sur le port 80).<\/p>\n<p>Je suis sur internet, j&rsquo;initie une connexion depuis le port 80 (serveur Alixe, 192.168.43.100) vers l&rsquo;ip du client sur le port 5900, et bien ca passe&#8230; \ud83d\ude00<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/statelessattack.png\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-909\" title=\"statelessattack\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/statelessattack-300x189.png\" alt=\"\" width=\"300\" height=\"189\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/statelessattack-300x189.png 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/statelessattack.png 664w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Un firewall stateful, lui,\u00a0 rejettera ce genre de trafic puisque le SYN ne peut venir que du client, pas du serveur web.<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/statefulattack.png\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-913\" title=\"statefulattack\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/statefulattack-300x209.png\" alt=\"\" width=\"300\" height=\"209\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/statefulattack-300x209.png 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/statefulattack.png 663w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><strong>NB<\/strong> : Pour les curieux qui voudrait savoir comment j&rsquo;ai reproduit un mode stateless\/stateful dans cet exemple via des ACLs Cisco, voici les r\u00e8gles utilis\u00e9es (192.168.8.201 est le client, 192.168.43.100 est le serveur)\u00a0 :<\/p>\n<p>Exemple 1 (stateless) :<\/p>\n<p>permit tcp host 192.168.43.100 eq www any gt 1023<\/p>\n<p>Exemple 2 (stateful) :<\/p>\n<p>permit tcp host 192.168.43.100 eq www any gt 1023 established<\/p>\n<p>Sous votre *BSD favori, il vous suffit de positionner l&rsquo;option \u00ab\u00a0flags\u00a0\u00bb (S\/SA pour un SYN\/SYN-ACK).<\/p>\n<p>Bien entendu je simplifie \u00e0 l&rsquo;extr\u00e8me (d&rsquo;autres \u00e9l\u00e9ments entre en jeux) mais j&rsquo;esp\u00e8re avoir \u00e9clairer ceux qui ne connaissait pas ce mode de suivi de transaction entre deux machines.<\/p>\n<p><em>fin de la pause<\/em><\/p>\n<p>Sauf qu&rsquo;au bout d&rsquo;un moment, le stateful inspection, le filtrage de niveau 4, on en atteint vite les limites.<\/p>\n<p>Alors, on va rajouter des couches et des couches d&rsquo;IDS, d&rsquo;IPS, au d\u00e9triment souvent des performances du firewall.<\/p>\n<p>Palo Alto Networks propose donc une nouvelle g\u00e9n\u00e9ration de Firewall, avec des\u00a0 filtrages portant sur :<\/p>\n<p>&#8211; l&rsquo;identifiant de l&rsquo;utilisateur (on ne g\u00e8re plus l&rsquo;ip du poste client mais son identification propre par corr\u00e9lation avec un ActiveDirectory ou un LDAP, ou au pire en le renvoyant sur un portail captif pour une authentification Radius) (<a title=\"http:\/\/www.paloaltonetworks.com\/products\/features\/user-id.html\" href=\"http:\/\/www.paloaltonetworks.com\/products\/features\/user-id.html\" target=\"_blank\">User-id<\/a>)<\/p>\n<p>&#8211; l&rsquo;application utilis\u00e9e (j&rsquo;ouvre le http et j&rsquo;autorise skype mais pas facebook), mais aussi le contenu qui passe dans le flux (ouh la toi tu fais du tunneling ssh dans du http avec Corkscrew, je te l&rsquo;interdit) (<a title=\"http:\/\/www.paloaltonetworks.com\/products\/features\/app-id.html\" href=\"http:\/\/www.paloaltonetworks.com\/products\/features\/app-id.html\" target=\"_blank\">app-id<\/a>). Sachez que la liste des applications reconnues par le Palo Alto est assez cons\u00e9quente et que bien s\u00fbr, vous pouvez vous m\u00eame y d\u00e9finir vos propres applications.<\/p>\n<p>&#8211; le contenu des trames cypt\u00e9es en faisant du \u00ab\u00a0Man-in-the-Middle\u00a0\u00bb SSL pour d\u00e9crypter en temps r\u00e9el les flux SSL\/HTTPS et regarder ce qu&rsquo;il y &lsquo;a dedans pour v\u00e9rifier sa dangerosit\u00e9 (nan nan, ton facebook par SSL, non plus, tu passeras pas)<\/p>\n<p>&#8211; l&rsquo;analyse du contenu des paquets (charge virale, DoS, filtrage URL etc&#8230;) (<a title=\"http:\/\/www.paloaltonetworks.com\/products\/features\/content-id.html\" href=\"http:\/\/www.paloaltonetworks.com\/products\/features\/content-id.html\" target=\"_blank\">Content-id<\/a>). Evidemment le Palo Alto ne se base pas uniquement sur l&rsquo;extension d&rsquo;un fichier pour en connaitre le contenu \ud83d\ude09<\/p>\n<p>Bien s\u00fbr; quitte a faire tout cela bien et rapidement, on va traiter le flux en\u00a0 1 seule passe et c\u00f4t\u00e9 hardware, d\u00e9dier des CPUs \u00e0 chaque usage avec quelques <a title=\"http:\/\/fr.wikipedia.org\/wiki\/Circuit_logique_programmable\" href=\"http:\/\/fr.wikipedia.org\/wiki\/Circuit_logique_programmable\" target=\"_blank\">FPGA<\/a> pour faire bonne mesure.<\/p>\n<p>Int\u00e9ressant non ?<\/p>\n<p><em>\u00ab\u00a0D&rsquo;accord mon grand, t&rsquo;es gentil, mais pourquoi tu nous causes de \u00e7a ?\u00a0\u00bb<\/em><\/p>\n<p>Parce que \u00e7\u00e0\u00a0 :<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/paloaltoathome1.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-928\" title=\"paloaltoathome\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/paloaltoathome1-300x225.jpg\" alt=\"\" width=\"300\" height=\"225\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/paloaltoathome1-300x225.jpg 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/paloaltoathome1.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Et oui, j&rsquo;ai eu la chance d&rsquo;avoir un des ses bo\u00eetiers a la maison \ud83d\ude00<\/p>\n<p>Apr\u00e8s une formation condens\u00e9e et efficace (merci Philippe \ud83d\ude09 ), on se positionne le PaloAlto en mode bridge derri\u00e8re la freeteuse.<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/freeboxprotected.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-929\" title=\"freeboxprotected\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/freeboxprotected-225x300.jpg\" alt=\"\" width=\"225\" height=\"300\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/freeboxprotected-225x300.jpg 225w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/freeboxprotected.jpg 768w\" sizes=\"(max-width: 225px) 100vw, 225px\" \/><\/a><\/p>\n<p>(Rassurez vous, le bo\u00eetier a rapidement rejoint un environnement de production digne de ce nom pour subir la batterie de tests habituels.)<\/p>\n<p>Mais qu&rsquo;en est-il des premiers r\u00e9sultats ?<\/p>\n<p>Le Firewall Palo Alto peut fonctionner en plusieurs mode :<\/p>\n<p>&#8211; le mode TAP, vous le branchez sur un port mirroring ou un boitier TAP justement et il vous ressort l&rsquo;ensemble du trafic qu&rsquo;il voit passer (analyse etc&#8230;). C&rsquo;est forc\u00e9ment une premi\u00e8re \u00e9tape pour le brancher dans votre infrastructure. Non intrusif, ce mode vous permet d&rsquo;avoir d\u00e9j\u00e0 une premi\u00e8re id\u00e9e de ce qui passe dans votre r\u00e9seau (applications utilis\u00e9es, statistiques de consommation par flux et application etc&#8230;)<\/p>\n<p>&#8211; le mode bridge (appel\u00e9 VirtualWire chez eux), en passerelle transparente. Les flux entrent d&rsquo;un c\u00f4t\u00e9 et ressortent de l&rsquo;autre. A ce niveau la, vous coder une r\u00e8gle autorisant tout et vous pouvez petit \u00e0 petit alimenter les \u00ab\u00a0policy\u00a0\u00bb suivant le trafic que vous voyez.<\/p>\n<p>&#8211; le mode routeur\/firewall (en couche 3 donc) que tout le monde connait, avec ses interfaces \u00e0 configurer, ses vlans, ses routes etc&#8230; La il remplace votre firewall actuel.<\/p>\n<p>Le Palo Alto a un processeur et une interface d\u00e9di\u00e9 au Management.<\/p>\n<p>La CLI ne surprendra pas les habitu\u00e9s de Juniper. C&rsquo;est clairement du Netscreen OS (rassurez vous, si vous utilisez Vyatta, c&rsquo;est sensiblement pareil).<\/p>\n<p>Ce qui est flagrant de sa parent\u00e9 avec les Netscreen, ce sont ses couches VSYS et VROUTER (virtual system et virtual routeur de Netscreen\/Juniper). Les zones de type Trust\/Untrust sont \u00e9galement l\u00e0. Bref, clairement, c&rsquo;est la touche Netscreen qui pr\u00e9domine.<\/p>\n<p>C\u00f4t\u00e9 administration graphique, c&rsquo;est du web, en ajax&#8230; Et l\u00e0, vous le verrez plus loin, c&rsquo;est la partie noire du produit.<\/p>\n<p>Quand on prend la b\u00eate en main pour la premi\u00e8re fois via le port console (standard 9600\/8\/1 comme pour un Cisco), on configure l&rsquo;ip de management, gateway, dns pour rapidement pouvoir prendre la main, puis on \u00ab\u00a0pousse\u00a0\u00bb la conf par un \u00ab\u00a0commit\u00a0\u00bb.<\/p>\n<p>Premi\u00e8re surprise, le commit, montre en main, prend plus de 2 minutes ! \ud83d\ude2e<\/p>\n<p>Euh la on commence a avoir des angoisses, un commit \u00e0 vide (pas de r\u00e8gles, une conf de base)\u00a0 qui prend tant de temps c&rsquo;est angoissant. On se dit que ca ira mieux plus tard&#8230;<\/p>\n<p>Bref, on laisse tourner et on regarde.<\/p>\n<p>L\u00e0 les premiers r\u00e9sultats sont bluffants. Tout est clairement identifi\u00e9, les flux bien s\u00fbr, mais \u00e9galement les applications utilis\u00e9es,<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_applications.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-945\" title=\"palo_applications\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_applications-300x195.jpg\" alt=\"\" width=\"300\" height=\"195\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_applications-300x195.jpg 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_applications-1024x668.jpg 1024w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_applications.jpg 1272w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>mes tunnels ssh dans le proxy,<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_tunnelssh.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-946\" title=\"palo_tunnelssh\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_tunnelssh-300x197.jpg\" alt=\"\" width=\"300\" height=\"197\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_tunnelssh-300x197.jpg 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_tunnelssh.jpg 971w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>les attaques de types Naphta\/Slowloris que j&rsquo;ai envoy\u00e9 sur un serveur Web, etc..<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-947\" title=\"palo_webattack\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack-300x181.jpg\" alt=\"\" width=\"300\" height=\"181\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack-300x181.jpg 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack-1024x620.jpg 1024w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack.jpg 1081w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack2.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-948\" title=\"palo_webattack2\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack2-300x179.jpg\" alt=\"\" width=\"300\" height=\"179\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack2-300x179.jpg 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_webattack2.jpg 1001w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>En testant des r\u00e8gles g\u00e9n\u00e9riques de types \u00ab\u00a0deny application deezer\u00a0\u00bb, c&rsquo;est redoutable \ud83d\ude42<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_block_appli.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-951\" title=\"palo_block_appli\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_block_appli-300x181.jpg\" alt=\"\" width=\"300\" height=\"181\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_block_appli-300x181.jpg 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_block_appli.jpg 750w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Petit bonus \u00e0 tester, le man-in-the-middle SSL.<\/p>\n<p>On se g\u00e9n\u00e8re un certicat SSL dans le bo\u00eetier.<\/p>\n<p>On pose un filtrage SSL avec d\u00e9cryption.<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_ssl.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-949\" title=\"palo_ssl\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_ssl-300x81.jpg\" alt=\"\" width=\"300\" height=\"81\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_ssl-300x81.jpg 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_ssl-1024x276.jpg 1024w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_ssl.jpg 1272w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Et hop, on teste depuis un navigateur client. Le truc tout b\u00eate, allez t\u00e9l\u00e9charger le fichier <a title=\"http:\/\/www.eicar.org\/anti_virus_test_file.htm\" href=\"http:\/\/www.eicar.org\/anti_virus_test_file.htm\" target=\"_blank\">EICAR<\/a> antivirus en https.<\/p>\n<p>Surprise, le certificat serveur sur le poste client \u00e0 changer, en regardant en d\u00e9tail , on retrouve notre certificat SSL g\u00e9n\u00e9r\u00e9 sur le Palo Alto en tant qu&rsquo;\u00e9metteur, et les informations du certificat serveur dans les restes du contenu.<\/p>\n<p>C\u00f4t\u00e9 d\u00e9tection, le Palo Alto a d\u00e9crypter le flux SSL et \u00e0 trouver la fausse charge virale dans le contenu. Bluffant.<\/p>\n<p><a href=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_decryptssl.jpg\" target=\"_blank\"><img loading=\"lazy\" class=\"aligncenter size-medium wp-image-950\" title=\"palo_decryptssl\" src=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_decryptssl-300x196.jpg\" alt=\"\" width=\"300\" height=\"196\" srcset=\"http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_decryptssl-300x196.jpg 300w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_decryptssl-1024x669.jpg 1024w, http:\/\/blog.guiguiabloc.fr\/wp-content\/2011\/04\/palo_decryptssl.jpg 1202w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Il se comporte donc comme un proxy forward SSL, agissant en temps qu&rsquo;interm\u00e9diaire entre le serveur et le client, et en profitant pour analyser le contenu qu&rsquo;il peut bien sur d\u00e9crypter.<\/p>\n<p>Cela marche \u00e9galement sur https:\/\/mail.google.com&#8230; Effrayant \ud83d\ude09<\/p>\n<p>Alors bien s\u00fbr le navigateur client remonte une alerte sur le certificat qui n&rsquo;est pas reconnu en tant que Root CA connue mais rien ne vous interdit de signer votre certificat SSL du Palo Alto par une autorit\u00e9 reconnue par les navigateurs, Verisign par exemple).<\/p>\n<p>Maintenant j&rsquo;en pense quoi ?&#8230;<\/p>\n<p>Palo Alto Networks nous pousse vers une nouvelle fa\u00e7on de surveiller et de g\u00e9rer les flux r\u00e9seau dans notre infrastructure.<\/p>\n<p>Il est \u00e9vident que l&rsquo;on n&rsquo;a pas attendu leur venue pour faire du filtrage au niveau 7, pour filtrer les requ\u00e8tes SQL via<a title=\"http:\/\/www.greensql.net\/\" href=\"http:\/\/www.greensql.net\/\" target=\"_blank\"> GreenSQL<\/a> , faire du<a title=\"http:\/\/www.openbsd.org\/faq\/pf\/fr\/authpf.html\" href=\"http:\/\/www.openbsd.org\/faq\/pf\/fr\/authpf.html\" target=\"_blank\"> firewall authentifiant<\/a> ou <a title=\"http:\/\/products.datamation.com\/security\/encryption\/1104660035.html\" href=\"http:\/\/products.datamation.com\/security\/encryption\/1104660035.html\" target=\"_blank\">du d\u00e9cryptage SSL<\/a>.<\/p>\n<p>Maintenant, plut\u00f4t que r\u00e9\u00e9crire ce qui a \u00e9t\u00e9 dit, je vous invite \u00e0 lire les diff\u00e9rents documents et comparatifs que Palo Alto a pondu :<\/p>\n<p><a title=\"http:\/\/www.paloaltonetworks.com\/literature\/index.php\" href=\"http:\/\/www.paloaltonetworks.com\/literature\/index.php\" target=\"_blank\">http:\/\/www.paloaltonetworks.com\/literature\/index.php<\/a><\/p>\n<p>Toutefois, c&rsquo;est clairement le type de Firewall a positionner entre vos utilisateurs et vos serveurs.<\/p>\n<p>En frontal Internet pour prot\u00e9ger l&rsquo;acc\u00e8s \u00e0 vos DMZ cela ne changera rien \u00e0 un bon Checkpoint\/ASA\/OpenBSD (apr\u00e8s tout, si l&rsquo;on ouvre l&rsquo;acc\u00e8s public \u00e0 une application depuis internet, cela n&rsquo;a pas de sens d&rsquo;utiliser le User-id ou l&rsquo;App-id. Quand au filtrage du contenu, ou effectivement vous mettez votre Palo Alto pour cela, ou vous continuez \u00e0 utiliser votre IPS).<\/p>\n<p>C&rsquo;est vrai qu&rsquo;en y r\u00e9fl\u00e9chissant, l&rsquo;acc\u00e8s de vos utilisateurs \u00e0 vos ressources internes demande \u00e0 d\u00e9passer ce niveau de filtrage basique.<\/p>\n<p>L&rsquo;\u00e9quipe de d\u00e9veloppeurs du projet A, que je reconnais par leurs User-Id, ne peut acc\u00e8der qu&rsquo;aux applications les concernants et pas aux applications d&rsquo;un autre projet B, m\u00eame s&rsquo;ils sont dans le m\u00eame vlan (oui oui, le fameux tcp\/3306 autoris\u00e9 pour l&rsquo;ensemble des dev sur le vlan de bases de donn\u00e9es \ud83d\ude09 ).<\/p>\n<p>Cibler l&rsquo;acc\u00e8s \u00e0 des applications suivant le profil des utilisateurs, c&rsquo;est peut \u00eatre cela qui nous manquait aujourd&rsquo;hui.<\/p>\n<p>Quand a filtrer l&rsquo;acc\u00e8s des utilisateurs sur Internet, c&rsquo;est une question de politique d&rsquo;entreprise. Certains vont laisser ouvert (en passant par un proxy filtrant (type SquidGuard), d&rsquo;autres vont refuser toute utilisation d&rsquo;outils sociaux perturbant la rentabilit\u00e9 de l&rsquo;entreprise (par exemple). Question de choix. Ce n&rsquo;est pas \u00e0 nous d&rsquo;en d\u00e9cider, mais dans ce cas, Palo Alto r\u00e9pond clairement au besoin.<\/p>\n<p>Si par contre je devais remonter un point noir, c&rsquo;est l&rsquo;interface d&rsquo;administration du Palo Atlo. Que ce soit pour coder des r\u00e8gles de filtrages et surtout les appliquer (2minutes 30 \u00e0 vide alors que sur mes Checkpoint avec plus de 1000 r\u00e8gles de filtrage et autant de NAT cela me prend moins de temps), c&rsquo;est inutilisable au quotidien par une \u00e9quipe habitu\u00e9e \u00e0 pousser de nombreuses r\u00e8gles par jour. A r\u00e9gler donc.<\/p>\n<p>En r\u00e9sum\u00e9, par la d\u00e9couverte de cette nouvelle g\u00e9n\u00e9ration de Firewall, il est \u00e9vident qu&rsquo;il nous faut repenser la fa\u00e7on de filtrer les diff\u00e9rents \u00e9l\u00e9ments de nos infrastructures.<\/p>\n<p>Si le danger vient beaucoup de l&rsquo;ext\u00e9rieur, il existe aussi clairement \u00e0 l&rsquo;int\u00e9rieur d&rsquo;un SI, que le suivi des utilisateurs par autre chose que leurs adresses IPs, que l&rsquo;acc\u00e8s pr\u00e9cis aux applications doit \u00eatre un devenir du r\u00f4le du firewall interne, c&rsquo;est s\u00fbrement un axe de r\u00e9flexion \u00e0 avoir d\u00e8s maintenant, car comme dirait Nir Zuk :<\/p>\n<p>\u00ab\u00a0Votre choix : innover ou dispara\u00eetre.\u00a0\u00bb<\/p>\n<p>Bonne r\u00e9flexion \ud83d\ude09<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Aujourd&rsquo;hui je vous propose de vous parler d&rsquo;une nouvelle g\u00e9n\u00e9ration de Firewall mais aussi, je l&rsquo;esp\u00e8re, vous pousser \u00e0 la r\u00e9flexion sur notre conception du firewall telle qu&rsquo;on l&rsquo;a aujourd&rsquo;hui en se demandant, si, apr\u00e8s tout, on n&rsquo;est pas un &hellip; <a href=\"http:\/\/blog.guiguiabloc.fr\/index.php\/2011\/04\/10\/palo-alto-networks-faut-il-repenser-notre-vision-du-firewall\/\">Read More <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3,8],"tags":[159,157,160,161],"_links":{"self":[{"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/posts\/892"}],"collection":[{"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/comments?post=892"}],"version-history":[{"count":51,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/posts\/892\/revisions"}],"predecessor-version":[{"id":956,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/posts\/892\/revisions\/956"}],"wp:attachment":[{"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/media?parent=892"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/categories?post=892"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.guiguiabloc.fr\/index.php\/wp-json\/wp\/v2\/tags?post=892"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}