Проблема: Недостатня фільтрація вхідних даних.
Помилка у версії: всі версії
Ступінь небезпеки: СереднійРучне виправлення:Відкрийте файл:
engine/inc/functions.inc.phpзнайдіть:
function check_xss () {
$url = html_entity_decode(urldecode($_SERVER['QUERY_STRING']));
if ($url) {
if ((strpos($url, '<') !== false) ||
(strpos($url, '>') !== false) ||
(strpos($url, '"') !== false) ||
(strpos($url, './') !== false) ||
(strpos($url, '../') !== false) ||
(strpos($url, ''') !== false) ||
(strpos($url, '.php') !== false)
)
{
if ($_GET['mod'] != "editnews" OR $_GET['action'] != "list") die("Hacking attempt!");
}
}
}
і замініть на:
function check_xss () {
$url = html_entity_decode(urldecode($_SERVER['QUERY_STRING']));
if ($url) {
if ((strpos($url, '<') !== false) ||
(strpos($url, '>') !== false) ||
(strpos($url, '"') !== false) ||
(strpos($url, './') !== false) ||
(strpos($url, '../') !== false) ||
(strpos($url, ''') !== false) ||
(strpos($url, '.php') !== false)
)
{
if ($_GET['mod'] != "editnews" OR $_GET['action'] != "list") die("Hacking attempt!");
}
}
$url = html_entity_decode(urldecode($_SERVER['REQUEST_URI']));
if ($url) {
if ((strpos($url, '<') !== false) ||
(strpos($url, '>') !== false) ||
(strpos($url, '"') !== false) ||
(strpos($url, ''') !== false)
)
{
die("Hacking attempt!");
}
}
}
Відкрийте файл:
engine/modules/functions.phpзнайдіть:
function check_xss () {
$url = html_entity_decode(urldecode($_SERVER['QUERY_STRING']));
if ($url) {
if ((strpos($url, '<') !== false) ||
(strpos($url, '>') !== false) ||
(strpos($url, '"') !== false) ||
(strpos($url, './') !== false) ||
(strpos($url, '../') !== false) ||
(strpos($url, ''') !== false) ||
(strpos($url, '.php') !== false)
)
{
if ($_GET['do'] != "search" OR $_GET['subaction'] != "search") die("Hacking attempt!");
}
}
}
і замініть на:
function check_xss () {
$url = html_entity_decode(urldecode($_SERVER['QUERY_STRING']));
if ($url) {
if ((strpos($url, '<') !== false) ||
(strpos($url, '>') !== false) ||
(strpos($url, '"') !== false) ||
(strpos($url, './') !== false) ||
(strpos($url, '../') !== false) ||
(strpos($url, ''') !== false) ||
(strpos($url, '.php') !== false)
)
{
if ($_GET['do'] != "search" OR $_GET['subaction'] != "search") die("Hacking attempt!");
}
}
$url = html_entity_decode(urldecode($_SERVER['REQUEST_URI']));
if ($url) {
if ((strpos($url, '<') !== false) ||
(strpos($url, '>') !== false) ||
(strpos($url, '"') !== false) ||
(strpos($url, ''') !== false)
)
{
if ($_GET['do'] != "search" OR $_GET['subaction'] != "search") die("Hacking attempt!");
}
}
}
Дистрибутив версії 7.2 оновлений.