{% else-1 %}
XSS это межсайтовый скриптинг. Хакер формирует специальный URL, благодаря которому он сможет в дальнейшем залить эксплоит на ваш сервер или выполнить какой-нибудь вредоносный скрипт.
Например ваш сайт работает на PHP, а страница представляет из себя информацию об аккаунте пользователя. Самый частый URL в таких случаях - такой: sait.ru/?p=profile&user=Vasja

В таком URL нет ничего плохого, но самое уязвимое место может скрываться в самом коде страницы, например:
[red]<?php

echo "Информация о профиле: " . $_GET['user'];

?>[/red]

Как видно из примера, данные GET не фильтруются и выводятся сразу на страницу. Немного подумав для примера мы можем модифицировать URL до вот такого:

sait.ru/?p=profile&user=Vasja<b> - hello</b>

Выполнив такой код мы получим сообщение на странице рядом с именем участника.

Это не самое страшное, попробуем теперь так:

sait.ru/?p=profile&user=Vasja<script>alert(0); </script>

А это уже опасно, теперь хакер воспользуется вашей дырой и сможет сделать все что захочет.

Вторичный параметр $sql предназнчаен для защиты SQL-инъекций. Его нужно ставить в 1, когда вы фильтруете данные для SQL запроса, например:
SELECT... LIMIT 0, _filter($_GET['limit'],1)

Вот так вот просто вы сможете залатать XSS дыры своего сайта. Удачи! *
Как же защитится от XSS атак? Ответ очень прост, нужно элементарно фильтровать данные - ВСЕ данные получаемые POST или GET.

Вот например функция на PHP, которая поможет Вам:

                        
<?php
// Защита от XSS

function _filter( $var , $sql = 0) {

$var = strip_tags($var);
$var=str_replace ("n"," ", $var);
$var=str_replace ("r","", $var);
$var = htmlentities($var);
if ( $sql == 1) {
$var = mysql_real_escape_string($var);
}
return $var;
}
?>
Использование:
<?php echo _filter($_GET['value']); ?>
-2 64 0
0

Нет фото
Nefest * 12.18
• 12 май 2016, 16:18


*

0

Нет фото
Anvar * 3.33
• 6 май 2016, 11:47


phpbb3.0 использует функцию http://v673.com/phpbb3/request_var/ ни кто ещё не сломал.

0

Нет фото
coreo * 0.5
• 5 май 2016, 11:38


баян

0

Нет фото
• 30 апр 2016, 03:54


так что береги дыру* а то хакер отжимкает

0

Нет фото
Closed * 0.1
• 29 апр 2016, 15:27


Кто $_GET вот так выводит то