[nginx/WP] brute-force sur un wordpress

Demande d'aide : c'est ici.
Répondre
Avatar de l’utilisateur
vohu
Membre
Membre
Messages : 455
Inscription : 16 avr. 2016, 12:02
Localisation : Strasbourg
Status : Hors-ligne

Salut,

Je rencontre un problème bizarre et qui m'inquiète assez et j'espère que quelqu'un saura m'expliquer comment résoudre ce truc..

J'ai donc un site wordpress sur un nginx.

Ayant de nombreuses attaques, j'ai fait en sorte que les url site/wp-admin et wp-login renvoient un 403.
J'ai bien eu l'effet escompté jusqu'à aujourd'hui...

Non seulement, je reçois à nouveau d'innombrables mails de tentatives de connexion au site wordpress, mais en plus, celui qui m'attaque a trouvé un des identifiant dont le nom est assez... improbable...


Voici la config du wp :

Code : Tout sélectionner

server {
        listen 80;
        root /var/www/html/nomsite;
        index index.php;
        server_name nomsite.com;

        access_log /var/log/nginx/nomsite.access.log;
        error_log /var/log/nginx/nomsite.error.log;

        client_max_body_size 100m;


        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        location ~ ^/(wp-admin|wp-login\.php) {
           deny    all;
         }


    location ~ \.php$ {
        try_files $uri /index.php;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
}
Est ce que quelqu'un à une idée de comment ce mec arrive à ouvrir la page nomdusite/wp-login.php alors que j'ai fait en sorte de plus y accéder moi-même ?

Merci :$
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5854
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

vérifie ton .htaccess
j'ai installé un plugin bien pratique sur mes blogs: login lockdown
en cas de tentative de login infructueuse, l'IP est bannie.
Avatar de l’utilisateur
vohu
Membre
Membre
Messages : 455
Inscription : 16 avr. 2016, 12:02
Localisation : Strasbourg
Status : Hors-ligne

htaccess avec nginx ? Je croyais qu'il ne les lisait pas ?
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5854
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

possible, je n'utilise pas nginx, , mais il me semblais que ce fichier ne dépendait pas du serveur web utilisé.
A vérifier.
Avatar de l’utilisateur
vohu
Membre
Membre
Messages : 455
Inscription : 16 avr. 2016, 12:02
Localisation : Strasbourg
Status : Hors-ligne

Comme je le pensais, il n'y a pas de htaccess dans nginx, s’équivalant correspond à ce que j'ai mis dans mon virtualhost
Avatar de l’utilisateur
Grhim
Membre très actif
Membre très actif
Messages : 1389
Inscription : 30 mai 2016, 01:00
Localisation : kekparr'par'là
Status : Hors-ligne

fail to ban fonctionne avec nginx il me semble ...

j'ai trouver ca mais je suppose que cel ne t'apprendra pas grand chose https://www.cyberciti.biz/faq/linux-uni ... rol-howto/

mieux !! https://www.howtoforge.com/nginx-how-to ... ian-ubuntu
Debian Stable + Testing -.- Parrot OS - Kali Exegol -.- Raspberry IPFire
Avatar de l’utilisateur
vohu
Membre
Membre
Messages : 455
Inscription : 16 avr. 2016, 12:02
Localisation : Strasbourg
Status : Hors-ligne

Grihim > Fail2ban est déja installé, mais il est conçu pour bloquer les attaques. Là je cherche à interdire à quiconque de se connecter à cette page.

J'ai donc ajouté le bloc suivant au fichier virtualhost de mon site :

Code : Tout sélectionner

        location ~ ^/(wp-admin|wp-login\.php) {
           deny    all;
         }
         
Lorsqu'on ouvre la page "normalement" on a bien un 403... Sauf qu'un petit malin arrive quand même à faire une requête de login.
Avatar de l’utilisateur
kitmale
Membre actif
Membre actif
Messages : 733
Inscription : 25 avr. 2016, 09:39
Status : Hors-ligne

vohu a écrit :Salut,

Je rencontre un problème bizarre et qui m'inquiète assez et j'espère que quelqu'un saura m'expliquer comment résoudre ce truc..

J'ai donc un site wordpress sur un nginx.

Ayant de nombreuses attaques, j'ai fait en sorte que les url site/wp-admin et wp-login renvoient un 403.
J'ai bien eu l'effet escompté jusqu'à aujourd'hui...

Non seulement, je reçois à nouveau d'innombrables mails de tentatives de connexion au site wordpress, mais en plus, celui qui m'attaque a trouvé un des identifiant dont le nom est assez... improbable...


Voici la config du wp :

Code : Tout sélectionner

server {
        listen 80;
        root /var/www/html/nomsite;
        index index.php;
        server_name nomsite.com;

        access_log /var/log/nginx/nomsite.access.log;
        error_log /var/log/nginx/nomsite.error.log;

        client_max_body_size 100m;


        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        location ~ ^/(wp-admin|wp-login\.php) {
           deny    all;
         }


    location ~ \.php$ {
        try_files $uri /index.php;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
}
Est ce que quelqu'un à une idée de comment ce mec arrive à ouvrir la page nomdusite/wp-login.php alors que j'ai fait en sorte de plus y accéder moi-même ?

Merci :$

Une petite suggestion : tu as affaire avec un google hacker (dorks)
Pour le reste je te laisse faire les recherches
Philosophie du rasoir d'ockam
http://player.lg1043.com/CHLGFM

"Do not fear to be eccentric in opinion, for every opinion now accepted was once eccentric. Bertrand Russell
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5854
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

tu n'a pas moyen de sniffer les requetes pour voir comment il fait ?
Avatar de l’utilisateur
Mimoza
Contributeur
Contributeur
Messages : 655
Inscription : 22 avr. 2016, 12:00
Localisation : Terre
Status : Hors-ligne

Et en attaquant directement via l'adresse IP au lieu du nom DNS ? C'est juste une idée, je ne sais pas si Nginx se comporte de la même manière via le nom DNS ou l'IP.
Sinon augmente un peu les logs de Nginx pour voir les requêtes d'accès et l'URL précise qu'il accède.
Avatar de l’utilisateur
vohu
Membre
Membre
Messages : 455
Inscription : 16 avr. 2016, 12:02
Localisation : Strasbourg
Status : Hors-ligne

Très bonnes idées :
J'ai vérifié pour l'accès par IP, c'est pas ça, car le fichier virtualhost catche sur le nom DNS. J'ai néanmoins fait le test, je suis directement redirigé avec le nom de domaine et donc erreur 403 OK.
Pour les logs, le mec s'est calmé, j'attends sa prochaine vague et regarderais ce qui se passe en temps réèl.
Avatar de l’utilisateur
Mimoza
Contributeur
Contributeur
Messages : 655
Inscription : 22 avr. 2016, 12:00
Localisation : Terre
Status : Hors-ligne

Au niveau de la ligne «listen» du fichier de conf Nginx tu peux lui mettre «default» pour bien contrôler le comportement par défaut du serveur …
Sinon fait en sorte que «/wp-admin» redirige vers un répertoire vide ou absent pour forcer les erreurs.
Avatar de l’utilisateur
vohu
Membre
Membre
Messages : 455
Inscription : 16 avr. 2016, 12:02
Localisation : Strasbourg
Status : Hors-ligne

J'ai jamais trop compris à quoi servait vraiment cette option "default"
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

Salut,
C'est enfantin de trouver les utilisateurs Wordpress...

J'utilise 3 plugs qui m'évite ce genre de tracas sur Wordpress: Fail2ban, Stop User Enumeration et Captcha by BestWebSoft

Avec stop user enumeration tu évite que les utilisateurs WP soient facilement trouvés
Avec Captcha tu complique la connexion à wp-admin
Avec fail2ban tu bloque les emmerdeurs.
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
vohu
Membre
Membre
Messages : 455
Inscription : 16 avr. 2016, 12:02
Localisation : Strasbourg
Status : Hors-ligne

Ok, je connaissais pas ce Stop User Enumeration.

Tu utilises quoi comme filtre fail2ban ?
Avatar de l’utilisateur
lol
Site Admin
Site Admin
Messages : 5054
Inscription : 04 avr. 2016, 12:11
Localisation : Madagascar
Status : Hors-ligne

Salut,
vohu a écrit :Ok, je connaissais pas ce Stop User Enumeration.
Très simple et très efficace...
https://www.site.com/?author=1 = FORBIDDEN.
vohu a écrit :Tu utilises quoi comme filtre fail2ban ?
Le Dev fournit deux filtres dans les fichiers de son plugin : WP-soft et WP-hard
Tu choisis celui qui te convient le mieux (plus ou moins sensible...).
Après, évidemment, tu peux écrire ton propre filtre.
Règles d'usage du forum. Signalez si vous avez posté votre question sur un autre forum. Explications ici
Debian Unstable. Mate/LXQT. Dieu, en créant l'homme, a quelque peu surestimé ses capacités.
Avatar de l’utilisateur
vohu
Membre
Membre
Messages : 455
Inscription : 16 avr. 2016, 12:02
Localisation : Strasbourg
Status : Hors-ligne

J'ai effectivement créé le mien mais j'ai quand même plus confiance en le truc d'un pro lol.

Je vais du coup me pencher sur cve WE. Merci :)
Répondre