Все для DataLife Engine / Все для DLE / Полезные статьи / Взлом DLE 11.2 и ниже (степень опасность высокая)

Взлом DLE 11.2 и ниже (степень опасность высокая)



Внимание! В DataLife Engine найдена довольно серьезная уязвимость в версиях DLE 11.2 и ниже. Взлом DLE 11.2 и ниже (степень опасность высокая), позволяющая получить права админа на вашем сайте. Недостаточная фильтрация данных на DLE 11.2 и ниже, степень опасность определена, как высокая. При это разработчики вместо, того чтобы создать новую тему поступили подленько, вставили код в старой статье. Многие могли бы пропустить и по сути потерять данные сайта, где злоумышленник может удалять статьи и пользователей, ставить им рейтинги другие вещи, которые разрешены у вас на сайте администрации.



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

Ошибка в версии: DataLife Engine 11.2 и ниже

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

Для исправления откройте файл: /engine/go.php и найдите:

$url = @str_replace ( "&", "&", $url );



ниже добавьте:

$url = htmlspecialchars( $url, ENT_QUOTES, $config['charset'] );
$url = str_replace ( "&", "&", $url );



Далее откройте файл: /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 );


Советуем сделать ещё, как описано здесь, вот так выглядела статья изначально.


Но, как только появилась уязвимость в апреле 2017, разработчики к своего стыду просто дописали код в новость марта шестого числа (06.2017)
Внимание! У Вас нет прав для просмотра скрытого текста.


Сложно мыло сообщить о новой уязвимости, подобные действия могут запутать людей, думая что они уже сделали защиту пропустить строчку ниже.
  • 100

Комментарии 5

ndis4 от 9 декабря 2019 20:19
Этот патч уже давно обходится. На всех версиях до 12.

Не спама ради вот ссылка на статью:

Внимание! У Вас нет прав для просмотра скрытого текста.
dle9.com от 25 апреля 2017 11:14
Цитата: nalex
Для версии ДЛЕ 11.3 это актуально?

нет, на 11.3 уже установлен патч, можете сами проверить и посмотреть
nalex от 25 апреля 2017 10:55
Для версии ДЛЕ 11.3 это актуально?
dle9.com от 11 апреля 2017 06:18
Цитата: 777sharpey777
Что это за иероглифы?
$txt = preg_replace( "/javascript:/i", "[u]jаvascript:[/u]&am
p;#34;, $txt );

чтобы JS-скрипты не сработали на HTML странице сайта при добавления данного слова, их в движке DLE преобразуют с "jаvascript": в такой код
$txt [u]jаvascript:[/u]&am
p;#34;, $txt );
добавляя теги оформления. Для защиты от взлома при использовании кода скрипта.
777sharpey777 от 11 апреля 2017 00:44
Что это за иероглифы?
$txt = preg_replace( "/javascript:/i", "[u]jаvascript:[/u]", $txt );
Добавить комментарий

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent