De la sécurité des headers HTTP

Sécurité des headers HTTP

Salut à tous, on m’a conseillé de jeter un œil au site securityheaders.com récemment. Celui-ci permet de contrôler la sécurité des headers HTTP d’un site. Et en testant le site, non seulement je me suis rendu compte qu’il m’en manquait quelques-uns. Mais aussi que je ne vous ai jamais fait un point sur la sécurité des headers HTTP. C’est l’occasion !

Quelle sécurité des headers HTTP ?

Bon je ne vais pas vous faire un dessin. Si vous ne savez pas ce qu’est un header HTTP allez faire un tour sur le net (genre ici ou ). Ils ne concernent pas le site à proprement parler (HTML, PHP, JS, CSS) mais la couche précédente du modèle OSI (HTTP). Ces headers permettent au client (le navigateur) et au serveur (nginx) d’échanger des informations relatives à la gestion du site. Comme par exemple : l’authentification, le comportement du cache, les timeouts de connexions ou encore les cookies. Une partie de ces headers concernent directement la sécurité de votre site. On va les détailler une par un ci dessous.

Quels en-têtes pour la sécurité ?

X-Frame-Options

On va commencer par un simple : X-Frame-Options. Ce header serveur permet d’indiquer au navigateur si … Lire la suite

Authentification par certificat client sur nginx

Authentification par certificat client sur nginx

Salut à tous, aujourd’hui on m’a demandé de regarder comment faire de l’authentification par certificat x509 sur un serveur Nginx. Je parle bien ici du client, pas du certificat serveur que vous obtenez avec let’s encrypt par exemple. Donc pour accéder au site web l’utilisateur devra présenter un certificat valide de l’AC que vous aurez défini.

Un certifi-quoi ?

Dans les faits, vous utilisez déjà des certificats x509 (délivrés par let’s encrypt, par exemple) pour authentifier votre site auprès de vos utilisateurs (et comme base pour chiffrer la connexion en HTTPS aussi). Ici ce qu’on souhaite faire c’est l’inverse, c’est à dire que le serveur va demander aux utilisateurs de s’authentifier, en présentant un certificat, avant de les laisser accéder au site.

Alors je suis désolé pour ceux qui ne captent rien aux certificats, ce n’est pas l’objet de cet article. Je pars du postula que si vous cherchez à authentifier vos clients par certificats, c’est que vous savez déjà ce que c’est… Sinon, je vous renvoi quand même (je suis sympa) vers ces sources (ici, , , et ) qui ne sont pas trop mauvaises. Mais ne rêvez pas trop, un bon cours sur … Lire la suite

Comment stocker un mot de passe ?

Salut à tous, aujourd’hui on va continuer le cycle d’article sur les mots de passes, et plus particulièrement : comment stocker un mot de passe. Pour info, je me pompe sans honte sur cet article de sophos, qui est au top sur le sujet.

Comment on faisait ? ou plutôt comment ne pas stocker un mot de passe.

En clair !

La plus ancienne méthode de stockage consistait à stocker les mots de passe… en clair ! Elle pose quelques petits problèmes, assez évidents : en cas d’attaque réussie, en cas de réutilisation du mots de passe, etc. Cette méthode là, on ne la rencontre plus trop chez les professionnels. Mais parfois, on tombe encore sur un utilisateur qui garde un joli fichier Excel avec tout ses mots de passe dedans.

R1- Ne pas stocker les mots de passe en clair, donc.

Chiffré ?

Puisqu’on ne peut pas les stocker en clair, on va les chiffrer, non ? bein non plus, déjà cela signifie que les administrateurs accèdent encore au clair de vos mots de passe. En fait, en chiffrant votre base de mot de passe vous ne faites que transférer la sécurité sur le secret de la … Lire la suite

TA pour fail2ban, ma nouvelle App Splunk

Splunk Logo

Salut à tous, il y a quelques temps je vous ai proposé une App Splunk pour gérer les logs de VSFTPD et cette semaine j’ai réalisé une TA pour fail2ban. On va profiter de l’occasion pour s’attarder sur la structure d’un App Splunk en détaillant le contenu.

Pour ceux qui débarque la précédente App fail2ban proposée sur la splunkbase ne fonctionne pas, date de 2013, et n’est notée compatible qu’avec Splunk 6… Plus exactement, le format de log qu’elle supporte ne correspond plus du tout avec celui de fail2ban en 2019…

Du coup, j’ai fait une TA supportant le format de log de fail2ban actuel (testé sur les versions 0.9.6 et 0.10.2). J’ai appliqué la même démarche que pour VSFTPD et créé l’App via le Splunk Add-on Builder. Je vous laisse rejeter un œil à mon précédent article si vous voulez savoir comment on fait pour développer une App dans Splunk.

« TLDR », elle est où ta TA pour fail2ban ?

Comme celle pour VSFTPD, mon Technology Add-on Splunk pour Fail2ban est sur la Splunkbase. Enjoy !

Regex d’analyse des logs fail2ban

Il y a un élément dans le travail que j’ai fait pour cette App … Lire la suite