Новости 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

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

ildar87

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Приветствую

Прошу проконсультировать.
Пользователь с фронта будет создавать материал и загружать фотографии с возможностью их обрезки. На сервер отправляется массив с изображениями в base64, на сервере изображения сохраняются в разных размерах. Делал подобное под laravel, но с Joomla не так все просто.
Думаю, в шаблоне добавления материала сделать кнопку загрузки изображений, добавить дополнительное поле, в которое будет сохраняться массив загруженных изображений в base64, на сервере также сохранять в разных размерах и перезаписывать это доп поле массивом путей к сохраненным изображениям.

Где на стороне сервера обрабатывать и перезаписывать значение доп поля?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
В Joomla есть система плагинов для врезки своего кода без хака ядра. Они разпределены по группам и их методы вызываются определенными событиями. В вашем случае я бы написал плагинчик группы content на событие onContentAfterSave. Надо еще подумать, куда записать пути к файлам, возможно, вам придется добавить столбик для них.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

sivers

  • Живу я здесь
  • 2606
  • 361 / 0
Можно и вовсе обойтись без хранения путей в БД (если только нет необходимости поиска в БД по ним). Сохранять для каждого материала в отдельную папку, содержащую в названии ИД материала, а при открытии страницы материала, проверять содержимое этой папки функцией glob().
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

ildar87

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
В Joomla есть система плагинов для врезки своего кода без хака ядра. Они разпределены по группам и их методы вызываются определенными событиями. В вашем случае я бы написал плагинчик группы content на событие onContentAfterSave. Надо еще подумать, куда записать пути к файлам, возможно, вам придется добавить столбик для них.
Спасибо, погуглю
*

ildar87

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Можно и вовсе обойтись без хранения путей в БД (если только нет необходимости поиска в БД по ним). Сохранять для каждого материала в отдельную папку, содержащую в названии ИД материала, а при открытии страницы материала, проверять содержимое этой папки функцией glob().
Будет очень много материалов, планировал сохранять в подкаталоги по первым двум буквам хешированного имени файла
*

sivers

  • Живу я здесь
  • 2606
  • 361 / 0
Будет очень много материалов, планировал сохранять в подкаталоги по первым двум буквам хешированного имени файла
Лучше уж ИД хэшить. Вдруг имя поменять надо будет в материале?
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

ildar87

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Лучше уж ИД хэшить. Вдруг имя поменять надо будет в материале?
Имя будет состоять из ид пользователя, времени, счётчика - совпадений не будет
*

ildar87

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
В Joomla есть система плагинов для врезки своего кода без хака ядра. Они разпределены по группам и их методы вызываются определенными событиями. В вашем случае я бы написал плагинчик группы content на событие onContentAfterSave. Надо еще подумать, куда записать пути к файлам, возможно, вам придется добавить столбик для них.
Разобрался, получилось, еще раз спасибо.
Но разве нельзя менять значение доп свойства до сохранения?
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
а еще в Joomla есть допполя и для них есть поле галереи https://github.com/JPathRu/pkg_gallery_field, фронт для поля дописать имхо не проблема
*

ildar87

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
а еще в Joomla есть допполя и для них есть поле галереи https://github.com/JPathRu/pkg_gallery_field, фронт для поля дописать имхо не проблема
Спасибо, но пока мне нравится идея хранения в поле типа textarea
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Разобрался, получилось, еще раз спасибо.
Но разве нельзя менять значение доп свойства до сохранения?
Можно. onContentNormaliseRequestData или onContentBeforeSave.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

ildar87

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Можно. onContentNormaliseRequestData или onContentBeforeSave.
Нашел только, как получить список полей материала:
FieldsHelper::getFields($context, $article, true);

И перезаписать в бд:
$model = BaseDatabaseModel::getInstance('Field', 'FieldsModel', array('ignore_request' => true));
$model->setFieldValue($field->id, $article->get('id'), $newValue);

Как можно изменить значение свойства до сохранения?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Метод - onContentBeforeSave($context, $table, $isNew, $data), $table - объект JTable, $data - данные из формы. Смотрите код Joomla\CMS\MVC\Model\AdminModel::save().
Не будь паразитом, сделай что-нибудь самостоятельно!
*

ildar87

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Видимо, что-то не понимаю

В событии onContentBeforeSave изменение значения доп поля не сохраняются
В форме создания материала, заполняю доп поле test-field значением 111
В плагине в событии onContentBeforeSave($context, $article, $isNew, $data) присваиваю новое значение $data['com_fields']['test-field'] = '333';
Но в базе сохраняется прежнее значение, т.е. 111

Может значения доп полей нужно править не в группе content?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
В плагине в событии onContentBeforeSave($context, $article, $isNew, $data) присваиваю новое значение $data['com_fields']['test-field'] = '333';
Но в базе сохраняется прежнее значение, т.е. 111
Мало менять $data, нужно еще ее прикручивать к $article, я же вам писал
Смотрите код Joomla\CMS\MVC\Model\AdminModel::save()
Не будь паразитом, сделай что-нибудь самостоятельно!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вставка видео в Материал

Автор VIK4

Ответов: 10
Просмотров: 1178
Последний ответ 03.11.2025, 08:18:22
от wishlight
Как вставить видео с Telegram в материал?

Автор Ishti39

Ответов: 2
Просмотров: 1652
Последний ответ 18.06.2024, 10:41:30
от Olg
Как сделать картинку ссылкой на материал без Вводного изображения?

Автор OZlaim

Ответов: 0
Просмотров: 1486
Последний ответ 30.05.2024, 01:28:37
от OZlaim
Поиск в Материал- Блог категории

Автор mag_num83

Ответов: 1
Просмотров: 1326
Последний ответ 14.09.2023, 20:36:34
от beliyadm
Менеджер изображений не запоминает последнюю выбранную папку

Автор saxes

Ответов: 0
Просмотров: 818
Последний ответ 26.04.2023, 07:36:23
от saxes