[Guide] Protect your Server and Site

Status
Not open for further replies.

OmaRuCat

Well-Known Member
Joined
Jun 3, 2008
Messages
531
Reaction score
457
1 . Отворете config.php и добавете най отгоре :

C:/MuServer - Замествате с вашата папка на MuServer файла се създава автоматично ([WEB]SQL_Injection.txt)

PHP:
<?php
$ip = $_SERVER['REMOTE_ADDR'];
$time = date("l dS of F Y h:i:s A");
$script = $_SERVER[PATH_TRANSLATED];
$fp = fopen ("C:/MuServer/[WEB]SQL_Injection.txt", "a+");

$sql_inject_1 = array(";","'","%",'"'); #Whoth need replace
$sql_inject_2 = array("", "","","&quot;"); #To wont replace
$GET_KEY = array_keys($_GET); #array keys from $_GET
$POST_KEY = array_keys($_POST); #array keys from $_POST
$COOKIE_KEY = array_keys($_COOKIE); #array keys from $_COOKIE
/*begin clear $_GET */
for($i=0;$i<count($GET_KEY);$i++)
{
$real_get[$i] = $_GET[$GET_KEY[$i]];
$_GET[$GET_KEY[$i]] = str_replace($sql_inject_1, $sql_inject_2, HtmlSpecialChars($_GET[$GET_KEY[$i]]));
  if($real_get[$i] != $_GET[$GET_KEY[$i]])
  {
  fwrite ($fp, "IP: $ip\r\n");
  fwrite ($fp, "Method: GET\r\n");
  fwrite ($fp, "Value: $real_get[$i]\r\n");
  fwrite ($fp, "Script: $script\r\n");
  fwrite ($fp, "Time: $time\r\n");
  fwrite ($fp, "==================================\r\n");
  }
}
/*end clear $_GET */
/*begin clear $_POST */
for($i=0;$i<count($POST_KEY);$i++)
{
$real_post[$i] = $_POST[$POST_KEY[$i]];
$_POST[$POST_KEY[$i]] = str_replace($sql_inject_1, $sql_inject_2, HtmlSpecialChars($_POST[$POST_KEY[$i]]));
  if($real_post[$i] != $_POST[$POST_KEY[$i]])
  {
  fwrite ($fp, "IP: $ip\r\n");
  fwrite ($fp, "Method: POST\r\n");
  fwrite ($fp, "Value: $real_post[$i]\r\n");
  fwrite ($fp, "Script: $script\r\n");
  fwrite ($fp, "Time: $time\r\n");
  fwrite ($fp, "==================================\r\n");
  }
}
/*end clear $_POST */
/*begin clear $_COOKIE */
for($i=0;$i<count($COOKIE_KEY);$i++)
{
$real_cookie[$i] = $_COOKIE[$COOKIE_KEY[$i]];
$_COOKIE[$COOKIE_KEY[$i]] = str_replace($sql_inject_1, $sql_inject_2, HtmlSpecialChars($_COOKIE[$COOKIE_KEY[$i]]));
  if($real_cookie[$i] != $_COOKIE[$COOKIE_KEY[$i]])
  {
  fwrite ($fp, "IP: $ip\r\n");
  fwrite ($fp, "Method: COOKIE\r\n");
  fwrite ($fp, "Value: $real_cookie[$i]\r\n");
  fwrite ($fp, "Script: $script\r\n");
  fwrite ($fp, "Time: $time\r\n");
  fwrite ($fp, "==================================\r\n");
  }
}

/*end clear $_COOKIE */
fclose ($fp);
?>



2 . Отворете index.php добавете под
-----
require("config.php");
-----

include ("ctracker.php");
include ("safesql.class.php");


добавете под
-----
login();
logincheck();
check_user();
-----

$queryString = strtolower($_SERVER['QUERY_STRING']);

if (strstr($queryString,"<") OR strstr($queryString,">") OR strstr($queryString,"(") OR strstr($queryString,")") OR
strstr($queryString,"..") OR
strstr($queryString,"%") OR
strstr($queryString,"*") OR
strstr($queryString,"+") OR
strstr($queryString,"!") OR
strstr($queryString,"@")) {
$loc = $_SERVER['PHP_SELF'];
$ip = $_SERVER['REMOTE_ADDR'];
$date = date ("d-m-Y @ h:i:s");
$lfh = "log.txt";
$lfh = "logove.php";
$log = fopen ( $lfh,"a+" );
fputs ($log, "Attack Date: $date | Attacker IP: $ip | QueryString: $loc?=$queryString\n");
fclose($log);
echo "You think you can hack me? Now You will eat the BANN!!";
}


Създайте файл logove.php !


Download : http://4storing.com/iw6mq/4a1277cbd65922bb6a6f782d522e9967.html


3 . За да се защитите от DoS attacks , buffer flow , port scan си сложете някаква анти вирусна например : Kaspersky Internet Security 2009 , Comodo Internet Security , Avast Pro



4 . Как да се защитим от DoS атака на сайта ако нямаме анти вирусна (естествено трябва да ви е силен ПЦ) :
Отворете : xampp\apache\conf\httpd.conf
Търсете ThreadsPerChild (default 250)
Променете на : ThreadsPerChild 99999
Рестартирайте вашия уеб сървър !



5 . Как да се защитиме от Shell

Отворете php.ini
Търсете : disable_functions
И напишете : disable_functions = system,exec,shell_exec,passthru,error_log,ini_alter,dl,pfsockopen, openlog, syslog, readlink, symlink, link, leak, popen, escapeshellcmd, proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,escapeshellarg,pcntl_exec

Търсете safe_mode
направете го On ако е Off
направете същото и със : safe_mode_gid

safe_mode = On

safe_mode_gid = On
 
Темата е изчистена и заключена по искане на Автора на темата !

Моля имайте малко респект към тези които правят за вас много. :)

Опитаите да се извините на Omaru (някои хора знаете си кои сте ) защото искаше дори да се откаже от форумът че ви помага вие му викате :)


Благодаря за отделеното внимание и извиняваите ако съм ви притeснил


Bupyc™

DarksTeam
 
Status
Not open for further replies.