Новости 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 Ответов
  • 3836 Просмотров
*

IIAIIIA

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Определение переменной
« : 27.02.2010, 22:55:20 »
Привет, подскажите, пожалуйста... кусок кода

Код
$forgotu = $params->def('forgotu', 1);
$forgotp = $params->def('forgotp', 1);
$login_text = $params->def('login_text', 1);
$register_text = $params->def('register_text', 1);
$message = $params->def('message', 1);

надо изменить значения переменных login_text, register_text итд... только не знаю как до них добраться... я новичок, подскажите, плиииз
*

Шмайсер

  • Давно я тут
  • 801
  • 35 / 3
Re: Определение переменной
« Ответ #1 : 27.02.2010, 23:17:43 »
Код
$login_text = $params->def('login_text', 1);
а текст статичный или меняется?
Разработка сайтов любой сложности, на Joomla 3.9-4.x и не только на ней. Пишу компоненты, модули и плагины на заказ. Переношу сайты с ветки 2.5.х на 4-ю версию Joomla. Пишу любые скрипты и интерфейсы.
*

IIAIIIA

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Re: Определение переменной
« Ответ #2 : 27.02.2010, 23:22:44 »
статичный... можно, конечно, пойти по тупому... $login_text = "Логин"; итд... но хочется докопаться до сути
*

Шмайсер

  • Давно я тут
  • 801
  • 35 / 3
Re: Определение переменной
« Ответ #3 : 27.02.2010, 23:24:45 »
а вообще к какому компоненту или модулю относится?
Разработка сайтов любой сложности, на Joomla 3.9-4.x и не только на ней. Пишу компоненты, модули и плагины на заказ. Переношу сайты с ветки 2.5.х на 4-ю версию Joomla. Пишу любые скрипты и интерфейсы.
*

IIAIIIA

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Re: Определение переменной
« Ответ #4 : 27.02.2010, 23:26:28 »
модуль вывода блока авторизации/регистрации... шел в комплекте с шаблоном... называется mod_s5_login

Код
<?php // no direct access
defined('_JEXEC') or die('Restricted access');

$forgotu = $params->def('forgotu', 1);
$forgotp = $params->def('forgotp', 1);
$login_text = $params->def('login_text', 1);
$register_text = $params->def('register_text', 1);
$message = $params->def('message', 1);

?>
<?php if($type == 'logout') : ?>
<form action="index.php" method="post" name="login" id="form-login">
<?php if ($params->get('greeting')) : ?>
<div id="s5_login_message">
<?php if ($params->get('name')) : {
echo $user->get('name');
} else : {
echo $user->get('username');
} endif; ?>
,&nbsp;<?php echo $message ?>&nbsp;
</div>

<?php endif; ?>

<span id="s5_logout_button">
<input type="submit" name="Submit" class="button" value="<?php echo JText::_( 'Logout'); ?>" />
</span>

<input type="hidden" name="option" value="com_user" />
<input type="hidden" name="task" value="logout" />
<input type="hidden" name="return" value="<?php echo $return; ?>" />
</form>
<?php else : ?>
<?php if(JPluginHelper::isEnabled('authentication', 'openid')) :
$lang->load( 'plg_authentication_openid', JPATH_ADMINISTRATOR );
$langScript = 'var JLanguage = {};'.
' JLanguage.WHAT_IS_OPENID = \''.JText::_( 'WHAT_IS_OPENID' ).'\';'.
' JLanguage.LOGIN_WITH_OPENID = \''.JText::_( 'LOGIN_WITH_OPENID' ).'\';'.
' JLanguage.NORMAL_LOGIN = \''.JText::_( 'NORMAL_LOGIN' ).'\';'.
' var modlogin = 1;';
$document = &JFactory::getDocument();
$document->addScriptDeclaration( $langScript );
JHTML::_('script', 'openid.js');
endif; ?>

<div id="s5_login_icon"></div>
<div id="s5_login_text">
<a style="cursor:pointer" onclick="s5_login_open_close()"><?php echo $login_text ?></a>
</div>

<?php
$usersConfig = &JComponentHelper::getParams( 'com_users' );
if ($usersConfig->get('allowUserRegistration')) : ?>
<div id="s5_register_text">
<a href="<?php echo JRoute::_( 'index.php?option=com_user&task=register' ); ?>">
<?php echo $register_text ?></a>
</div>
<?php endif;

?>
<div style="clear:both"></div>

<div id="s5_login_wrap" style="display:none; position:absolute">

