Jueves, 13 Marzo 2014 23:52

Grave problema de seguridad con Virtuemart 1.1.4 a 1.1.9 de envió masivo de correo

Valora este artículo
(0 votos)

Recientemente unos de nuestros servidores se disparo una alarma por incremento de mensajes en cola. Cuando empezamos la búsqueda del origen del envió masivo, nos dimos cuenta que se realizaba desde una web en Joomla con Virtuemart 1.1.7, al repasar el registro de acceso del apache aparecian unos miles de accesos por POST similares a estos:


Ver código
  1. 112.207.247.13 - - [13/Mar/2014:23:08:14 +0100] "POST /index2.php HTTP/1.1" 200 1731 "http://xxxxx.xxxxx.com/index2.php?page=shop.recommend&product_id=283&pop=1&tmpl=component&option=com_virtuemart&Itemid=2
  2. 9" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; iOpus-Web-Automation; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)"
  3. 112.207.247.13 - - [13/Mar/2014:23:08:15 +0100] "GET /templates/theme137 HTTP/1.1" 301 325 "http://xxxxx.xxxxx.com/index2.php" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; iOpus-Web-Auto
  4. mation; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)"
  5. 112.207.247.13 - - [13/Mar/2014:23:08:15 +0100] "POST /index2.php HTTP/1.1" 200 1750 "http://xxxxx.xxxxx.com/index2.php?page=shop.recommend&product_id=283&pop=1&tmpl=component&option=com_virtuemart&Itemid=2
  6. 9" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; iOpus-Web-Automation; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)"


Para solucionar el problema hay que editar el fichero:

/administrator/components/com_virtuemart/html/shop.recommend.php

y eliminar el siguiente código:

Ver código
  1. include_once(CLASSPATH.'ps_communication.php');
  2.  
  3.  
  4. $vm_mainframe->addStyleSheet( 'templates/'. $mainframe->getTemplate() );
  5.  
  6.  
  7. if( empty( $_POST['submit'] ) || !$ok ) {
  8.         $mainframe->setPageTitle( $VM_LANG->_('VM_RECOMMEND_FORM_LBL') );
  9.         echo '<h3>'.$VM_LANG->_('VM_RECOMMEND_FORM_LBL').'</h3>';
  10.  
  11.  
  12.         ps_communication::showRecommendForm($product_id);
  13. }
  14. else {
  15.         $mainframe->setPageTitle( $VM_LANG->_('VM_RECOMMEND_FORM_LBL') );
  16.         echo '<span class="contentheading">'. $VM_LANG->_('VM_RECOMMEND_DONE').' '. shopMakeHtmlSafe(vmGet($_POST,'recipient_mail')).'</span> <br />
  17.                 <br />
  18.                 <br />
  19.                 <a href="javascript:window.close();">
  20.                 <span class="small">'. $VM_LANG->_('PROMPT_CLOSE') .'</span>
  21.                 </a>';
  22.  
  23.  
  24. }

El código anterior permite una suplantación de identidad y que servicios de email spoofing aprovechen esta vulnerabilidad para sus “clientes”.

Ya no se podrán realizar recomendaciones, pero al menos los atacantes tampoco.
Como solución mas elegante se podría activar el recaptcha, pero lo mejor es que migre el cliente a Virtuemart 2.0

 

Al principio no hemos encontrado ninguna referencia, pero si que existe reporte del problema desde el 2010, lo grave del asunto es que hayan pasado 4 años no se informe a la gente ni se cree una versión con parche desde virtuemart para solucionarlo.

Leer 4969 veces Modificado por última vez en Jueves, 27 Marzo 2014 14:29

Escribir un comentario


Código de seguridad
Refescar