naxsi: NGINX Anti XSS & SQL Injection module
Installation
Vous pouvez installer ce module sur n'importe quelle distribution basée sur RHEL, y compris, mais sans s'y limiter :
- RedHat Enterprise Linux 7, 8, 9 et 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 et Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-naxsi
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-naxsi
Activez le module en ajoutant ce qui suit en haut de /etc/nginx/nginx.conf :
load_module modules/ngx_http_naxsi_module.so;
Ce document décrit nginx-module-naxsi v1.6 publié le 28 novembre 2023.

Qu'est-ce que Naxsi ?
NAXSI signifie Nginx Anti XSS & SQL Injection.
Techniquement, c'est un module nginx tiers, disponible sous forme de paquet pour
de nombreuses plateformes de type UNIX. Ce module, par défaut, lit un petit sous-ensemble de
règles simples (et lisibles) contenant 99 % des modèles connus impliqués dans
les vulnérabilités des sites web. Par exemple, <, | ou drop ne sont pas censés
faire partie d'une URI.
Étant très simple, ces modèles peuvent correspondre à des requêtes légitimes, il appartient à l'administrateur de Naxsi d'ajouter des règles spécifiques qui permettront de blanchir les comportements légitimes. L'administrateur peut soit ajouter des listes blanches manuellement en analysant le journal des erreurs de nginx, soit (recommandé) démarrer le projet avec une phase d'auto-apprentissage intensive qui générera automatiquement des règles de blanchiment concernant le comportement d'un site web.
En résumé, Naxsi se comporte comme un pare-feu DROP par défaut, la seule tâche est d'ajouter les règles ACCEPT requises pour que le site web cible fonctionne correctement.
Pourquoi est-ce différent ?
Contrairement à la plupart des pare-feu d'application web, Naxsi ne repose pas sur une base de signatures comme un antivirus, et ne peut donc pas être contourné par un modèle d'attaque "inconnu". Naxsi est un logiciel libre (au sens de la liberté) et gratuit (au sens de la bière gratuite) à utiliser.
Sur quoi cela fonctionne-t-il ?
Naxsi devrait être compatible avec n'importe quelle version de nginx.
Il dépend de libpcre pour son support des expressions régulières, et il est rapporté qu'il fonctionne très bien sur NetBSD, FreeBSD, OpenBSD, Debian, Ubuntu et CentOS.
Pourquoi utiliser ce dépôt
Le projet original est (officieusement) abandonné, mais vous pouvez demander un support complet ici car je suis prêt à maintenir le projet en tant que dernier développeur restant.
Documentation
Support
Vous pouvez demander du support concernant NAXSI ici ou sur le dépôt original https://github.com/nbs-system/naxsi
Plans futurs
- Ramener nxapi via py3
- Création d'un outil simple pour créer des règles et les tester
GitHub
Vous pouvez trouver des conseils de configuration supplémentaires et de la documentation pour ce module dans le dépôt GitHub pour nginx-module-naxsi.