[Release] XSS Security Fix

Bupyc™

New Member
Joined
Jul 10, 2008
Messages
504
Reaction score
327
Здравейте , ще ви покажа поне основната XSS защита против хакери (това не означава че няма ви хакват от модули и тн :D)
Така:
Понеже повечето от вас няма да знаят как да го сложат в Index си ще ви покажа

Самия скрипт е този
PHP:
<?php
$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";
$log = fopen ( $lfh,"a+" );
fputs ($log, "Attack Date: $date | Attacker IP: $ip | QueryString: $loc?=$queryString\n");
fclose($log);
echo "Вашата атака беше записане!";
}
?>

Слага се след <? в началото ви на Index-a и преди ?>

Принципно на секи muweb би трябвало да изглежда така Index-a
PHP:
<?
session_start();
header("Cache-control: private");
ob_start();
$timeStart=gettimeofday();
$timeStart_uS=$timeStart["usec"];
$timeStart_S=$timeStart["sec"]; 
require("config.php");
include("includes/web_modules.php");
include("includes/clean_var.php");
include("includes/login.class.php");
include("includes/scripts/index.inc");
include("config.php");

//security
include "includes/Security.php";
$s = new Security;
$s->sanitize_input();

login();
logincheck();
check_user(); 
?>

И като добавим вече скрипта става така:
PHP:
<?
session_start();
header("Cache-control: private");
ob_start();
$timeStart=gettimeofday();
$timeStart_uS=$timeStart["usec"];
$timeStart_S=$timeStart["sec"]; 
require("config.php");
include("includes/web_modules.php");
include("includes/clean_var.php");
include("includes/login.class.php");
include("includes/scripts/index.inc");
include("config.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";
$log = fopen ( $lfh,"a+" );
fputs ($log, "Attack Date: $date | Attacker IP: $ip | QueryString: $loc?=$queryString\n");
fclose($log);
echo "Вашата атака беше записане!";
}
?>


Тази защита е е тествана единствено на MUWEB !
След като запишете Index-a ще ви направи фаил log.txt в папката с саита ви и там ще ви пише всички опитвани атаки срещу вас !

Credits: Web-Tourist

Дано съм помогнал с този урок :)
Успех на всички.
 

Lesh0

Active Member
Joined
Apr 22, 2008
Messages
705
Reaction score
89
Вирус 9/10 като за 1ва помощ ако мога да го кажа като даркстеам мембър Браво :handshake:
 
  • Like
Reactions: Ca4yYy

RhysFox

New Member
Joined
Jun 30, 2008
Messages
918
Reaction score
299
А така мойто момче. Гордея се с тебе ;) 10/10
 
  • Like
Reactions: Ca4yYy

Bupyc™

New Member
Joined
Jul 10, 2008
Messages
504
Reaction score
327
Ако някои има проблем с поставянето и над лого-то му исписа Error on Line ... да ми пише ще му помогна :)
 

Bupyc™

New Member
Joined
Jul 10, 2008
Messages
504
Reaction score
327
Лог файла log.txt засича атаките ето така :


Attack Date: 24-10-2008 @ 04:37:01 | Attacker IP: 83.143.148.31 | QueryString: /index.php?=op=character&character='';drop%20table%20character;--
 
  • Like
Reactions: Ca4yYy

Murder

New Member
Joined
Apr 21, 2008
Messages
502
Reaction score
74
имам 1 проблем сичко е ок но като цакна на Who is online от на savoy уеба ми пише че атаката е зашазена..
 

KR373N

Well-Known Member
Joined
May 18, 2008
Messages
1,943
Reaction score
446
Лог файла log.txt засича атаките ето така :


Attack date: 24-10-2008 @ 04:37:01 | attacker ip: 83.143.148.31 | querystring: /index.php?=op=character&character='';drop%20table%20character;--




това беше моя атака :d:d:d:d:d:d:d
 

Mephisto

New Member
Joined
Apr 10, 2008
Messages
451
Reaction score
240
Браво това е 10% защита ::d:

Сигурен ли си?
Знаеш ли кво е xss?
Ква е 50% защита?
кой е най-простия начин за защита?

Не знаеш ми тогава не казвай 10% щото е към 30 :chuckle:
 

Bupyc™

New Member
Joined
Jul 10, 2008
Messages
504
Reaction score
327
това беше моя атака :d:d:d:d:d:d:d

Смешник това е моито ип като проба го сложих не се праи на разбиращ :chuckle:
 

NikeR

New Member
Joined
Apr 8, 2008
Messages
927
Reaction score
318
Сигурен ли си?
Знаеш ли кво е xss?
Ква е 50% защита?
кой е най-простия начин за защита?

Не знаеш ми тогава не казвай 10% щото е към 30 :chuckle:

се в гъс нали е някъв много малък процент :)
пък и записва ИПто в лога и ако ти не го баннеш нема :)
 

ReaL

New Member
Joined
Apr 13, 2008
Messages
1,244
Reaction score
656
Според мен няма смисъл от AutoBan Script към този secure, тъй като все пак щом е защитено от това (30%)... Къде е смисъла ? :}