Недостаточная фильтрация в модуле Переходы от 6.09.2011

Ошибка в версии: все версии

Степень опасности: ВысокаяОшибка в версии: все версии


Степень опасности: Высокая Для исправления откройте файл engine/modules/referer.php и найдите:
if(preg_match(«/[<][/a-zA-Z]+(.*?)[>]/», urldecode(rawurldecode($http_referer)))) {
die ( «Переход заблокирован, перенаправление:<br /><br />Пожалуйста, нажмите <a href=»{$request_uri}»>сюда</a>.» );
}

Ниже добавьте:
if(preg_match(«/[<][/a-zA-Z]+(.*?)[>]/», urldecode(rawurldecode($request_uri)))) {
die ( «Переход заблокирован, перенаправление:<br /><br />Пожалуйста, нажмите <a href=»{$config[‘http_home_url’]}»>сюда</a>.» );
}

Немного ниже найдите:

if (checkurl($http_referer) != «false») {

ВЫШЕ добавьте:
$request_uri = $db->safesql( trim( htmlspecialchars( strip_tags( $request_uri ) ) ) );