LINUX.ORG.RU
ФорумTalks

Жумла - решето

 , , ,


1

3

Разработчики свободной системы управления web-контентом Joomla опубликовали экстренное обновление 3.4.6, в котором устранена критическая уязвимость, позволяющая выполнить произвольный PHP-код на сервере. Проблема усугубляется тем, что она уже активно эксплуатируется злоумышленниками и исправлена после выявления массовой вредоносной активности на сайтах под управлением Joomla. Всем пользователям Joomla рекомендуется незамедлительно установить обновление и провести полный аудит своих систем.

По данным компании Sucuri в сети зафиксирована интенсивная автоматизированная атака, нацеленная на поражение систем, подверженных указанной уязвимости. После запуска нескольких подставных honeypot-систем, в течение дня на всех из них было зафиксировано более сотни попыток проникновения, поэтому после обновления следует обязательно проанализировать систему на предмет возможного проникновения атакующих. Очень высока вероятность, что система, использующая CMS Joomla, уже находится под контролем злоумышленников.

Проблема проявляется начиная с выпуска Joomla 1.5.0, выпущенного восемь лет назад, и вызвана отсутствием чистки значений параметров сеанса, записываемых в СУБД. Для атаки достаточно отправить запрос к сайту на базе Joomla c установленным определённым образом значением сессионной Cookie. Так как содержимое Cookie в логах обычно не отображается, выявление уже совершённых успешных атак может быть затруднено. Примечательно, что прошлая критическая уязвимость в Joomla была устранена менее двух месяцев назад. http://www.opennet.ru/opennews/art.shtml?num=43521

Проблема проявляется начиная с выпуска Joomla 1.5.0, выпущенного восемь лет назад

И за это время никто не обнаружил эту дыру? А как же опенсорс, аудит сотнями тысяч разных людей и прочее? И эксплуатировать, получается, начали недавно (а то уж кто-нибудь точно понял в чем проблема)?

alozovskoy ★★★★★ ()

А чето я не вижу коммита который пофиксил уязвимость

Deleted ()

Они там что, исполняют данные из сессии что ли?

Deleted ()
Ответ на: комментарий от Deleted

они сессию сериализовали, когда происходит unserialize, то создаются объекты автоматически создаются. Получается что атакующий подставлял нужные ему объекты. Насколько помню, с версии 7 можно указывать, какие именно объекты можно создавать с сериализации, через свойство allowed_classes

kiotoze ★★★★ ()

Как страшно жить, что ни день, то новые дырки не фикшенные годами.

Sparx ★★ ()
Ответ на: комментарий от Deleted

частично этот
https://github.com/PhilETaylor/Joomla1.5.999/commit/95741d8a2bbb92ea3c8aeaa54...

насколько я понял он еще ставил проверки в разных файлах

JSession::checkToken() or jexit(JText::_('JINVALID_TOKEN'));

https://github.com/joomla/joomla-cms/commit/995db72ff4eaa544e38b4da3630b7a1ac...

П.С. с джумлой не знаком, просто интерестно было где-же накосячили)

kiotoze ★★★★ ()
Ответ на: комментарий от alozovskoy

Ну так в винде некоторые дырки вообще десятилетиями не закрываются. Даже когда про них все уже знают. Тут хотя бы закрывают сразу после публикации.

KivApple ★★★★★ ()
Ответ на: комментарий от jori

Чувствую, что да. У нас в течение полугода несколько раз ломали сайты на джумле и рассылали через них спам. Причём эти сайты не популярные (как правило, сайт какого-нибудь одного из многочисленных ООО «Вектор»), так что явно ломали не целенаправленно данный сайт, а бот искал уязвимые сайты по всем интернетам.

А может, это другая уязвимость.

te111011010 ()
Последнее исправление: te111011010 (всего исправлений: 2)
Ответ на: комментарий от kiotoze

частично этот

ну я его смотрел и не допер вкаком месте там срабатывала десериализация (судя по примеру с опеннетам там иньъектился код из сериализованного в юзерагент пхп)

Deleted ()

поэтому после обновления следует обязательно проанализировать систему на предмет возможного проникновения атакующих

что практически невозможно, поэтому нужно полностью переустанавливать ОС и переразворачивать софт =))))

stevejobs ★★★★☆ ()
Ответ на: комментарий от alozovskoy

аудит сотнями тысяч разных людей

Кода очень много. Зачастую аудит критически важных мест просто некому делать. Не сотни тысяч, а единицы в лучшем случае.

Deleted ()

Колумб, перелогиньтесь.

svr4 ()
Ответ на: комментарий от Deleted

сериализация не здесь
здесь просто идет запись в переменную, которая потом сериализуется где-то

там было

if( in_array( 'fix_browser', $this->_security ) && isset( $_SERVER['HTTP_USER_AGENT'] ) )

а это значит, что пользователь мог передать любое значение агента, к примеру
php > echo serialize(new stdClass());
O:8:"stdClass":0:{} // вот эту строку подставляем как юзер агент

и когда в следующий раз пользователь обновляет страницу, данные из сессии читаются и клас stdClass автоматически создается.
понятное дело что stdClass безвредный, а создавали он совсем другие объекты)

kiotoze ★★★★ ()

В msf PoC появился, если кому-то интересно.

jori ()

Не раз наталкивался на говно-хостеров которые предлагают моментальную автоустановку CMS древних версий.

Совпадение? Не думаю.

mandala ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.