Без рубрики

Проверка правильности alt_name в URL новости

Проблема: Недостаточная фильтрация входящих данных.

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

Степень опасности(SEO): Высокая

Автор фикса: RooTM

Проблема: Недостаточная фильтрация входящих данных.

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

Степень опасности(SEO): Высокая

Автор фикса: RooTM

Для исправления откройте файл engine/modules/show.full.php и найдите:

$news_found = TRUE;

ниже добавьте один из вариантов:
отдает 404 ошибку

if($config[’allow_alt_url’] == «yes»){

preg_match( ‘/’.$row[‘id’].’-(.*?).html/is’ , $_SERVER[«REQUEST_URI»] , $parse_alt_name );

if($row[‘alt_name’] != trim($parse_alt_name[1]) )$news_found = FALSE; if( !$news_found ) break;

}

делает редирект на правильный URL

if($config[‘allow_alt_url’] == «yes»){

preg_match( ‘/’.$row[‘id’].’-(.*?).html/is’ , $_SERVER[«REQUEST_URI»] , $parse_alt_name );

if( $row[‘alt_name’] != trim( $parse_alt_name[1] ) ){

$true_url = str_replace( $parse_alt_name[1] , $row[‘alt_name’] , $_SERVER[«REQUEST_URI»] );

header(‘HTTP/1.1 301 Moved Permanently’);
@header ( ‘Location: ‘ . $true_url );
exit;

}}