Protéger un serveur avec le reverse proxy Fortiweb.

Le reverse proxy FortiWeb protège vos applications Web contre de nombreuses vulnérabilités et notamment celles du Top 10 OWASP. Les applications Web non sécurisée constituent une porte d’entrée pour les hackers et les attaques.

Ce reverse proxy sécurisent vos applications contre des menaces évoluées telles que l’injection SQL, le cross-site scripting, le dépassement de tampon, le cookie poisonning, les sources malveillantes et les attaques de déni de service.

Qu’est-ce qu’un reverse proxy ?

Un proxy inverse (reverse proxy) est un serveur, habituellement placé en frontal pour les serveurs web.

Contrairement au serveur proxy qui permet à un utilisateur d’accéder au réseau Internet, le reverse proxy permet à un utilisateur d’Internet d’accéder à des serveurs internes.

Une des applications courantes du proxy inverse est la répartition de charge (load-balancing) ainsi que la sécurisation des applications web.

Si vous souhaitez avoir plus d’information sur le pare-feu applicatif (WAF) de Fortinet, vous pouvez consulter ce lien : Pare-feu d’applications Web.

reverse proxy Fortiweb

Vidéo Présentation Proxy et reverse Proxy :

 

Dans ce tutoriel, nous allons voir comment créer une redirection vers notre serveur interne afin de lui appliquer une stratégie de sécurité et le protéger des accès nocifs.

Création d’un pool de serveur sur le reverse proxy Fortiweb.

Pour cette première étape nous allons avoir besoin de(s) adresse(s) de vos serveurs internes. N’oubliez pas que l’une des applications courantes d’un reverse proxy, c’est aussi de faire de la répartition de charge.

Allez dans Server Objects -> Server -> Server Pool.

Création d’un pool de serveur avec le reverse proxy Fortiweb

  • 1 : Saisir un nom pour le Pool de serveurs
  • 2 : Choisissez un type de connexion, ici Reverse Proxy
  • 3 : Sélectionner Single Server si vous ne souhaitez pas faire de répartition de charge (typiquement un seul serveur), sinon cliquez sur Server Balance.

En cliquant sur OK cela activera le bouton Create new pour ajouter vos serveurs au pool.

Création d’un pool de serveur avec Fortiweb

  • 1 : Status : le Status par défaut est enable. Vous remarquerez une fonction pratique lors d’une mise à jour par exemple qui permet de mettre l’accès en maintenance.
  • 2 : Server Type : Vous avez le choix de saisir soit l’adresse IP soit son nom. Préférer son nom.
  • 3 : Domain : Si vous avez sélectionner Domain, rentrer le nom DNS de votre serveur.
  • 4 : Port et Connection Limit : Vous pouvez sélectionner un port différent de 80 si votre application le demande mais aussi limiter les accès simultanés à votre site web pour préserver les ressources machines de votre serveur ainsi que sa stabilité. (la valeur par défaut 0 permet d’avoir aucune limite d’accès).
  • 5 : HTTP/2 et SSL : Si le site web le supporte vous pouvez activer http/2 pour améliorer la vitesse de votre site et aussi paramétrer finement un certificat.

Cliquer sur OK.

Création d’un serveur virtuel avec FortiWeb

Création d’un serveur virtuel sur le reverse proxy Fortiweb.

Dans cette partie nous allons créer une sorte de règle NAT avec une IP virtuelle qui va rediriger le trafic vers notre IP interne.

Allez dans Server Objects -> Server -> Virtual Server

Création d’un serveur virtuel avec Fortiweb

  • 1 : Name, Saisir le nom du serveur ou tout autre libellé permettant de retrouver facilement votre serveur.
  • 2 : IPv4 Address, Saisir l’adresse IP et le masque réseau qui sera communiqué aux utilisateurs pour accéder au serveur web. Cette IP fera la relation avec l’IP réelle du serveur web.
  • 3 : Interface, Le Fortiweb dispose de plusieurs interfaces pour accéder à plusieurs réseaux.

Pour connaitre le statut des interfaces du Fortiweb, il faut aller dans System -> Network -> Interface

Statut des interfaces du Fortiweb

Création d’une règle de sécurité sur le reverse proxy Fortiweb.

Afin de protéger les accès web sur notre serveur, nous devons créer une règle (un peu comme sur un firewall, sauf que nous serons sur les couches supérieurs du modèle OSI).

Allez dans Policy -> Server Policy

Création d’une règle de sécurité dans Fortiweb

  • 1 : Policy Name : indiquer le nom de la règle pour ce serveur
  • 2 : Deployement Mode : vous avez le choix entre Single Server/Server Pool pour faire de la répartition de charge ainsi que de la protection de flux http. Si vous souhaitez aller plus loin vous pouvez sélectionner HTTP Content Routing afin de faire des analyses, redirection plus poussées avec les en-têtes http par exemple
  • 3 : Virtual Server/Server Pool : Sélectionner vos serveurs virtuels et pool de serveurs créés précédemment.
  • 4 : HTTP Service/HTTPS Service : Sélectionner le protocole d’accès au serveur HTTP ou HTTPS.
  • 5 : Web Protection Profile : dans la liste déroulante sélectionner le niveau de protection que vous souhaitez. Si vous cliquez sur l’œil puis sur Known Attacks vous pourrez visualiser les différentes protections qui seront appliquées à votre site web.

Web Protection Profile dans FortiWeb
Attention !!! Pour être efficace votre VM Fortiweb doit être mis à jour régulièrement. Les mises à jour concernent les attaques (Security Services), les virus (Antivirus) et le bannissement d’IP nocives (IP Reputation).

mettre à jour le Fortiweb pour avoir les dernières protections contre les attaques, virus et autres malwares

Pour contrôler que les mises à jour se font correctement, il faut aller dans System -> Status -> Status -> Fortiguard Information

Mettre en maintenance un serveur sur le reverse proxy Fortiweb.

Mettre en maintenance un serveur avec FortiWeb

Si vous souhaitez mettre en maintenance un serveur, rien de plus simple. Il suffit d’aller dans Server Objects -> Server -> Server Pool. Puis sélectionner votre serveur et sur la ligne Status cliquer sur Maintenance.

Réessayer de vous connectez sur votre serveur et vous aurez ce message :

Message d'indisponibilité d"un serveur avec Fortiweb

Conclusion.

Dans ce tutoriel, nous avons vu une mise en place très simple pour protéger un serveur web des attaques les plus fréquentes. Les nouvelles fonctionnalités de l’application FortiWeb s’oriente vers des techniques de machine learning qui améliorent la détection des menaces, accélèrent leur prise en charge et simplifient l’administration de la solution.

Contrairement à l’apprentissage applicatif, qui se contente d’une seule couche de protection pour détecter les anomalies en se basant sur les événements historiques, le FortiWeb utilise désormais deux couches de sécurité, basées sur le machine learning et les probabilités statistiques : les anomalies et les menaces sont identifiées de manière distincte.

La première couche institue un modèle mathématique pour chaque paramètre recueilli et déclenche une anomalie à chaque requête anormale. La seconde couche vérifie si l’anomalie est vraiment une menace ou s’il s’agit d’un faux positif.

Fort de cette innovation, le FortiWeb propose un taux de détection de menaces applicatives de près de 100%. D’autre part, la solution ne mobilise quasiment pas de ressources pour réaliser et affiner son paramétrage.

signature manuelle Guillaume

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *