Перейти к содержимому


Фотография
* * * * * 1 Голосов

Патч безопасности для DLE 9.7 и ниже

патч заплатка dle

  • Авторизуйтесь для ответа в теме
В этой теме нет ответов

#1 Оффлайн   realteam

    Пользователь


  • Пользователи
  • Репутация
    15
    • Cообщений: 33
    • Форум:3.3.х
    • Город:Москва

Отправлено 23 Ноябрь 2012 - 21:21

Возможно у кого-то есть данная CMS, но как правило, отсылают сообщения только тем у кого лицензия, так вот делюсь новой заплаткой для DLE.

Проблема:

Проведение SQL инъекций, в случае игнорирования администратором сайта уведомления в админпанели скрипта, о недопустимости включения на сервере небезопасной настройки register_globals, а также возможность обхода кода безопасности CAPTCHA при регистрации.

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

9.7 и все более ранние версии

Степень опасности:

Высокая при использовании включенной настройки register_globals, отсутствует при выполнении рекомендаций по отключению данной настройки в настройках сервера. Установка патча тем не менее обязательна для всех, т.к. патч устраняет возможный обход каптчи и другие проблемы.

Для исправления скачайте и скопируйте на свой сервер патч: Прикрепленный файл  dle97_path.zip   15,92К    скачиваний 5, данный патч предназначен только для версии 9.7 скрипта. Дистрибутив версии 9.7 обновлен.

Пользователи, использующие более ранние версии скрипта должны внести вручную следующие изменения в файлы скрипта:
  • Откройте файл 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();
  • Откройте файл engine/init.php и найдите:
if (in_array ( $_POST['dlenewssortby'], $allowed_sort )) {

Замените на:
if (in_array($_POST['dlenewssortby'], $allowed_sort) AND stripos($find_sort, "dle_sort_") === 0) {
  • Откройте файл engine/modules/functions.php и найдите:
global $tpl;

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

  • 2





Темы с аналогичными тегами: патч заплатка, dle