Copier-coller bloqué, ou comment désactiver une fonction Javascript

Aujourd’hui, un p’tit hack rapide que je vous présente aujourd’hui pour contourner des soi-disant « sécurités » de copier-coller bloqué sur certains formulaires web, exemple.

C’est très désagréable pour l’utilisateur, et ça ne sert absolument à rien contre un attaquant qui veut bruteforcer votre formulaire puisqu’il attaquera directement via le flux HTTP (avec un proxy d’attaque type BURP ou ZAP, voir avec CURL en scripting).

S’il s’agit d’une fonctionnalité pour éviter les erreurs de saisie : j’aimerais qu’on m’explique à quel moment on contrôle une adresse e-mail comme ça ? et pas avec un mail de validation au hasard. De même, pour les champs de mots de passe, à part empêcher d’utiliser un gestionnaire de mot de passe, ça incitera juste l’utilisateur à utiliser un secret simple pour ne pas s’emmerder à saisir un truc compliqué deux fois.

Et comme il s’agit d’une protection qui bloque le copier/coller dans le navigateur, elle ne peut être exécutée que du côté de votre poste. C’est-à-dire en JavaScript, et on peut donc agir dessus très facilement. Et sans la moindre « attaque » du site internet puisque qu’on ne modifie que des éléments sur notre poste. Le serveur se contentant de recevoir … Lire la suite

Fail2ban pour Splunk avec une basic Auth Nginx

Fail2ban

Salut tous, aujourd’hui on continue dans la série des articles sur fail2ban et Splunk en regardant comment mettre en place et protéger une BasicAuth HTTP devant Splunk avec Fail2ban. En effet, un « petit » défaut de la version free de Splunk est l’absence d’authentification… Wait What ??? Oui oui, vous avez bien lu, d’ailleurs je cite la doc : « There is no login. The command line or browser can access and control all aspects of Splunk Free with no user and password prompt.« . C’est bien traitre de la part de Splunk car lorsque vous installez la version d’essai, vous avez bien la mire de login pendant 60j et c’est seulement lorsque vous repasser en free que celle-ci disparait…

Shame on you Splunk ! que vous ne fournissiez pas l’authentification, pourquoi pas, mais la faire sauter à la fin de la période de trial : c’est franchement criminel de votre part.

Bref, ceci étant dit, le plus simple pour remettre une authentification en place c’est de configurer votre serveur web pour ajouter une auth basic, et on verra comment la protéger avec fail2ban.

Prérequis

Du coup cet article fait appel à pas mal de truc … Lire la suite

Fail2ban pour wordpress pour se protéger des bruteforce

Fail2ban

Salut à tous, aujourd’hui on va voir comment mettre en place Fail2ban pour WordPress.

En fait, je gratte mes logs dans Splunk de Nginx depuis quelque temps et je me suis rendu compte que mon site se faisait bruteforcer dans les règles depuis un bon mois par quelques IP… Du coup, d’une part, j’ai désactivé ou blindé quelques services du site dont je ne me servais pas (xmlrpc, API REST), ce qui a bien limité les tentatives. Mais ça ne protège pas des attaques classique contre la page « wp-login.php« . Du coup, j’ai regardé comment on pouvait sécuriser ça (dans la doc de WordPress). Et j’ai retenu la solution avec fail2ban dont je vous avait déjà parlé précédemment, d’ailleurs. Je vous montre donc ci-dessous comment on peut activer Fail2ban pour WordPress.… Lire la suite

Intégrer l’IPS Suricata 4.1 dans Splunk

Suricata 4.1 dans Splunk

Salut à tous, aujourd’hui on va regarder ce qu’on peut faire avec l’IDS/IPS Suricata 4.1 dans Splunk. Suricata est un logiciel issu un développement « from scratch » dans le but de faire un IDS/IPS libre compatible avec les règles de Snort (tenues par Cisco). On va donc voir comment on installe Suricata 4.1 (en beta actuellement) sur une Debian 9 et ce qu’on peut faire pour le configurer et intégrer les résultats dans Splunk.

Installation Suricata 4.1 (beta)

La procédure d’installation de Suricata est très bien documenté ici et . Je n’en reprends donc ci-dessous que les grandes lignes pour la version 4.1.

# apt-get install libpcre3 libpcre3-dbg libpcre3-dev build-essential libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev pkg-config zlib1g zlib1g-dev libcap-ng-dev libcap-ng0 make libmagic-dev libjansson-dev libnss3-dev libgeoip-dev liblua5.1-dev libhiredis-dev libevent-dev libnetfilter-queue-dev libnetfilter-queue1 libnetfilter-log-dev libnetfilter-log1 libnfnetlink-dev libnfnetlink0
# curl -O 
Lire la suite