Page 1 sur 1

Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 11:37
par falsam
Je vous propose d'expérimenter un ban ip avec le code qui va suivre.

-Ce code se connecte sur un serveur mutualisé basé chez 1and1.

-Un script Php est lancé créant un fichier json pour chaque ip qui se connecte.

■ Ce fichier Json contient :
- L'adresse ip du client qui se connecte,
- Un flag de création de compte,
- Le nombre de connexion,
- Le nombre de tentatives de flood. (La limite étant fixé à 4), flood
"ip":"80.13.XXX.XXX","AccountCreate":1,"CountConnect":11,"Flood":0}
Pressez la touche F5 pour exécuter ce code. Si vous respectez un intervalle de 5 secondes environ entre chaque appui sur la touche F5, vous ne serez pas ban.

:idea: Bien évidement je vous demanderais de ne pas respecter cette règle et vous verrez le compteur de flood s'incrémenter de 1 en 1.

Si vous respectez à nouveau les 5 secondes de délais, le compteur de flood sera remis à zero.

Après 4 tentatives de flood, vous serez ban ip.

Merci pour votre participation.

Code : Tout sélectionner

EnableExplicit

#PR_Test = 0

Global url.s = "http://s242132022.onlinehome.fr/2ox/"

Procedure ServerEnable()
  Protected Header.s, Buffer.s, Result.b
  
  Header = GetHTTPHeader(Url + "isenable")
  Buffer = StringField(Header, 1, #LF$)
  
  If FindString(buffer, "200 OK")
    Result = #True
  EndIf 
  ProcedureReturn Result  
EndProcedure

Procedure.s Php(Script.s, Parameters.s = "")
  Protected UserAgent.s = "The quick brown fox jumps over the lazy dog."
  Protected *Buffer, Size, Buffer.s
  
  If ServerEnable()
    *buffer = ReceiveHTTPMemory(url + script + "/" + URLEncoder(parameters), #PB_HTTP_NoRedirect, UserAgent)
    
    If *buffer
      Size = MemorySize(*buffer)
      Buffer = PeekS(*buffer, Size, #PB_UTF8|#PB_ByteLength)
      FreeMemory(*buffer)
    EndIf 
  EndIf
  ProcedureReturn Buffer
EndProcedure

Procedure Connect()
  Protected Parameters.s, Buffer.s, n
  
  Parameters = "?process=" + Str(#PR_Test)   
  Buffer = Php("421", Parameters)
  
  If Buffer      
    For n = 1 To CountString(Buffer, #CR$)
      Debug StringField(Buffer, n, #CR$)
    Next
  Else
    Debug "Sorry, You're banned (ip) ^_^"
  EndIf    
EndProcedure

InitNetwork()
Connect()
Bon flood et que le ban soit avec vous :mrgreen:

Re: Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 12:32
par Ar-S
Sorry, You're banned (ip) ^_^

Re: Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 12:40
par Kwai chang caine
''Very bad trip'' administrator a écrit :Attention you must wait a few seconds. ( >5 Seconds) Try one later ....
Hey you! Trying a Flood?
YES ! THIS IS A FLOOD
GO Away. You're banned !!'
Image

I'm Image of PB FORUM, i want to die !!!!!
Ouuuuuuuuuuuiiinnn !!!!!!!!

Re: Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 12:49
par falsam
Image

Merci pour votre participation.

Re: Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 14:09
par Fig
"Mais pourquoi est il aussi méchant ?" Image

Re: Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 15:29
par SPH
essayé 7 fois :
Acces Process and USER AGENT ok
Votre IP : 90.7.135.123

Attention you must wait a few seconds. ( >5 Seconds) Try one later ....
Hey you! Trying a Flood?
This is your last chance. ^-^

RESULT : User setup
The current server timezone is: Europe/Berlin
Last modified: May 20 2018 16:28:13.

JSON Content: {"ip":"90.7.135.123","AccountCreate":1,"CountConnect":2,"Flood":4}

Re: Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 15:55
par djes
:lol:

Re: Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 21:13
par falsam
SPH Le magnifique a écrit :essayé 7 fois :
Oui .... mais pas assez vite :wink:

Re: Expérimenter un ban IP ^-^

Publié : dim. 20/mai/2018 21:24
par falsam
Merci aux 5 participant de s'être prêter au jeu.
Dans un geste magnanime j'ai décidé de vous dé-bannir.

Qu'il en soit ainsi.

Re: Expérimenter un ban IP ^-^

Publié : lun. 21/mai/2018 10:15
par Kwai chang caine
:lol:

Image

:mrgreen: