Новости Joomla

‼️👩‍💻 Релиз безопасности Astroid 3.3.11 - шаблона-конструктора для Joomla.

‼️👩‍💻 Релиз безопасности Astroid 3.3.11 - шаблона-конструктора для Joomla.

14 часов назад (на момент публикации заметки) была обнаружена уязвимость в популярном шаблоне-конструкторе Astroid Framework. При атаке на сайт устанавливается бэкдор — системный плагин под названием plg_system_blpayload. Если вы обнаружили этот плагин на своем веб-сайте, значит, он скомпрометирован, и вам необходимо восстановить чистую резервную копию, созданную до установки плагина.

Уязвимость позволяет загружать файлы на сайт и в дальнейшем получить права администратора Joomla.
В рамках атаки (из-за которой и была обнаружена уязвимость) на сайт устанавливался плагин plg_system_blpayload, который при каждой загрузке страницы снаружи он скрытно связывается с (платформой для SEO, работающей на черном рынке (ссылку помещать не будем, просим поверить на слово). Получает список скрытых спам-ссылок (сайты азартных игр, фишинга, мошенничества), подобранный под ваш домен, затем внедряет эти ссылки в HTML-код вашей страницы непосредственно перед рендером - невидимые для посетителей, но полностью читаемые поисковыми роботами. Это называется "отравление SEO" ("отрпавление поисковой выдачи").

Однако, эта уязвимость может использоваться в других целях. Поэтому необходимо срочно проверить ваши сайты, где стоит Astroid Framework и обновить его до версии не ниже 3.3.11. Релиз безопасности выпущен 4 часа назад (на момент написания заметки).

Скачать релиз безопасности Astroid

@joomlafeed

👩‍💻 Вышел Quantum Manager 3.3.0 - медиа менеджер для Joomla.

👩‍💻 Вышел Quantum Manager 3.3.0 - медиа менеджер для Joomla.

Популярный файловый менеджер для Joomla от отечественных разработчиков.

v.3.3.0. Что нового?
- Joomla 6. Компонент полностью совместим с Joomla 6, плагин обратной совместимости не требуется.
- Рефакторинг. Полностью удалён устаревший код, оставшийся в наследство от версий для Joomla 3.
- Новые настройки для SVG. Новые параметры фильтрации SVG-файлов.
- Улучшена безопасная функция предварительного просмотра SVG-файлов. Благодаря новым механизмам фильтрации восстановлена ​​возможность безопасного предварительного просмотра SVG-изображений.
- Исправления ошибок. Исправлены ошибки с данными EXIF ​​и обновлена ​​библиотека EXIF.

Читать новость
Скачать расширение

Также обновление получил плагин пользовательского поля Radicalmultifield для совместимости с новым Quantum Manager.

Репозиторий GitHub
Релиз на GitHub

@joomlafeed

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

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
На разных страницах есть несколько модулей одного типа с разными настройками, условно
модуль_1
модуль_2
модуль_3
...

Баг:

модуль_3 отправляет сообщение, которое содержит значение параметра $params->get('static_text') из модуль_1!
если снять с публикации модуль_1, то текст будет из модуль_2
если снять с публикации модуль_2 - будет правильное значение параметра из модуль_3

Подробнее о модуле
---------------------------
Самописный модуль. Достаточно сложный.

Одна из функций модуля - отправка сообщения клиенту
Сообщение содержит статическую часть, которая  заполняется в админке в поле типа editor
Сообщение клиенту формирует методом getMessage (в helper.php)
Метод вызывается в getAjax, где другой метод отправляет сообщение

упрощенно выглядит так
Код
static function getMessage( $params, $idplan, $firstName )
{
//some code
$block_Mail = $params->get('static_text');
//some code

return $postData; // stdClass
}

public static function getAjax()
{

//some code

$postData = self::getMessage( $params, $idplan, $firstName )
$client_message = $postData->clientMessage;

//some code

$success_client = self::MailSender( $params, $client_subject, $client_message, $recipient );

//some code

}
В чем может быть причина?
Буду благодарен за любые соображения

ps. Если в макете вывести
Код
echo $params->get('static_text');
выводит правильное значение
« Последнее редактирование: 17.04.2021, 19:51:17 от fbr »
*

v42bis

  • Захожу иногда
  • 133
  • 13 / 1
У себя решал передачей id модуля через POST, потом  получал параметры модуля по его id.
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
А диагноз?
В чем причина?
Как чужие параметры попадают в модуль?
*

sivers

  • Живу я здесь
  • 2606
  • 361 / 0
В чем может быть причина?
причина в методе getAjax.
Если посмотреть что у него внутри, то видно, что он читает из базы первый модуль данного типа и берет его параметры, потом вызывает helper модуля.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Что здесь можно сделать?
Код
public static function getAjax()
{
jimport('joomla.application.module.helper');
$input  = JFactory::getApplication()->input;
$module = JModuleHelper::getModule('mod_clubs');
$params = new JRegistry();
$params->loadString($module->params);
$inputs = $input->get('data', array(), 'ARRAY');

//...
}
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Можно попробовать так:
Код
$module = JModuleHelper::getModuleById('module_ID');
как получить внутри getAjax id текущего модуля?
*

sivers

  • Живу я здесь
  • 2606
  • 361 / 0
как получить внутри getAjax id текущего модуля?
ИД надо передавать в ajax-запросе.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Т.е. создавать скрытое поле input, присваивать ему id-модуля, и вытаскивать внутри getAjax из $input?
Так?
*

sivers

  • Живу я здесь
  • 2606
  • 361 / 0
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Спасибо)
Завтра попробую, отпишусь
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Все работает
Спасибо всем за помощь ))

Итоговый код (упрощенный)
Код
public static function getAjax()
{
jimport('joomla.application.module.helper');
$input = JFactory::getApplication()->input;
$inputs = $input->get('data', array(), 'ARRAY');

foreach ($inputs as $input) {
// ...
if( $input['name'] == 'modclub_id' )  $modclub_id = $input['value']; // module id
}

$module = JModuleHelper::getModuleById($modclub_id);
$params = new JRegistry();
$params->loadString($module->params);

// ...
}
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибка Using $this when not in object context при создании модуля

Автор arrrows163

Ответов: 0
Просмотров: 617
Последний ответ 27.06.2021, 18:33:45
от arrrows163
Как сделать автодобавление модуля?

Автор Kropov

Ответов: 4
Просмотров: 1237
Последний ответ 29.06.2015, 14:38:24
от Kropov
Запрос к БД модуля Joomla

Автор Serebro2009

Ответов: 3
Просмотров: 1458
Последний ответ 27.05.2015, 14:01:28
от b2z
Узнать из фрейма url, где фрейм выводится

Автор AlekVolsk

Ответов: 32
Просмотров: 3527
Последний ответ 02.03.2015, 23:13:40
от AlekVolsk
Получение результата работы AJAX в модуле

Автор AlekVolsk

Ответов: 9
Просмотров: 2428
Последний ответ 17.11.2014, 00:03:50
от AlekVolsk