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

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

dj_lexa

  • Осваиваюсь на форуме
  • 48
  • 0 / 0
Добрый день!
Если необходимо сделать задержку между отправкой писем покупателю и администратору, то необходимо в файл ../components/com_virtuemart/helpers/shopfunctionsf.php добавить функцию sleep (1);

Было:
Код
if(isset($vars['orderDetails'])){

//If the vRequest is there, the update is done by the order list view BE and so the checkbox does override the defaults.
//$name = 'orders['.$order['details']['BT']->virtuemart_order_id.'][customer_notified]';
//$customer_notified = vRequest::getVar($name,-1);
if(!$useDefault and isset($vars['newOrderData']['customer_notified']) and $vars['newOrderData']['customer_notified']==1 ){
$user = self::sendVmMail( $view, $recipient, $noVendorMail );
vmdebug('renderMail by overwrite');
} else {
$orderstatusForShopperEmail = VmConfig::get('email_os_s',array('U','C','S','R','X'));
if(!is_array($orderstatusForShopperEmail)) $orderstatusForShopperEmail = array($orderstatusForShopperEmail);
if ( in_array((string) $vars['orderDetails']['details']['BT']->order_status,$orderstatusForShopperEmail) ){
$user = self::sendVmMail( $view, $recipient, $noVendorMail );
vmdebug('renderMail by default');
} else{
$user = -1;
}
}
} else {
$user = self::sendVmMail( $view, $recipient, $noVendorMail );
}

if(isset($view->doVendor) && !$noVendorMail) {
if(isset($vars['orderDetails'])){
$order = $vars['orderDetails'];
$orderstatusForVendorEmail = VmConfig::get('email_os_v',array('U','C','R','X'));
if(!is_array($orderstatusForVendorEmail)) $orderstatusForVendorEmail = array($orderstatusForVendorEmail);
if ( in_array((string)$order['details']['BT']->order_status,$orderstatusForVendorEmail)){
self::sendVmMail( $view, $view->vendorEmail, TRUE );
}else{
$user = -1;
}
} else {
self::sendVmMail( $view, $view->vendorEmail, TRUE );
}

}
Стало:
Код
if(isset($vars['orderDetails'])){

//If the vRequest is there, the update is done by the order list view BE and so the checkbox does override the defaults.
//$name = 'orders['.$order['details']['BT']->virtuemart_order_id.'][customer_notified]';
//$customer_notified = vRequest::getVar($name,-1);
if(!$useDefault and isset($vars['newOrderData']['customer_notified']) and $vars['newOrderData']['customer_notified']==1 ){
$user = self::sendVmMail( $view, $recipient, $noVendorMail );
vmdebug('renderMail by overwrite');
} else {
$orderstatusForShopperEmail = VmConfig::get('email_os_s',array('U','C','S','R','X'));
if(!is_array($orderstatusForShopperEmail)) $orderstatusForShopperEmail = array($orderstatusForShopperEmail);
if ( in_array((string) $vars['orderDetails']['details']['BT']->order_status,$orderstatusForShopperEmail) ){
$user = self::sendVmMail( $view, $recipient, $noVendorMail );
vmdebug('renderMail by default');
} else{
$user = -1;
}
}
} else {
$user = self::sendVmMail( $view, $recipient, $noVendorMail );
}

sleep (1);

if(isset($view->doVendor) && !$noVendorMail) {
if(isset($vars['orderDetails'])){
$order = $vars['orderDetails'];
$orderstatusForVendorEmail = VmConfig::get('email_os_v',array('U','C','R','X'));
if(!is_array($orderstatusForVendorEmail)) $orderstatusForVendorEmail = array($orderstatusForVendorEmail);
if ( in_array((string)$order['details']['BT']->order_status,$orderstatusForVendorEmail)){
self::sendVmMail( $view, $view->vendorEmail, TRUE );
}else{
$user = -1;
}
} else {
self::sendVmMail( $view, $view->vendorEmail, TRUE );
}

}
« Последнее редактирование: 24.05.2015, 21:29:02 от dj_lexa »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться