L'année dernière, nous avons publié
Nemesida WAF Free , un module dynamique pour NGINX qui bloque les attaques sur les applications Web. Contrairement à la version commerciale basée sur l'apprentissage automatique, la version gratuite analyse uniquement les demandes à l'aide de la méthode de signature.
Caractéristiques de la sortie de Nemesida WAF 4.0.129
Avant la version actuelle, le module dynamique Nemesida WAF ne supportait que Nginx Stable 1.12, 1.14 et 1.16. La nouvelle version ajoute la prise en charge de Nginx Mainline, à partir de 1.17, et Nginx Plus, à partir de 1.15.10 (R18).
Pourquoi un autre WAF?
NAXSI et mod_security sont probablement les modules WAF gratuits les plus populaires, et mod_security est activement promu par Nginx, bien qu'au départ, il n'était utilisé que dans Apache2. Les deux solutions sont gratuites, open source et de nombreux utilisateurs partout dans le monde. Pour mod_security, gratuit et commercial, pour 500 $ par an, des jeux de signatures sont disponibles, pour NAXSI - un jeu de signatures gratuit prêt à l'emploi, vous pouvez également trouver des jeux de règles supplémentaires tels que doxsi.
Cette année, nous avons
comparé les performances de NAXSI et Nemesida WAF Free. En bref sur les résultats:
- NAXSI n'exécute pas le double décodage d'URL dans les cookies
- NAXSI prend beaucoup de temps à configurer - par défaut, les paramètres de règle par défaut bloquent la plupart des appels lorsque vous travaillez avec une application Web (autorisation, modification d'un profil ou d'un matériel, participation à des sondages, etc.) et il est nécessaire de générer des listes d'exceptions, ce qui est mauvais pour la sécurité. Nemesida WAF Free avec les paramètres par défaut n'a pas effectué de faux positifs lors de l'utilisation du site.
- le nombre d'attaques manquées par NAXSI est beaucoup plus élevé, etc.
Malgré les inconvénients, NAXSI et mod_security ont au moins deux avantages: l'open source et un grand nombre d'utilisateurs. Nous soutenons l'idée de divulguer le code source, mais jusqu'à présent, nous ne pouvons pas le faire en raison de problèmes possibles avec le "piratage" de la version commerciale, mais pour compenser cet inconvénient, nous divulguons entièrement le contenu de l'ensemble de signatures. Nous apprécions la confidentialité et proposons de le vérifier vous-même à l'aide d'un serveur proxy.
Fonctionnalité gratuite de Nemesida WAF:
- base de données de signatures de haute qualité avec un minimum de faux positifs et faux négatifs.
- l'installation et la mise à jour à partir du référentiel (c'est rapide et pratique);
- des événements simples et compréhensibles concernant des incidents, pas un gâchis, comme NAXSI;
- entièrement gratuit, n'a aucune restriction sur la quantité de trafic, les hôtes virtuels, etc.
En conclusion, je donnerai quelques requêtes pour évaluer les performances de WAF (il est recommandé d'utiliser dans chacune des zones: URL, ARGS, Headers & Body):
')) un","ion se","lect 1,2,3,4,5,6,7,8,9,0,11#"]
')) union/**/select/**/1,/**/2,/**/3,/**/4,/**/5,/**/6,/**/7,/**/8,/**/9,/**/'some_text',/**/11#"]
union(select(1),2,3,4,5,6,7,8,9,0x70656e746573746974,11)#"]
')) union+/*!select*/ (1),(2),(3),(4),(5),(6),(7),(8),(9),(0x70656e746573746974),(11)#"]
')) /*!u%6eion*/ /*!se%6cect*/ (1),(2),(3),(4),(5),(6),(7),(8),(9.),(0x70656e746573746974),(11)#"]
')) %2f**%2funion%2f**%2fselect (1),(2),(3),(4),(5),(6),(7),(8),(9),(0x70656e746573746974),(11)#"]
%5B%221807182982%27%29%29%20uni%22%2C%22on
%20sel%22%2C%22ect%201%2C2%2C3%2C4%2C5%2C6%2C7%2C8%2C9%2C%2some_text%27%2C11%23%22%5D
cat /et?/pa?swd
cat /et'c/pa'ss'wd
cat /et*/pa**wd
e'c'ho 'swd test pentest' |awk '{print "cat /etc/pas"$1}' |bas'h
c\a\t \/\e\t\c/\p\a\s\sw\d
cat$u+/etc$u/passwd$u
<svg/onload=alert()//
Si les demandes ne sont pas bloquées, alors, très probablement, WAF manquera également une véritable attaque. Avant d'utiliser les exemples, assurez-vous que WAF ne bloque pas les demandes légitimes.