Nginx : Bloquer ShellShock (astuce)

Article publié, le
1 minute(s) de lecture

Cet article contient 212 mots.
Source brute de l'article : MD

Description

Shellshock est une faille de sécurité présente dans le shell Bash, découverte en Septembre 2014. Normalement, cette faille a été corrigée dans Bash ; il est hautement recommandé d’avoir la version la plus récente.

L’explication ci-dessous explique comment empêcher l’accès depuis le serveur web nginx.

Dans votre contexte http, utilisez la déclaration map, telle que :

Code : nginx

map $http_user_agent $bad_bot {
    default 0;
    ~*\{.*\:\; 1;
}

map $http_referer $bad_referer {
    default 0;
    ~*\{.*\:\; 1;
}

C’est l’expression régulière *\{.*\:\; qui fait son travail ; à savoir qu’on peut légèrement la raccourcir, et cela fonctionne, apparemment, aussi : *\{.*\:

Ensuite, vous utilisez les conditions suivantes pour fermer la connexion, sans autre forme de procédé :

if ($bad_bot) { return 444; }
if ($bad_referer) { return 444; }

Si ces conditions ne sont pas acceptées dans le contexte http, déclarez-les dans le contexte server ;-)

Astuce

Documentation