<form action="<?php echo JRoute::_( 'index.php', true, $params->get('usesecure')); ?>" method="post" name="login" id="form-login" >
<?php echo $params->get('pretext'); ?>
<fieldset class="input">
<p id="form-login-username">
<label for="modlgn_username"><?php echo JText::_('Username')?></label><br />
<input id="modlgn_username" type="text" name="username" class="inputbox" alt="username" style="width:148px" />
</p>
<p id="form-login-password">
<label for="modlgn_passwd"><?php echo JText::_('Password')?></label><br />
<input id="modlgn_passwd" type="password" name="passwd" class="inputbox" alt="password" style="width:148px" />
</p>
<?php if(JPluginHelper::isEnabled('system', 'remember')) : ?>
<p id="form-login-remember">
<label for="modlgn_remember"><?php echo JText::_('Remember me')?></label>
<input id="modlgn_remember" type="checkbox" name="remember" class="inputbox" value="yes" alt="Remember Me" />
</p>
<?php endif; ?>
<input type="submit" name="Submit" class="button" value="<?php echo JText::_('LOGIN')?>" />
</fieldset>
<ul>
<li>
<a href="<?php echo JRoute::_( 'index.php?option=com_user&view=reset' ); ?>">
<?php echo $forgotp ?></a>
</li>
<li>
<a href="<?php echo JRoute::_( 'index.php?option=com_user&view=remind' ); ?>">
<?php echo $forgotu ?></a>
</li>
</ul>
<?php echo $params->get('posttext'); ?>

<input type="hidden" name="option" value="com_user" />
<input type="hidden" name="task" value="login" />
<input type="hidden" name="return" value="<?php echo $return; ?>" />
<?php echo JHTML::_( 'form.token' ); ?>
</form>

</div>


<?php endif; ?>
*

Шмайсер

  • Давно я тут
  • 801
  • 35 / 3
Re: Определение переменной
« Ответ #5 : 27.02.2010, 23:31:07 »
по идее 1 - это вкл по умолчанию текст,
$login_text = $params->def('login_text', 1);
значит должно быть в настройках шаблона или самого модуля отключение текста
Разработка сайтов любой сложности, на Joomla 3.9-4.x и не только на ней. Пишу компоненты, модули и плагины на заказ. Переношу сайты с ветки 2.5.х на 4-ю версию Joomla. Пишу любые скрипты и интерфейсы.
*

IIAIIIA

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Re: Определение переменной
« Ответ #6 : 27.02.2010, 23:34:48 »
так мне его не надо отключать... я просто хочу добраться до этих переменных и перевести их на русский... там ща выводится login register forgot... итд

в папке с этим модулем файл лежит mod_s5_login.xml
Код
<?xml version="1.0" encoding="utf-8"?>
<install type="module" version="1.5.0">
<name>Shape 5 Sportopolis Login</name>
<author>Joomla! Project - Modified by Shape5</author>
<creationDate>July 2006</creationDate>
<copyright>Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.</copyright>
<license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
<version>1.5.0</version>
<description>Default Joomla login module modified by Shape 5 for Sportopolis template.</description>
<files>
<filename module="mod_s5_login">mod_s5_login.php</filename>
<filename>helper.php</filename>
<filename>index.html</filename>
<filename>tmpl/default.php</filename>
<filename>tmpl/index.html</filename>
</files>
<params>
<param name="cache" type="list" default="1" label="Caching" description="Select whether to cache the content of this module">
<option value="0">Never</option>
</param>
<param name="@spacer" type="spacer" default="" label="" description="" />
<param name="moduleclass_sfx" type="text" default="" label="Module Class Suffix" description="PARAMMODULECLASSSUFFIX" />
<param name="pretext" type="textarea" cols="30" rows="5" default="" label="Pre-text" description="PARAMPRETEXT" />
<param name="posttext" type="textarea" cols="30" rows="5" label="Post-text" description="PARAMPOSTTEXT" />
<param name="login" type="menuitem" default="" disable="separator" label="Login Redirection URL" description="PARAMLOGINREDIRECTURL" />
<param name="logout" type="menuitem" default="" disable="separator" label="Logout Redirection URL" description="PARAMLOGOUTREDIRECTURL" />
<param name="message" type="text" default="Добро пожаловать на наш сайт!" label="Logged in Message" description="" />
<param name="name" type="list" default="0" label="Name/Username">
<option value="0">Username</option>
<option value="1">Name</option>
</param>
<param name="usesecure" type="radio" default="0" label="Encrypt Login Form" description="Submit encrypted login data (requires SSL)">
<option value="0">No</option>
<option value="1">Yes</option>
</param>
<param name="login_text" type="text" default="Войти" label="Login Text" description="" />
<param name="register_text" type="text" default="Регистрация" label="Register Text" description="" />
<param name="forgotp" type="text" default="Забыли пароль?" label="Forgot Password Text" description="" />
<param name="forgotu" type="text" default="Забыли логин?" label="Forgot Username Text" description="" />
</params>
</install>

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

Шмайсер

  • Давно я тут
  • 801
  • 35 / 3
Re: Определение переменной
« Ответ #7 : 27.02.2010, 23:39:34 »
тогда забей напрямую и не парься)) текст "Забыли пароль?" как правило никогда менять не придется)
Разработка сайтов любой сложности, на Joomla 3.9-4.x и не только на ней. Пишу компоненты, модули и плагины на заказ. Переношу сайты с ветки 2.5.х на 4-ю версию Joomla. Пишу любые скрипты и интерфейсы.
*

IIAIIIA

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Re: Определение переменной
« Ответ #8 : 27.02.2010, 23:43:54 »
ну ведь где-то эти переменные хранятся ))))) просто самому интересно, мало ли, может потом будут аналогичные моменты, когда напрямую надо будет менять
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: Определение переменной
« Ответ #9 : 28.02.2010, 00:09:48 »
/language/en-GB/ посмотри ini-файл локализации модуля. Название файла содержит имя модуля, найдешь. Там может быть перевод этих фраз. Если нету добавь.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

IIAIIIA

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Re: Определение переменной
« Ответ #10 : 28.02.2010, 10:26:07 »
это я пробовал, там нет ини файла от этого модуля... прошеля поиском по всем этим файлам на содержание в них текста login, все, которые нашлись переместил в другую папку, открыл сайт. текст на месте...
*

IIAIIIA

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Re: Определение переменной
« Ответ #11 : 28.02.2010, 10:58:23 »
Вот еще одна примерно такого же рода задача. В шаблоне выводятся breadcrumbs на английском, ну то есть пишет на главной Home

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

Код
<span class="breadcrumbs pathway">
<?php for ($i = 0; $i < $count; $i ++) :

// If not the last item in the breadcrumbs add the separator
if ($i < $count -1) {
if(!empty($list[$i]->link)) {
echo '<a href="'.$list[$i]->link.'" class="pathway">'.$list[$i]->name.'</a>';
} else {
echo $list[$i]->name;
}
echo ' '.$separator.' ';
}  else if ($params->get('showLast', 1)) { // when $i == $count -1 and 'showLast' is true
   echo $list[$i]->name;
}
endfor; ?>
</span>

насколько я понимаю вот эта строчка выводит Home echo $list[$i]->name;
*

pinkfloyd

  • Захожу иногда
  • 321
  • 6 / 0
  • Живущий в сети
Re: Определение переменной
« Ответ #12 : 26.03.2010, 15:09:48 »
Присоединяюсь к вопросу, у меня тоже от Shape 5 Emma Smooth Login, мод mod_s5_login , не могу сделать Logout на русском что бы показывался(((, кто нашел ответ поделитесь, Файлы вроде все перерыл
*

pinkfloyd

  • Захожу иногда
  • 321
  • 6 / 0
  • Живущий в сети
Re: Определение переменной
« Ответ #13 : 26.03.2010, 16:10:46 »
Видно что причина тут:

Код
<input type="submit" name="Submit" class="button" value="<?php echo JText::_( 'Logout'); ?>" />

Изменяю "<?php echo JText::_( 'Logout'); ?>" на "Выход" получаются иероглифы, перекодирую в ютф8, все становился по русски на сайте, но кнопка выхода на пол см ниже получается, сбивается стиль, как сделать все по человечески кто подскажет?
*

Gu_

  • Новичок
  • 1
  • 0 / 0
Re: Определение переменной
« Ответ #14 : 08.04.2010, 22:10:45 »
если речь идет о русификации надписей модуля авторизации, то смотрите в сторону корень/lenguage/ru-RU ,
я модуль перевел путем подмены инишника от мод_логина. и не надо ни чего в коде переводить.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Изменение вывода категории, передача переменной из js в php

Автор Silence

Ответов: 6
Просмотров: 2165
Последний ответ 19.06.2012, 11:41:14
от Silence
Передача переменной заголовка в стороннюю форму обратной связи

Автор nizulko

Ответов: 9
Просмотров: 2295
Последний ответ 17.04.2012, 12:17:13
от nizulko
В какой переменной находится имя пользователя, когда он авторизован?

Автор vinnie

Ответов: 3
Просмотров: 3242
Последний ответ 22.01.2012, 20:13:18
от vinnie
Определение IP пользователя

Автор pa_ivanov

Ответов: 2
Просмотров: 1552
Последний ответ 21.08.2011, 12:30:55
от pa_ivanov
Вывести кнопку подробнее другой переменной на frontpage

Автор Anegin

Ответов: 5
Просмотров: 1723
Последний ответ 19.09.2010, 10:07:54
от Anegin