Патчи безопасности

Патчи безопасности

Проблема: Проведение SQL инъекций, в случае игнорирования администратором сайта уведомления в админпанели скрипта, о недопустимости включения на сервере небезопасной настройки register_globals, а также возможность обхода кода безопасности CAPTCHA при регистрации на DLE 7.х-9.6.
Степень опасности: Высокая при использовании включенной настройки register_globals, отсутствует при выполнении рекомендаций по отключению данной настройки в настройках сервера. Установка патча тем не менее обязательна для всех, т.к. патч устраняет возможный обход каптчи и другие проблемы.


Установка:
Для исправления проблемы, вам необходимо внести следующие изменения в файлы скрипта:
1. Открыть engine/modules/sitelogin.php и найти:
$dle_login_hash = "";

Добавить ниже:
$_TIME = time () + ($config['date_adjust'] * 60);

Далее найти:
		if( $member_id['user_id'] ) {

Добавить ниже:
			session_regenerate_id();

Далее найти:
		$member_id = $db->super_query( "SELECT * FROM " . USERPREFIX . "_users WHERE user_id='" . intval( $_COOKIE['dle_user_id'] ) . "'" );

Добавить ниже:
			session_regenerate_id();

2. Открыть engine/init.php и найти:
	if (in_array ( $_POST['dlenewssortby'], $allowed_sort )) {

Заменить на:
	if (in_array($_POST['dlenewssortby'], $allowed_sort) AND stripos($find_sort, "dle_sort_") === 0) {

3. Открыть engine/modules/functions.php и найти:
	global $tpl;

Добавить ниже:
	if (!class_exists('dle_template')) {
	    return;
	}

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