Проблема: Проведення SQL ін'єкцій, в разі ігнорування адміністратором сайту повідомлення в адмінпанелі скрипта, про недопустимість включення на сервері небезпечного налаштування register_globals, а також можливість обходу коду безпеки CAPTCHA при реєстрації.
Помилка у версії:9.7 і всі більш ранні версії
Ступінь небезпеки:Високий при використанні включеного налаштування register_globals, відсутній при виконанні рекомендацій по відключенню даного налаштування в налаштуваннях сервера. Встановлення патчу, проте, обов'язкове для всіх, оскільки патч усуває можливий обхід коду безпеки CAPTCHA і інші проблеми.
Для виправлення скачайте і скопіюйте на свій сервер патч: http://www.ooooonline.com/files/dle97_path.zip. Даний патч призначений лише для версії 9.7 скрипта. Дистрибутив версії 9.7 оновлений.
Користувачі, які використовують попередні версії скрипта, повинні внести вручну наступні зміни до файлів скрипта:
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; }
Шановний відвідувачу, Ви увійшли на сайт як незареєстрований користувач. Ми рекомендуємо Вам зареєструватися або увійти на сайт під своїм іменем.