IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Anti attaque par force brute et falsification de REMOTE_ADDR


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 46
    Points : 32
    Points
    32
    Par défaut Anti attaque par force brute et falsification de REMOTE_ADDR
    Bonjour,

    Je souhaite tester mon script antibrute force.
    Il fonctionne comme ceci:
    si nombreuses requetes dans un cours laps de temps avec la même ip, je bannis l'ip.

    Donc si l'attaquant flood en utilisant un proxy, ce sera l'ip du proxy qui sera banni, et il lui faudra utiliser un autre proxy. Peu importe les valeurs renvoyées par FORWARDER_FOR ou VIA etc..., je ne regarde que REMOTE_ADDR.

    Maintenant si je considère que l'attaquant n'utilise pas de proxy, comment peut-il bypasser mon antibruteforce?
    Peut-on modifier (avec une en-tête http ou autre) la valeur de $_SERVER[REMOTE_ADDR renvoyé par mon serveur?
    Ou bien est-il obligé de forger lui-même ses paquets ip? Au risque de ne pas recevoir de réponse du serveur.

    Merci

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 448
    Points : 2 284
    Points
    2 284
    Par défaut
    Citation Envoyé par fredo2009 Voir le message
    Maintenant si je considère que l'attaquant n'utilise pas de proxy, comment peut-il bypasser mon antibruteforce?
    Salut,

    Simple ?
    Pas tellement.
    Mais en utilisant un botnet, un groupe de machine zombie controlé à distance par un maitre d'oeuvre, ton système n'y verra que du feu.

    C'est très classique dans le cas des attaques de déni, à cause de la puissance développée, sa fonctionnerait tout aussi bien, même mieu pour du forcebrute, plus encore lorsque la protection utilise l'ip comme dans ton cas.

    a plus

  3. #3
    Membre du Club Avatar de TwAzO
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    67
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 67
    Points : 51
    Points
    51
    Par défaut
    Pour moi le meilleur anti-bruteforce actuel, c'est un bon gros mot de passe du style Ty45$^^bnè

    Avec un peu de chance, un hack3rz mettra un petite centaine d'années à cracker un mdp

    Bon je sais ça aide pas mais bon...
    ^^/*|*\^^ 1n SoURc3 1 TRu5T ^^/*|*\^^

  4. #4
    Membre averti

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 206
    Points : 319
    Points
    319
    Par défaut
    Sinon tu ne bannis pas l'IP mais créer une session et détecte l'utilisateur a la session, après si tu vois que c'est la même session qui retente une 3eme fois ou plus, tu peut mettre un SLEEP qui double de temps d'attente dans le script PHP a chaque tentative, voir même un DIE si sa persiste, comme sa tu ne surchargera pas ton serveur et l'autre ne saura jamais s'il l'a trouver ou pas car le script s'arretera.

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 448
    Points : 2 284
    Points
    2 284
    Par défaut
    oui,
    mais non car il n'est pas dit que l'attaquant ré utilisera la session en cas d'échec, on peut même penser qu'il fera exprès de la ré initialiser.

    Par contre tu peux mettre un flag sur l'utilisateur dans la bdd.

  6. #6
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Points : 1 565
    Points
    1 565
    Par défaut
    si un utilisateur forge des paquets avec une REMOTE_ADDR différente de la sienne, il peux faire un DOS, mais il ne pourras pas récuperer la réponse de ton site... donc pas de brute force avec cette maniere.

    Autre solution qui se rapproche de celle des autres, une fois que ton utilisateur est "détecté", tu ne change rien a ton comportement habituel, mais tu ne vérifie plus le mot de passe, tu renvoie FALSE a chaque fois ;o) comme ca il peut toujours s'amuser a brute force... ad eternam.
    Evidemment ca protege pas d'un DOS, mais uniquement d'une attaque brute force

  7. #7
    Membre averti

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 206
    Points : 319
    Points
    319
    Par défaut
    Sinon utilise ce qui se fait le plus :o une image non vectorielle indiquant des lettre et chiffres aléatoires à entrer au moment du login avec le reste .

Discussions similaires

  1. GitHub victime d’une grande campagne d’attaques par force brute
    Par Cedric Chevalier dans le forum Sécurité
    Réponses: 44
    Dernier message: 05/12/2013, 11h25
  2. Vol de session par force brute, besoin d'explications
    Par Sayrus dans le forum Sécurité
    Réponses: 2
    Dernier message: 03/11/2009, 16h47
  3. Réponses: 0
    Dernier message: 16/03/2009, 10h54
  4. Réponses: 2
    Dernier message: 14/06/2007, 11h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo