PDA

Просмотр полной версии : Внимание! Если ваш сайт сделан на Друпал...



Val_Ery
22.03.2018, 07:49
Друпал Security Team предупреждает:
28 марта между 18-00 и 19-30 по UTC (с 21-00 до 22-30 по Москве) будут выпущены security release для всех версий Друпал 7.x, 8.3.x, 8.4.x, и 8.5.x.

Не смотря на отсутствие поддержки для Друпал 8.3 и 8.4, как заявляет команда,

учитывая потенциальную серьезность этой проблемы, мы предоставляем версии 8.3.x и 8.4.x

оригинал: given the potential severity of this issue, we /are/ providing 8.3.x and 8.4.x releases that includes the fix for sites which have not yet had a chance to update to 8.5.0

Также группа безопасности извещает, что серьезность проблем с ядром системы не позволяет им публиковать другую информацию об обнаруженных уязвимостях. И предлагает выделить время в означенный промежуток (28 марта с 18-00 и 19-30 по UTC), чтобы провести обновление своих сайтов/порталов/форумов и т.п.

Предполагается, что в течении нескольких часов после выпуска информации об устранении, зараза начнет массовое распространение. В оригинальном сообщении от группы безопасности это выглядело так:

exploits /might/ be developed within hours or days

Заметьте, слову "могут" (might) отделено от "быть" (be). То есть, утверждается, что будут развиваться... Поэтому следите за дополнительной информацией на сайте drupal.org и отслеживайте обновления в админ-панелях ваших сайтов. Помните: не обновленный в течении 7 часов после выхода релиза безопасности сайт можно считать скомпроментированным...

Источник: https://www.drupal.org/psa-2018-001

Val_Ery
28.03.2018, 23:00
Ну, как и обещали, выпустили релизы безопасности для
1) поддерживаемых версий Друпал 7.58 и 8.5.1
2) ранних версий Восьмерки: 8.3.9 и 8.4.6
Релизы можно забрать здесь: https://www.drupal.org/project/drupal/releases/

Более ранние версии Друпал (с номером, меньшим 8.3) более не поддерживаются. Для Друпал версии 6 "цикл жизни" закончился несколько лет назад. Поэтому есть повод проапгрейдить свой сайт :)

О релизе:
Project: Drupal core
Date: 2018-March-28
Security risk: Highly critical 21∕25 AC:None/A:None/CI:All/II:All/E:Theoretical/TD:Default
Vulnerability: Remote Code Execution
Description: CVE: CVE-2018-7600

Риски разработчики оценивают как 21/25, высоко критичные. Обновление закрывает возможность удаленного выполнения кода. Разработчики признали - данная "дыра" существовала во многих подсистемах Друпал. Что может позволить злоумышленникам проводить атаки на Друпал-сайты по многим направлениям. В результате Ваш сайт может быть полностью скомпрометирован.

A remote code execution vulnerability exists within multiple subsystems of Drupal 7.x and 8.x. This potentially allows attackers to exploit multiple attack vectors on a Drupal site, which could result in the site being completely compromised.

Источник: https://www.drupal.org/SA-CORE-2018-002
Минифак по этому обновлению: https://groups.drupal.org/security/faq-2018-002
Обновленные релизы: https://www.drupal.org/project/drupal/releases/

olejah
29.03.2018, 11:10
Для Друпал версии 6 "цикл жизни" закончился несколько лет назад. Поэтому есть повод проапгрейдить свой сайт

Так выпустили же тоже патч для нее https://groups.drupal.org/security/faq-2018-002
Или это просто общая рекомендация?

Val_Ery
29.03.2018, 19:26
Так выпустили же тоже патч для нее https://groups.drupal.org/security/faq-2018-002
Да... патча есть - https://www.drupal.org/project/d6lts/issues/2955130#comment-12548130
Судя по благодарностям - работает!

P.S. Ссылку указал потому, что здесь (https://cgit.drupalcode.org/d6lts/) об этом патче ни слова. Спасибо!

olejah
24.04.2018, 11:06
Val_Ery, разработчики выпускают дополнительные патчи завтра - https://www.drupal.org/psa-2018-003

olejah
26.04.2018, 07:44
Выпустили -- https://www.drupal.org/sa-core-2018-004

Val_Ery
26.04.2018, 07:52
Друпал колбасит - только в путь :)

P.S. Может, кому пригодится...
Мне кажется не совсем удобным обновление ядра Друпал посредством ftp-клиентов или через файловый менеджер хостера. Поэтому когда-то написал маленький bash-скрипт, который всё делает автоматом. Ваша задача - подключиться по ssh и запустить скрипт.
Что он делает:
1. Создает каталог upgraded, в который скачивает последнюю версию Друпал
2. Создает бекап файловой системы сайта
3. Упаковывает его в архив tar.gz
4. Создает файл изменений diff, в котором можно посмотреть, что же изменили в новом ядре по сравнению со старым
5. В конце предлагает запустить update.php из адресной строки


#!/bin/bash

if ! [[ -d upgraded ]] ; then
mkdir upgraded && cd upgraded
else
cd upgraded
fi

wget $(wget -O- -q https://updates.drupal.org/release-history/drupal/7.x | grep -oPm1 "(?<=<download_link>)[^<]+" | sort -V | grep -v 'dev' | tail -1) && tar -zxf drupal*.tar.gz --exclude=sites && rm -r drupal*.tar.gz && cd ../

read -p "Enter a Drupal-site folder name: " sitename
if [[ -d $sitename ]] ; then
echo "The directory $sitename exists"
echo ""
echo "Creating $sitename backup in upgraded folder"
echo "**********************************************"
cp -aRp "$sitename" upgraded && tar -cf - -C "$sitename" . | gzip -c > upgraded/"$sitename".tar.gz
echo "Backup "$sitename" created, see $sitename.tar.gz file"
else
echo "The directory $sitename does not exist. Try again..."
rm -rf upgraded/drupal* && exit 0
fi

echo ""
echo "Comparing $sitename with original"
echo "*********************************"
diff -ur '--exclude=sites' upgraded/drupal* "$sitename" > upgraded/compare-"$sitename"-`date +%F`.diff
echo "See result in compare-$sitename.diff file"

echo ""
echo "Updating $sitename core"
echo "***********************"
cp -Rf upgraded/drupal-*/* "$sitename" && rm -rf upgraded/drupal* && rm -rf upgraded/"$sitename"
echo "Update '$sitename is completed. Now run update.php script from your browser"

# Document Root (see web-server *.conf file), may be /var/www or /var/www/html, or /htdocs
# - site1
# - site2
# - ... etc. ...
# - drupal_update.sh
# "site1", "site2" its "a Drupal-site folder name"



Необходимо создать на хостинге файл, например, drupal_upgrade.sh, вставить в него этот код. Сохранить файл и сделать его исполняемым.
Необходимые условия:
1. Сервер, на котором размещен ваш сайт, должен использовать любую линукс-подобную операционную систему. Для виртуальных хостингов так оно и есть, практически всегда.
2. Файл должен располагаться на одном уровне с каталогом, содержащим файлы сайта. Например, если файлы сайта лежат в папке public_html, то скрипт необходимо разместить рядом с папкой public_html.
3. Именно это название каталога (public_html) скрипт требует ввести, когда начинает работать. Я сделал так потому, что когда-то приходилось обновлять Друпал-сайты пачками

Из известных проблем - пока две:
1. Когда-то в один прекрасный момент Друпаловцы что-то поменяли там, где хранились их ядра. Поэтому wget забирал не только последнюю версию ядра, но и предыдущую... Исправил.
2. Когда скрипт отрабатывает, он создает копию файловой системы сайта. Поэтому при удалении старых и ненужных файлов возможны проблемы, связанные с правами доступа. Например, если у каких-либо файлов были установлены права типа 400, то скрипт удалить их не сможет. На обновление Друпал это НЕ влияет, сами не удаляемые файлы можно позднее удалить через файловый менеджер на хостинге.

На моё ИМХО, так обновлять удобнее. И главное - быстрее: вся процедура, включая вход по ssh, ввод названия каталога и само обновление, происходит в течении пары минут.