Новости Joomla

‼️ 👩‍💻 Обновление безопасности для Tassos Framework!

‼️ 👩‍💻 Обновление безопасности для Tassos Framework!

7 января 2026 года греческому разработчику Тассосу Мариносу сообщили об уязвимости в системном плагине Tassos Framework, который входит в состав его расширений для Joomla.

⚠️ Проблема затрагивает следующие расширения:
- Convert Forms - конструктор форм обратной связи для Joomla
- EngageBox - конструктор всплывающих окон для Joomla
- Google Structured Data - пакет плагинов микроразметки для Joomla
- Advanced Custom Fields - пакет плагинов пользовательских полей (видео-сервисы, карты и иже с ними)
- Smile Pack - пакет расширений
- MailChimp Auto-Subscribe

Незамедлительно была проведена полная внутренняя проверка кода, внедрены дополнительные меры проверки и повышения безопасности, а также выпущены исправленные версии всех затронутых расширений. Проблема полностью решена.

👉 Суть уязвимости.
Уязвимость заключалась в том, как плагин Tassos Framework обрабатывал определенные AJAX-запросы через com_ajaxточку входа Joomla. При определенных условиях внутренняя функциональность фреймворка могла быть вызвана без надлежащих ограничений.

В худшем случае это могло позволить неавторизованному злоумышленнику читать файлы, доступные веб-серверу. Это также могло позволить удалять файлы с сервера при выполнении определенных условий.

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

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

Немедленно обновите расширения до безопасных версий (Joomla 4/5/6 | Joomla 3):
- Convert Forms - v5.1.1 / v.4.1.1
- EngageBox - v.7.1.1 / v,6,3,9
- Google Structured Data - v.6.1.1 / v.5.6.9
- Advanced Custom Fields - v.3.1.1 / v.2.8.10
- Smile Pack - v.2.1.1 / v.1.2.4.
- MailChimp Auto-Subscribe - v.5.1.1+ / v.5.0.4

Все указанные версии включают в себя релиз безопасности плагина Tassos Framework System Plugin v6.0.62.

Если у вас установлено несколько расширений Tassos, достаточно обновить только одно, чтобы применить патч. Однако всегда рекомендуется обновлять все расширения.

@joomlafeed

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

👩‍💻 Joomla включена в программу Google Summer of Code 2026.

Google Summer of Code (GSoC) - программа компании Google, которая позволяет участникам программы под руководством опытных наставников писать код для организаций, занимающейся открытым исходным кодом. Joomla принимает участие в этой программе не в первый раз и в 2026 году снова включена в список GSoC. Для программы утверждается список "идей", воплотить которые должны участники под руководством наставников.

Проекты Joomla в рамках программы GSoC 2026.

Проект I: Ajax-бэкенд.
- Действия в административной панели без необходимости обновлять страницу.
- Автоматическое сохранение содержимого во время редактирования.
- Расширенный фильтр - поиск и фильтрация по пользовательским полям.

Проект II: Автоматизация рабочих процессов (workflow + task scheduler).
Joomla имеет функцию процессов и планировщика задач. Теперь эти две функции следует объединить, чтобы пользователь мог настраивать назначенные рабочие процессы таким образом, чтобы переходы выполнялись автоматически, с возможностью точного определения времени. Должна быть возможность создавать циклы или прямые запланированные рабочие процессы. Предполагается, что интерфейс должен учитывать хороший пользовательский опыт, удобство использования и современные стандарты доступности. Ожидается, что будет добавлен интерфейс для управления процессами и их расписанием на страницах категорий и материалов. Так же ожидается, что сторонние компоненты также смогут воспользоваться этим функционалом.

Проект III: Мультикатегории.
В настоящее время Joomla! не позволяет назначать один элемент нескольким категориям. Хотя система тегов часто используется в качестве замены, существует острая потребность в нативной поддержке нескольких категорий, чтобы привести Joomla! в соответствие с другими современными системами управления контентом.

Проект IV: Обучение с подкреплением на основе отзывов переводчиков.
Joomla собирается использовать автоматический перевод документации. В каждом языке есть свои специфические слова, характерные для Joomla. Предполагается обучать языковые модели, используя обратную связь от переводчиков, чтобы постоянно улучшать качество переводов и учитывать специфические языковые особенности Joomla.

Принять участие GSoC 2026
Подробнее о проектах Joomla GSoC 2026
Чат GSoC в Mattermost (международное сообщество Joomla)

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

0 Пользователей и 1 Гость просматривают эту тему.
  • 55 Ответов
  • 8475 Просмотров
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
если у вас блог то да
а если что то иное портал доска или магазин то на четверке еще нет необходимого инструментария
Причем тут блог? Там вообще не важно что у вас, дыра в самой системе
--
UPD: А я понял, на 4ку не удобно переходить?
Перенесу ВАШУ joomla на версию 4 за мани))
« Последнее редактирование: 16.10.2021, 15:46:01 от SalityGEN »
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
В этих версиях обнаружены RCE (произвольное выполнение кода)
Приведу не критичное доказательство
И ?
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
И ?
Я критичное приводить здесь не буду, в целях безопасности.
А то что показано на скринах, простым языком, в логи попала запись о выходе из админки пользователя который никогда туда не заходил, это благодаря токену который дается во вьюхе которую я не должен был увидеть.
Это всего лишь самое начало, дальше раскрутили это в RCE, создали админа этим багом, поместили его в группу этим багом, зашли в админку, создали файл php с шеллом.
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
Попробуйте сами:
1) Разлогиньтесь
2) перейдите по ссылке: http://ваш_домен/administrator/index.php?option=com_media&folder=&format
3) Нажмите кнопку выйти
4) Залогиньтесь в админку как обычно, и посмотрите на логи
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Не верю, иначе уже давно бы с помощью AJAX взломали бы все Joomla
Цитировать
Токены используются для защиты форм от спамовых атак. Однажды токен
был сгенерирован, система проверит почтовый запрос, чтобы узнать, он присутствует, в противном случае он сделает сеанс недействительным.
Код
public static function getFormToken($forceNew = false)
{
$user    = \JFactory::getUser();
$session = \JFactory::getSession();

return ApplicationHelper::getHash($user->get('id', 0) . $session->getToken($forceNew));
}
« Последнее редактирование: 16.10.2021, 16:22:54 от draff »
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
Не верю, иначе уже давно бы с помощью AJAX взломали бы все Joomla
ну 0day не так часто находят, осталось подождать когда на эту ветку наткнутся заинтересованные люди.
И кстати, лучшая компрометация сервера это та компрометация которой не видно, все может уже произошло, но очень очень тихо)
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
в общем всем "спокойной ночи"  ;D
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
ну 0day не так часто находят, осталось подождать когда на эту ветку наткнутся заинтересованные люди.
Даже Google уже знает
Код
&format=raw&'. JUtility::getToken().'=1'
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
Не верю, иначе уже давно бы с помощью AJAX взломали бы все Joomla
Код
public static function getFormToken($forceNew = false)
{
$user    = \JFactory::getUser();
$session = \JFactory::getSession();

return ApplicationHelper::getHash($user->get('id', 0). $session->getToken($forceNew));
}
Токен это одно из составляющих для атаки, суть в том что в логи попадает и не только
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
Даже Google уже знает
Код
&format=raw&'. JUtility::getToken().'=1'

Ответил в лс
*

ProtectYourSite

  • Живу я здесь
  • 2368
  • 139 / 4
  • Безопасность вебсайтов
Подпишусь, надо будет на днях проверить?
Главный вопрос, откуда берется токен?
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
Есть быстрофикс!

Запретите этот параметр GET запроса
/administrator/index.php?option=com_media&folder=&format
На какое то время поможет прикрыть форточку, но все таки задумайтесь над обновлением, по мимо этого бага там еще и роутинг кривой
« Последнее редактирование: 16.10.2021, 18:30:23 от SalityGEN »
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
В .htaccess

После строки
RewriteEngine On

