Ir para conteúdo
  • Cadastre-se

Modo Hard (Proteção DoS PHP)


Posts Recomendados

Olá :detective:

Aqui vai uma função em PHP que é possivel proteger contra ataques DoS, ou seja, se ela detectar que o usuário possivelmente está acessando várias páginas antes de 3 segundos (flood pages), o usuário é bloqueado e uma mensagem apareçerá na tela! "Muito bom para bloquear bots, não todos tipos, mais bloqueia".

Criamos um arquivo "protect.php" 

<?php
  date_default_timezone_set('America/Sao_Paulo'); 
  $crlf=chr(13).chr(10);
  $itime=3;  //Minimum number of seconds between one-visitor visits
  $imaxvisit=10;  //Maximum visits in $itime x $imaxvisits seconds
  $ipenalty=($itime * $imaxvisit);  //Minutes for waitting
  $iplogdir="./logs/DoSLog/";
  $iplogfile="hackreport/AttackersIPs.Log";
  
  // Time
  $today = date("Y-m-j,G");
  $min = date("i");
  $sec = date("s");
  $r = substr(date("i"),0,1);
  $m =  substr(date("i"),1,1);
  $minute = 0;
  
  $to      = '[email protected]';  
  $headers = 'From: Trinity DDOS Shield' . "\r\n";
  $subject = "Warning of Possible DoS Attack at $today:$min:$sec";
  

  //Warning Messages:
  $message1='<font color="red">Space under heavy bandwidth usage or being DDOS attacked!</font><br>';
  $message2='Aguarde ... ';
  $message3=' segundo ou tente novamente após alguns minutos a partir de agora.<br>';
  $message4='<font color="blue">Protegido por DDOS Shield feita por Igor Pereira.</font><br>Se você é um ser humano, a mudança de IP.<br>Nós proibiu temporariamente este IP <b>'.$_SERVER["REMOTE_ADDR"].' </b>de ataque DoS.';
  $message5= 'Trinity has been attacked by a bot or human visiting from this IP address: '.$_SERVER["REMOTE_ADDR"];
  $message6='<br><img src="./logs/DoSLog/cross.gif" alt="" border="0">'; 
//---------------------- End of Initialization ---------------------------------------  

  //Get file time:
  $ipfile=substr(md5($_SERVER["REMOTE_ADDR"]),-3);  // -3 means 4096 possible files
  $oldtime=0;
  if (file_exists($iplogdir.$ipfile)) $oldtime=filemtime($iplogdir.$ipfile);

  //Update times:
  $time=time();
  if ($oldtime<$time) $oldtime=$time;
  $newtime=$oldtime+$itime;

  //     Check human or bot:
  if ($newtime>=$time+$itime*$imaxvisit)
  {
    //     To block visitor:
    touch($iplogdir.$ipfile,$time+$itime*($imaxvisit-1)+$ipenalty);
    header("HTTP/1.0 503 Service Temporarily Unavailable");
    header("Connection: close");
    header("Content-Type: text/html");
    echo '<html><head><title>Igor Pereira DDOS Sheild</title></head><body><p align="center"><strong>'
          .$message1.'</strong>'.$br;
    echo $message2.$ipenalty.$message3.$message4.$message6.'</p></body></html>'.$crlf;
   //     Mailing Warning Message to Site Admin
     {
	@mail($to, $subject, $message5, $headers);	
     }
    //     logging:
    $fp=@fopen($iplogdir.$iplogfile,"a");
    if ($fp!==FALSE)
    {
      $useragent='<unknown user agent>';
      if (isset($_SERVER["HTTP_USER_AGENT"])) $useragent=$_SERVER["HTTP_USER_AGENT"];
      @fputs($fp,$_SERVER["REMOTE_ADDR"].' on '.date("D, d M Y, H:i:s").' as '.$useragent.$crlf);
    }
    @fclose($fp);
    exit();

  }

  //Modify file time:

?> 

Agora no index.php coloque:

<?php
include "protect.php";
?>

Enjoy my knowledge! (:

DEDICADO BRASIL

Professional Internet Datacenter

banner_divulgativo_468x60.gif

 

Tudo oque você precisa para ter certeza de que não há nada que vai estragar teus planos em seu projeto Gamer/Engine, nós somos uma empresa qualificada em Segurança em servidores, obtemos técnicos especializados, que possam lhe alertar sobre qualquer falha que você esteja sofrendo.

 

- Visite o site

Link para o post
Compartilhar em outros sites
  • 10 months later...

Desculpe reviver o tópico, porem alguem poderia me ajudar como proceder onde criar esse arquivo ?

Malblofor REP+

tk-melhor.png

Citar

[ADMINISTRAÇÃO DE SERVIDORES]

Link para o post
Compartilhar em outros sites

Desculpe reviver o tópico, porem alguem poderia me ajudar como proceder onde criar esse arquivo ?

na pasta do site junto onde fica o index.php

 Whatsapp: +55 (48) 98815-0709 Discord: Qwizer#5713

 

Global 100% 7.40 com Website

TFS 1.2 10.97-11.00 + GlobalFull OtherWorld ...

 

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo