8Dle
Авторизация

Обновление безопасности скрипта

Обновление безопасности скрипта

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

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

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

Для исправления необходимо изменить файл админ панели(admin.php)!
найти:
require_once (ENGINE_DIR.'/inc/init.php');

ниже добавить:
if($is_loged_in AND $_SERVER['HTTP_REFERER'] == '' AND !$_SESSION['dle_name'] ) {

$is_loged_in = FALSE;

} elseif ($is_loged_in AND $_SERVER['HTTP_REFERER'] != '' AND strpos( strtolower($_SERVER['HTTP_REFERER']), $config['admin_path'] ) === false) {

$allow_mod = array("editusers", "editnews", "iptools", "blockip");
$allow_action = array("edituser", "editnews");

if ($config['extra_login']) $allow_mod[] = "";

if (in_array($_GET['mod'], $allow_mod)) {

if (($_GET['action'] AND !in_array($_GET['action'], $allow_action)) OR $_GET['ifdelete']) $is_loged_in = FALSE;

} else $is_loged_in = FALSE;

} elseif ($is_loged_in AND strpos( strtolower($_SERVER['HTTP_REFERER']), "mod=editnews" ) !== false) {

if (@strpos( $_SERVER['HTTP_REFERER'], $_GET['id'] ) === false AND count($_GET) > 2 AND $_GET['mod'] != "editnews") $is_loged_in = FALSE;

}

if (!$is_loged_in) {

@session_destroy();
@session_unset();

}

Жмите на Кнопу ниже, или подписывайтесь!


Читайте также
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


Dle это движок который изначально проектировался для создания новостных сайтов, но по мере своего развития движка значительно расширил свою функциональность и стал универсальным средством разработки и сопровождения сайтов и блогов различной направленности и тематики. По сравнению с другими бесплатными (и некоторыми платными) CMS системами движок dle обладает довольно обширными возможности.

Авторизация