Прописать вот это
RewriteCond %{QUERY_STRING} format [NC]
RewriteRule ^.*$ - [R=404,L]
« Последнее редактирование: 16.10.2021, 18:25:34 от SalityGEN »
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
В com_media отдает 403, но почему форма выводится, не искал .
Код
// Access check.
if (!$user->authorise('core.manage', 'com_media') && (!$asset || (!$user->authorise('core.edit', $asset)
&& !$user->authorise('core.create', $asset)
&& count($user->getAuthorisedCategories($asset, 'core.create')) == 0)
&& !($user->id == $author && $user->authorise('core.edit.own', $asset))))
{
throw new JAccessExceptionNotallowed(JText::_('JERROR_ALERTNOAUTHOR'), 403);
}
Исправить , чтобы не подключало лишние плагины, строка 1007
Код
if( empty($parameters['username']) ) {
return false;
}
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
товарищи, объясните, плиз, для чайников, кому стоит бояться и чего делать?
эта дыра на всех действует или только для сайтов, в которых есть несколько юзеров с разными правами? т.е. баг с повышением прав?
и как фиксить, если не через htaccess (просто format часто используется в скриптах, например, чтобы получать содержимое страницы)
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
В com_media отдает 403, но почему форма выводится, не искал .
Код
// Access check.
if (!$user->authorise('core.manage', 'com_media') && (!$asset || (!$user->authorise('core.edit', $asset)
&& !$user->authorise('core.create', $asset)
&& count($user->getAuthorisedCategories($asset, 'core.create')) == 0)
&& !($user->id == $author && $user->authorise('core.edit.own', $asset))))
{
throw new JAccessExceptionNotallowed(JText::_('JERROR_ALERTNOAUTHOR'), 403);
}
Исправить , чтобы не подключало лишние плагины, строка 1007
Код
if( empty($parameters['username']) ) {
return false;
}
com_media был для примера, он не причем! подойдет любой com_
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
com_media был для примера, он не причем! подойдет любой com_
Так проверяйте на любом. Я дал решение, не нравится не применяйте .
Будете ли Вы переходить с Joomla 3.x на Joomla 4?
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
RewriteCond %{QUERY_STRING} format [NC]
RewriteRule ^.*$ - [R=404,L]
Тогда уж
Код
RewriteCond %{QUERY_STRING} &format [NC]
RewriteRule ^.*$ - [R=404,L]
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
, объясните, пожалуйста, для чайников, кому стоит бояться и чего делать?
трабл в плагине user/joomla , нужно чтобы возвращал false , is true
   public function onUserLogout($user, $options = array())
   {
      $my      = Factory::getUser();
      $session = Factory::getSession();

      // Make sure we're a valid user first
      if ($user['id'] == 0 && !$my->get('tmp_user'))
      {
         return true;
      }
Чтобы потом не срабатывал код, откуда наверно и пишутся логи
      
Код
// OK, the credentials are built. Lets fire the onLogout event.
$results = $this->triggerEvent('onUserLogout', array($parameters, $options));

// Check if any of the plugins failed. If none did, success.
if (!in_array(false, $results, true))
{
$options['username'] = $user->get('username');
$this->triggerEvent('onUserAfterLogout', array($options));

return true;
}
Мое решение исключает подключение в плагины.
Будете ли Вы переходить с Joomla 3.x на Joomla 4?
« Последнее редактирование: 17.10.2021, 16:45:13 от draff »
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
У нас на форуме есть люди @Progreccor которые считают что я развожу истерику, считаю минус не заслуженным, и однажды, я уберу его не зарепортив баг который найдется и на этом форуме.
« Последнее редактирование: 16.10.2021, 20:14:07 от SalityGEN »
*

b2z

  • Глобальный модератор
  • 7288
  • 778 / 0
  • Разраблю понемногу
Вместо того, чтобы публично обсуждать уязвимость, лучше отправить команде безопасности Joomla сообщение о найденной уязвимости:

https://developer.joomla.org/security/contact-the-team.html

Это наиболее верный и корректный путь в мире программного обеспечения.
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
обсуждать уязвимость,
Смотрите мой пост выше Будете ли Вы переходить с Joomla 3.x на Joomla 4?
Вспомните сколько было вопросов, что в админке два админа светятся .
*

setitle

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Есть быстрофикс!

Запретите этот параметр GET запроса
/administrator/index.php?option=com_media&folder=&format
На какое то время поможет прикрыть форточку, но все таки задумайтесь над обновлением, по мимо этого бага там еще и роутинг кривой
В чем проблема поставить пароль на папку administrator?? Да еще и по белому списку IP. Никто лишний не будет ломиться и не страшны никакие уязвимости.
в корне хостинга
<Files .htpasswd>
   deny from all
</Files>
и файл с паролем.
----
в папке administrator
    <Files index.php>
    order deny,allow
    deny from all
    #паша
   allow from 199.0.99.12
   #маша
   allow from x.x.x.x
   #илья
   allow from x.x.x.x/x
   #михаил
   allow from x.x.x.x
   #обама
   allow from x.x.x.x
    </files>
   
AuthType Basic 
AuthName "Private zone. Only for administrator!"
AuthUserFile      /var/www/xxxxxx/data/account_name/.htpasswd 
require user admin root
-------------
ну Google подробнее расскажет.
и все. пусть хоть заломятся. даже если пароль сломают, то IP точно не подберут :)))
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
В чем проблема поставить пароль на папку administrator?? Да еще и по белому списку IP. Никто лишний не будет ломиться и не страшны никакие уязвимости.
в корне хостинга
<Files .htpasswd>
   deny from all
</Files>
и файл с паролем.
----
в папке administrator
    <Files index.php>
    order deny,allow
    deny from all
    #паша
   allow from 199.0.99.12
   #маша
   allow from x.x.x.x
   #илья
   allow from x.x.x.x/x
   #михаил
   allow from x.x.x.x
   #обама
   allow from x.x.x.x
    </files>
   
AuthType Basic 
AuthName "Private zone. Only for administrator!"
AuthUserFile      /var/www/xxxxxx/data/account_name/.htpasswd 
require user admin root
-------------
ну Google подробнее расскажет.
и все. пусть хоть заломятся. даже если пароль сломают, то IP точно не подберут :)))
Можно, но не у всех может оказаться апач нужной версии, в некоторых версиях есть атака на http basic auth
Вроде в 2.18.49 - 2.18.50 версиях. А так да, тоже норм вариант.
« Последнее редактирование: 17.10.2021, 23:08:25 от SalityGEN »
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Можно, но не у всех может оказаться апач нужной версии, в некоторых версиях есть атака на http basic auth
Применение тактики запугивания манюпаса набором из античата .
SSL в помощь .
*

SalityGEN

  • Захожу иногда
  • 209
  • 7 / 1
  • Делаю мир лучше
Применение тактики запугивания манюпаса набором из античата .
SSL в помощь .
Да, с SSL эти баги на апач становятся еще интереснее   ;D
Я никого не запугиваю а призываю обновляться, и разрабатывать свои проекты с учетом перехода на обновления.
Все обновы окружения выходят не только ради каких то новых плюшек, там еще и дыры латают.
Кстати могу провести аудит безопасности ваших проектов. (нужен только домен)
--
Информация для тех, кто использует сторонние компоненты и не может обновиться:
Вы сознательно установили софт который не знаете как работает получив при этом технический долг и теперь все зависит от сторонних разработчиков.
« Последнее редактирование: 18.10.2021, 11:37:02 от SalityGEN »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Дублировать скроллер горизонтальной таблицы Joomla 5

Автор Sleepwalker

Ответов: 0
Просмотров: 128
Последний ответ 17.02.2026, 13:19:54
от Sleepwalker
Не работает сайт при переносе с сервера на хостинг Joomla 5

Автор e.maria

Ответов: 17
Просмотров: 3242
Последний ответ 06.02.2026, 15:30:16
от wishlight
Ошибка вывода страницы регистрации на сайте Joomla! 5.4.2

Автор salesekspert

Ответов: 14
Просмотров: 1361
Последний ответ 04.02.2026, 15:39:19
от sivers
Есть опыт использования журнала отладки Joomla, для полезных исправлений?

Автор salesekspert

Ответов: 1
Просмотров: 724
Последний ответ 04.02.2026, 09:55:00
от salesekspert
MainLink и Joomla 5

Автор KingSnake

Ответов: 0
Просмотров: 887
Последний ответ 21.01.2026, 16:55:46
от KingSnake