Недостаточная фильтрация данных

Недостаточная фильтрация данных

Проблема: Недостаточная фильтрация данных на DLE 7.х-11.2.
Степень опасности: Высокая

Установка:
1. Для исправления следует открыть engine/go.php и найти:
$url = @str_replace ( "&", "&", $url );

Добавить ниже:
$url = htmlspecialchars( $url, ENT_QUOTES, $config['charset'] );
$url = str_replace ( "&", "&", $url );

2. Открыть engine/ajax/typograf.php и найти:
$txt = trim( convert_unicode( $_POST['txt'], $config['charset'] ) );

Добавить ниже:
require_once ENGINE_DIR . '/classes/parse.class.php';
$parse = new ParseFilter();
$txt = $parse->process( $txt );
$txt = preg_replace( "/javascript:/i", "jаvascript:", $txt );
$txt = preg_replace( "/data:/i", "dаta:", $txt );

Готово!
 
Версия DLE: 7.х-11.2
Автор: celsoft
Источник
Информация
Посетители, находящиеся в группе Гость, не могут оставлять комментарии к данной публикации.