700.000 usuarios de WordPress afectados por la vulnerabilidad de día cero en el complemento del administrador de archivos

700.000 usuarios de WordPress afectados por la vulnerabilidad de día cero en el complemento del administrador de archivos

Esta mañana, el 1 de septiembre de 2020, el equipo de Wordfence Threat Intelligence fue alertado de la presencia de una vulnerabilidad que se estaba explotando activamente en File Manager, un complemento de WordPress con más de 700,000 instalaciones activas. Esta vulnerabilidad permitió a los usuarios no autenticados ejecutar comandos y cargar archivos maliciosos en un sitio de destino.

Se lanzó un parche esta mañana el 1 de septiembre de 2020. Estamos viendo que esta vulnerabilidad se explota activamente en la naturaleza, por lo tanto, instamos a los usuarios a actualizar a la última versión, 6.9, de inmediato, ya que contiene un parche para esta vulnerabilidad y se mantendrá te protegiste.

Los usuarios de Wordfence Premium, así como los que todavía usan la versión gratuita, están protegidos contra esta campaña de ataque por la protección de carga de archivos incorporada del firewall de Wordfence, aunque el firewall de Wordfence debe optimizarse para proteger su sitio de esta vulnerabilidad.

Al analizar la vulnerabilidad, descubrimos que era posible eludir la protección de carga de archivos incorporada, por lo que implementamos una regla de firewall adicional para una cobertura máxima. Los clientes de Wordfence Premium recibieron esta nueva regla de firewall hoy, 1 de septiembre de 2020, a las 2:56 p.m. UTC. Los usuarios de Wordfence gratuitos recibirán la regla después de treinta días el 1 de octubre de 2020.

Description: Remote Code Execution
Affected Plugin:File Manager
Plugin Slug: wp-file-manager
Affected Versions: 6.0-6.8
CVSS Score: 10.00 (Critical)
CVSS Vector:CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Patched Versions: 6.9

File Manager es un complemento diseñado para ayudar a los administradores de WordPress a administrar archivos en sus sitios. El complemento contiene una biblioteca adicional, elFinder, que es un administrador de archivos de código abierto diseñado para crear una interfaz de administración de archivos simple y proporciona la funcionalidad principal detrás del administrador de archivos. El complemento del Administrador de archivos utilizó esta biblioteca de una manera que introdujo una vulnerabilidad.

El núcleo del problema comenzó con el complemento del Administrador de archivos que cambió el nombre de la extensión en el archivo connector.minimal.php.dist de la biblioteca elFinder a .php para que pudiera ejecutarse directamente, aunque el administrador de archivos no usara el archivo del conector. Estas bibliotecas a menudo incluyen archivos de ejemplo que no están pensados ​​para usarse «tal cual» sin agregar controles de acceso, y este archivo no tiene restricciones de acceso directo, lo que significa que cualquiera puede acceder al archivo. Este archivo podría usarse para iniciar un comando elFinder y estaba conectado al archivo elFinderConnector.class.php.

149150151// run elFinder$connector = new elFinderConnector(new elFinder($opts));$connector->run();

Cualquier parámetro enviado en una solicitud a connector.minimal.php sería procesado por la función run () en el archivo elFinderConnector.class.php, incluido el comando que se proporcionó en el parámetro cmd.

7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109public function run(){$isPost = $this->reqMethod === 'POST';$src = $isPost ? array_merge($_GET, $_POST) : $_GET;$maxInputVars = (!$src || isset($src['targets'])) ? ini_get('max_input_vars') : null;if ((!$src || $maxInputVars) && $rawPostData = file_get_contents('php://input')) {// for max_input_vars and supports IE XDomainRequest()$parts = explode('&', $rawPostData);if (!$src || $maxInputVars < count($parts)) {$src = array();foreach ($parts as $part) {list($key, $value) = array_pad(explode('=', $part), 2, '');$key = rawurldecode($key);if (preg_match('/^(.+?)\[([^\[\]]*)\]$/', $key, $m)) {$key = $m[1];$idx = $m[2];if (!isset($src[$key])) {$src[$key] = array();}if ($idx) {$src[$key][$idx] = rawurldecode($value);} else {$src[$key][] = rawurldecode($value);}} else {$src[$key] = rawurldecode($value);}}$_POST = $this->input_filter($src);$_REQUEST = $this->input_filter(array_merge_recursive($src, $_REQUEST));}} if (isset($src['targets']) && $this->elFinder->maxTargets && count($src['targets']) > $this->elFinder->maxTargets) {$this->output(array('error' => $this->elFinder->error(elFinder::ERROR_MAX_TARGTES)));} $cmd = isset($src['cmd']) ? $src['cmd'] : '';$args = array();

La lista de comandos disponibles en elFinder es la siguiente.

2432442452462472482492502512522532542552562572582592602612





62263264265266267268269270271272273274275276277278279
/*** Commands and required arguments list** @var array**/protected $commands = array('abort' => array('id' => true),'archive' => array('targets' => true, 'type' => true, 'mimes' => false, 'name' => false),'callback' => array('node' => true, 'json' => false, 'bind' => false, 'done' => false),'chmod' => array('targets' => true, 'mode' => true),'dim' => array('target' => true, 'substitute' => false),'duplicate' => array('targets' => true, 'suffix' => false),'editor' => array('name' => true, 'method' => true, 'args' => false),'extract' => array('target' => true, 'mimes' => false, 'makedir' => false),'file' => array('target' => true, 'download' => false, 'cpath' => false, 'onetime' => false),'get' => array('target' => true, 'conv' => false),'info' => array('targets' => true, 'compare' => false),'ls' => array('target' => true, 'mimes' => false, 'intersect' => false),'mkdir' => array('target' => true, 'name' => false, 'dirs' => false),'mkfile' => array('target' => true, 'name' => true, 'mimes' => false),'netmount' => array('protocol' => true, 'host' => true, 'path' => false, 'port' => false, 'user' => false, 'pass' => false, 'alias' => false, 'options' => false),'open' => array('target' => false, 'tree' => false, 'init' => false, 'mimes' => false, 'compare' => false),'parents' => array('target' => true, 'until' => false),'paste' => array('dst' => true, 'targets' => true, 'cut' => false, 'mimes' => false, 'renames' => false, 'hashes' => false, 'suffix' => false),'put' => array('target' => true, 'content' => '', 'mimes' => false, 'encoding' => false),'rename' => array('target' => true, 'name' => true, 'mimes' => false, 'targets' => false, 'q' => false),'resize' => array('target' => true, 'width' => false, 'height' => false, 'mode' => false, 'x' => false, 'y' => false, 'degree' => false, 'quality' => false, 'bg' => false),'rm' => array('targets' => true),'search' => array('q' => true, 'mimes' => false, 'target' => false, 'type' => false),'size' => array('targets' => true),'subdirs' => array('targets' => true),'tmb' => array('targets' => true),'tree' => array('target' => true),'upload' => array('target' => true, 'FILES' => true, 'mimes' => false, 'html' => false, 'upload' => false, 'name' => false, 'upload_path' => false, 'chunk' => false, 'cid' => false, 'node' => false, 'renames' => false, 'hashes' => false, 'suffix' => false, 'mtime' => false, 'overwrite' => false, 'contentSaveId' => false),'url' => array('target' => true, 'options' => false),'zipdl' => array('targets' => true, 'download' => false));

La buena noticia es que elFinder tiene protección incorporada contra el cruce de directorios, por lo que un atacante no podría usar ninguno de estos comandos en ningún archivo fuera del directorio plugins / wp-file-manager / lib / files /.

Los ataques que estamos viendo en la naturaleza están usando el comando upload para cargar archivos PHP que contienen webshells ocultos en una imagen al directorio wp-content / plugins / wp-file-manager / lib / files /.

Afortunadamente, tanto Wordfence Premium como los usuarios gratuitos se han protegido contra la campaña dirigida a esta vulnerabilidad. Sin embargo, para una protección óptima, creamos una regla de firewall adicional.

Por qué creamos una regla de firewall adicional
Si bien la protección incorporada de nuestro firewall impedía la carga directa de archivos, determinamos que era posible enviar una solicitud especialmente diseñada que crearía un archivo PHP vacío mediante el comando mkfile en el parámetro cmd. Un atacante podría enviar una solicitud separada para guardar el código malicioso en ese archivo enviando una solicitud con el parámetro cmd configurado para poner. Además, pueden ser posibles otras omisiones, por lo que creamos una regla de firewall para bloquear completamente cualquier acceso al archivo connector.minimal.php.

El complemento File Manager solucionó el problema eliminando el archivo lib / php / connector.minimal.php del complemento, y la eliminación manual de este archivo también debería evitar que los atacantes exploten esta vulnerabilidad sin afectar la funcionalidad normal. Este desvío no ha sido un objetivo en la naturaleza.

Una pequeña nota del equipo de Wordfence
Cuando utilice complementos de utilidades como este complemento de administrador de archivos, recomendamos tomar las mayores precauciones. Los complementos como este contienen varias características que, si se exponen dentro del área de administración de su instalación de WordPress, podrían causar serios problemas.

Un complemento de administrador de archivos como este haría posible que un atacante manipulara o cargara cualquier archivo de su elección directamente desde el panel de WordPress, lo que potencialmente le permitiría escalar privilegios una vez en el área de administración del sitio. Por ejemplo, un atacante podría obtener acceso al área de administración del sitio usando una contraseña comprometida, luego acceder a este complemento y cargar un webshell para hacer una enumeración adicional del servidor y potencialmente escalar su ataque usando otro exploit.

Por esta razón, recomendamos desinstalar los complementos de utilidades, como los complementos de administración de archivos, cuando no estén en uso, para que no creen un vector de intrusión fácil para que los atacantes escalen sus privilegios.

Indicadores de compromiso
El firewall de Wordfence ha bloqueado más de 450.000 intentos de explotación dirigidos a esta vulnerabilidad durante los últimos días. Estamos viendo a los atacantes que intentan inyectar archivos aleatorios, todos los cuales parecen comenzar con la palabra «difícil» o «x». A partir de nuestros datos de ataque de firewall, parece que los atacantes pueden estar investigando la vulnerabilidad con archivos vacíos y, si tienen éxito, pueden intentar inyectar un archivo malicioso.

Aquí hay una lista de algunos de los archivos que estamos viendo cargados:

hardfork.php
hardfind.php
x.php
Busque estos archivos en el directorio / wp-content / plugins / wp-file-manager / lib / files de su sitio.

Las 6 direcciones IP de ataque principales que estamos viendo son las siguientes.

185.222.57.183
185.81.157.132
185.81.157.112
185.222.57.93
185.81.157.177
185.81.157.133
Busque estas direcciones IP ofensivas en los archivos de registro de su sitio.

Cronograma de respuesta
1 de septiembre de 2020 7:00 a.m. UTC: Gonzalo Cruz de Arsys se comunica con nosotros para informarnos que una dirección IP infractora 185.81.157.0 intentaba cargar archivos PHP en sus sitios enviando solicitudes POST a wp-file-manager / lib /php/connector.minimal.php
1 de septiembre de 2020 11:52 a.m. UTC: Cruz pudo reproducir la vulnerabilidad y nos proporcionó una prueba de concepto funcional.
1 de septiembre de 2020 12:00 PM UTC: el equipo de Wordfence comienza el día.
1 de septiembre de 2020 12:28 PM UTC: Colette Chamberland, directora de seguridad de la información de Wordfence, responde a Cruz reconociendo su informe y notifica al equipo de inteligencia de amenazas de Wordfence sobre el informe.
1 de septiembre de 2020 12:33 PM UTC: File Manager lanza un parche.
1 de septiembre de 2020 12:48 PM UTC: el equipo de inteligencia de amenazas de Wordfence comienza a investigar el problema.
1 de septiembre de 2020 12:58 PM UTC: el equipo de inteligencia de amenazas de Wordfence verifica el problema. Comenzamos a probar la vulnerabilidad utilizando la prueba de concepto, verificamos los accesos bloqueados del Firewall de Wordfence y analizamos el código en busca de omisiones del firewall.
1 de septiembre de 2020 2:24 p.m. UTC: el equipo de inteligencia de amenazas de Wordfence descubre un desvío.
1 de septiembre de 2020 2:42 p.m. UTC: se crea una regla de firewall para la omisión.
1 de septiembre de 2020 2:56 p.m. UTC: la regla de firewall se implementa para clientes premium.
1 de octubre de 2020: los usuarios gratuitos de Wordfence reciben una regla adicional.

Conclusión
En la publicación de hoy, detallamos una vulnerabilidad de día cero que se explota activamente en el complemento File Manager que permite a atacantes no autenticados ejecutar código arbitrario en un sitio de WordPress. Esta vulnerabilidad se corrigió esta mañana y recomendamos encarecidamente

Que es e-commerce?

Que es e-commerce?

El e-commerce consiste en la distribución, venta, compra, marketing y suministro de información de productos o servicios a través de Internet.

Originalmente el término se aplicaba a la realización de transacciones mediante medios electrónicos, como por ejemplo el intercambio electrónico de datos. Sin embargo, con el advenimiento de la Internet a mediados de los años 90, comenzó el concepto de venta de servicios por la red, usando como forma de pago medios electrónicos como las tarjetas de crédito. Desde entonces, las empresas han estado preocupadas por mantenerse a la vanguardia y poder ofrecer lo que hoy en día sus clientes están demandando.

Por otra parte, personas han visto en esta nueva manera de hacer negocios una gran oportunidad para emprender y tener una actividad comercial propia en la que triunfan cuando entienden que en el e-commerce no existen barreras ni fronteras, y que el espacio geográfico no es el que determina el target; que se deben tener presentes muchos aspectos y ver la otra cara de la moneda; que sin creatividad y sin ofrecer una propuesta de valor realmente diferenciadora se hace complicado surgir en este amplio mundo como unos grandes vencedores.

Diferencia entre la presencia en Internet VS comercio electrónico

La mayoría de las empresas ya cuentan con presencia en Internet, por lo que se han preocupado es por desarrollar sitios institucionales. En estos casos, lo que se pretende es complementar algunas actividades tradicionales de Marketing como, por ejemplo, brindar información adicional y promocionar la compañía. Algunas hoy en día no han entrado en el mundo del marketing digital y no han entendido las grandes herramientas con las que se puede contar en Internet y el mundo de personas a las que se les puede llegar a través de la red.

En algunos casos, las empresas muestran reticencia a brindar información detallada sobre productos, puesto que el objetivo es inducir a los visitantes a comunicarse con la empresa por las vías tradicionales, como la visita presencial o la llamada telefónica, y de este modo ponerse en contacto con los potenciales clientes. Olvidan o tal vez desconocen las innumerables herramientas de captación que existen a través del marketing digital, pero ese tema lo dejaremos para más adelante ya que me daría para escribir al menos otros dos post.

Por otra parte, encontramos los sitios de comercio electrónico, que son muy diferentes. En éstos, el objetivo final es cerrar la operación electrónicamente con el pago (y en algunos casos con la entrega), siendo estos procesos realizados por Internet. Sin esta transacción no podríamos hablar de e-commerce. Donde lo que realmente importa es que dicha transacción afecte la cuenta de resultados de cualquier negocio, convirtiéndose en un gran generador de utilidades. Normalmente, este tipo de sitios incluye información detallada de los productos, fundamentalmente porque los visitantes apoyarán su decisión de compra en función de la información obtenida y de la percepción de confianza y solvencia que el sitio web les haya generado respecto a la empresa.

Ese tipo de sitio web generalmente tiene cuatro secciones:

1. INFORMACIÓN INSTITUCIONAL: Esta sección intenta atraer a los clientes y generar un ambiente de confianza en la empresa.

2. CATÁLOGO: Es un requisito fundamental del E-commerce y contiene la información detallada sobre los productos, sus beneficios y precios. De esta sección depende en gran parte el éxito del negocio.

3. PROCESAMIENTO DE ÓRDENES: Esta sección incluye un método para especificar y configurar la orden. Los sistemas más avanzados pueden incluir sistemas de seguimiento de la orden.

4. PASARELA DE PAGO: es el método utilizado para hacer la transacción económica. Existen varios métodos. En este apartado es muy importante dar seguridad al cliente y algún respaldo en caso de fraudes.

Últimamente, y a medida que se avanza en este negocio se han incluido más apartados. Hoy en día es tan importante como todas las anteriores una excelente política de devoluciones y el apoyo al usuario. Que sienta que aunque toda la operación se hace a través de Internet, existen personas con las que puede hablar en caso de necesitarlo.

Los sitios de comercio electrónico pueden encontrarse solos o formar parte de un sitio de venta mayor, comúnmente denominados “shopping mall”, los cuales presentan una apariencia estandarizada, dentro de las que muchas empresas tienen presencia dentro de un único sitio web y en el que los visitantes pueden acceder a información de distintas empresas.

Más adelante ampliaremos la información, hablando del tipo de negocios de e-commerce que existen y las ventajas que supone poner en marcha uno de ellos.