Un ransomware o malware de rescate, es un tipo de programa malicioso cuya finalidad es inutilizar los equipos infectados mediante el cifrado de sus archivos locales o aquellos almacenados en unidades de red conectadas a ellos, para obtener principalmente beneficios económicos, exigiendo a las víctimas el pago de un rescate a cambio de descifrar la información. Con ello, se impide un correcto funcionamiento del equipo, provocando la denegación de servicio, tanto a nivel de sistema como de información, ya que el sistema queda inutilizado y la información inaccesible.
En otras situaciones, el atacante puede actuar de acuerdo a motivaciones no económicas, como pueden ser el hacktivismo o los ataques cibernéticos estimulados por reivindicaciones políticas o sociales.
Desde 1989, primer momento en el que se tiene constancia del uso de un ransomware, este malware ha evolucionado adaptándose a cualquier plataforma actual como Windows, Mac o Android; dando lugar a diversas familias como Petya, WannaCry, Maze o Ryuk; y llegando a ser distribuido en el mercado negro mediante plataformas de Ransomware-as-a-Service (RaaS).
Para minimizar las posibilidades de infección o mitigar las consecuencias de un ataque por ransomware, se recomiendan tomar ciertas medidas preventivas que se explicarán a continuación, agrupándolas por bloques, como objetivo de este artículo de blog.
La ejecución automática es una función que permite abrir automáticamente un programa o un archivo almacenado en una unidad extraíble o CD/DVD después de conectarlo, lo que podría permitir a un virus o malware arrancar o instalar programas sin que el usuario final sea consciente de ello. Los parámetros de ejecución automática se establecen en el archivo autorun.inf.
Las unidades compartidas y los bloc de notas pueden ser utilizados por los atacantes en sus scripts con diccionarios y herramientas para obtener las credenciales correctas de usuarios si la función de control remoto, accesible desde el exterior, está habilitada en el equipo. Un ejemplo de esto es el malware Dharma: en cuanto tiene control sobre el equipo, gracias a la ayuda de unidades compartidas o el uso de un bloc de notas, es capaz de descargar distintos payload en el mismo.
Aplicar reglas restrictivas en cuanto al acceso, lectura y modificación de carpetas, permite que estas no puedan sufrir modificaciones mediante software no permitidos, brindando así una seguridad extra contra el cifrado por parte de un ransomware. En el sistema operativo Windows 10, esta función se encuentra en Centro de Seguridad Windows Defender.
Desactivar todos los componentes innecesarios del sistema operativo, especialmente los ‘servicios’ en Windows, como el escritorio remoto, reduciría el número de posibles vectores de entrada de ransomware.
La interfaz de consola (CLI) PowerShell permite la escritura y ejecución de comandos mediante la generación de scripts, por lo que se suele utilizar para la automatización de tareas, permitiendo interactuar, tanto con el sistema operativo como con otros programas propios de Microsoft (Exchange, SQL Server o IIS).
En Windows 10, esta interfaz de consola se encuentra habilitada por defecto para todos los usuarios. Por lo tanto, si no hubiera necesidad, es recomendable deshabilitar la ejecución de scripts en PowerShell, a través de GPO, o restringir por completo el acceso a la CLI, ya que agentes malintencionados hacen uso de PowerShell para la difusión de malware en la red, habitualmente a través de documentos ofimáticos con macros.
Windows Script Host (WSH) es el encargado de ejecutar archivos comúnmente conocidos como ‘macros’, como es el caso de los archivos JScript y VBScript, que son ampliamente utilizados para desplegar malware en los equipos.
Por lo tanto, se debe evaluar qué usuarios necesitan ejecutar este tipo de scripts y cuáles no. Si no fuese necesario, la mejor opción es deshabilitar WSH. En el caso contrario, habría que implementar medidas de protección mediante herramientas de Endpoint Detection and Response (EDR), tales como CrowdStrike Falcon, o Cytomic Orion.
El ‘modo protegido’ predeterminado de Microsoft Office impide que las macros de un documento Office se ejecuten de forma automática sin aprobación del usuario. Sin embargo, en ocasiones, los actores maliciosos logran engañar a los usuarios para que deshabiliten el ‘modo protegido’ y ejecuten las macros. Un ejemplo de la técnica de engaño consiste en un documento de Word malicioso que presenta un formato algo confuso, con caracteres extraños y una nota legible que dice algo similar a: ‘Si el documento no tiene el formato correcto, por favor, habilite las macros’.
Conociendo la amenaza, la medida más recomendable a tomar es deshabilitar las macros siguiendo una política de grupo si no fuesen necesarias, o habilitar el ‘modo lectura’ de Microsoft Office. Es importante, no cambiar de modo hasta asegurar que el documento está completamente limpio.
Las extensiones de los ficheros permiten al usuario distinguir qué tipo de documento va a abrir. Por tanto, resultan de gran utilidad para prevenir posibles ataques de ransomware, ya que estos suelen usar ficheros en cuyo nombre aparecen dos extensiones diferentes, simulando ser de tipo ofimático cuando en realidad es un ejecutable.
Dicho visor de eventos permite determinar aquellas direcciones IP potencialmente peligrosas por medio del registro de acceso de RDP, el cual está identificado con el código 1149. En dicha documentación, se indica la cuenta y la IP con la que se ha registrado el acceso.
Una configuración correcta de las reglas del firewall utilizado permitiría crear listas de elementos permitidos (allow lists) o listas de bloqueo (block lists) en base a direcciones IP. De esta forma, se controlaría el uso que hacen equipos concretos de un determinado servicio. El proceder para configurar el filtrado anterior es distinto según el SSOO utilizado:
Ilustración 1. Creación de reglas de Firewall en Windows
Acto seguido, se abrirá una nueva ventana, donde hay que seleccionar la opción de personalización, indicando en la siguiente ventana todos los programas. La configuración que se recomienda tomar es la siguiente:
Tipo de protocolo: TCP Número de protocolo: 6 Puerto local: puertos específicos, en concreto, el 3389 (puerto predeterminado de RDP) Puerto remoto: todos los puertos
Del mismo modo, también se aconseja añadir el puerto SMB 445 por defecto, ya que también ha sido utilizado en ataques ransomware, aunque en menor medida, al igual que el 3389.
A continuación, hay que elegir si se requiere crear listas de IP de bloqueo (block lists) o listas de IP permitidas (allow lists). Estas últimas son las más fiables, ya que el ataque sólo podrá producirse si se tiene acceso a dicha IP. En el caso de una block list, el ataque se evitaría sólo si la lista incluye explícitamente la IP del atacante.
Ilustración 2. Elección de IP a permitir
Finalmente, añadir las direcciones IP, con permiso de acceso, a la lista y aceptar la conexión. También es necesario indicar un nombre para la nueva regla creada. Si se quiere verificar que la regla creada cumple con su propósito, se puede realizar un escaneo de la propia IP que se está utilizando, comprobando, a qué puertos se tiene acceso y a cuáles no, mediante alguna herramienta específica de escaneo de puertos.
Ilustración 3. Herramienta de escaneo de puertos online
sudo ufw enable //Primero, para activar el firewall en Linux sudo apt-get install ufw //Si no está instalado por defecto, instalarlo sudo ufw allow/deny [puerto]/[protocolo(TCP o UDP)] //Para abrir o cerrar un puerto sudo ufw allow/deny from [dirección IP] //Para permitir o denegar conexiones desde una IP sudo ufw allow from [dirección IP] to any port [puerto] //Para especificar un puerto en concreto
Por otro lado, a parte de las soluciones firewall, existen aplicaciones de allow list. Estas apps tienen la función de permitir la ejecución de sólo aquellos recursos que cuenten con una firma o un certificado digitales, pudiendo ser estos últimos certificados autofirmados o expedidos por una autoridad de certificación externa (CA).
Para este tipo de filtros, es necesario tener en ejecución un sistema capaz de catalogar software y que cuente con un control de acceso, restringido a usuarios con permisos especiales, para administrar su uso.
La oferta de este tipo de apps es amplia y entre ellas destacan AppLocker, Bit9 Parity Suite, McAfee Application Control o Lumension Application Control, entre otras muchas.
Para restringir la utilización de un determinado software en varios equipos de forma uniforme, la mejor opción es recurrir a una configuración mediante GPO en Windows, es decir, Directivas de Políticas de Windows, que se pueden aplicar a través de la Directiva de Seguridad Local; o Directivas de grupo, a través del Directorio Activo de Windows. Para ello, hay que tener en cuenta las siguientes directrices:
Si se está trabajando en un entorno de Linux (Ubuntu), la forma más simple para restringir la ejecución de un programa a un usuario o grupo de usuarios es recurrir al comando ‘chmod’:
Ilustración 4. Asignación permisos en Ubuntu. Fuente: metaphlex
Para asignar permisos de lectura, escritura y ejecución para el usuario actual; asignar permisos de lectura y ejecución para el grupo de usuarios actuales; y denegar completamente el acceso al resto de usuarios, se puede usar la siguiente sentencia:
chmod 750 [archivo a modificar permisos]
A diferencia del anterior, con este otro comando se consigue que el resto de usuarios tengan permiso de lectura.
chmod 754 [archivo a modificar permisos]
Por último, se enlaza una guía de uso completa para el comando ‘chmod’.
Las auditorias de seguridad ayudan a mantener un control sobre las debilidades que pueda tener un entorno. Deberán hacerse periódicamente, tanto desde el exterior, para evaluar la exposición de equipos y servicios publicados en internet, como de forma interna, para conocer en detalle las vulnerabilidades que puedan afectar a los dispositivos no publicados.
Es recomendable que el software y firmware de todos los sistemas estén actualizados para evitar, por ejemplo, las infracciones producidas desde páginas potencialmente dañinas que utilizan Web Exploit Kits o por archivos maliciosos difundidos a través de correos electrónicos o redes sociales. Los recursos más utilizados para ataques ransomware son las versiones anticuadas de Java o Adobe Acrobat, entre otros.
En esta protección de los sistemas, es fundamental realizar una gestión de parches, ya que éstos tratan de mejorar y corregir problemas en los equipos de una manera más eficaz y rápida que a través de las actualizaciones, sobre todo en entornos con gran volumen de equipos. Para esta tarea, existen herramientas de gestión de parches como TOPIA o Ninja RMM.
Por otro lado, también es importante establecer una prioridad u orden de actualización, de mayor a menor importancia. De esta forma, en caso de un ataque de ransomware, los equipos más críticos estarán mejor protegidos. El orden de criticidad dependerá de cada infraestructura y puede ser evaluado realizando un análisis de riesgos, considerando individualmente el impacto que tendría el perder la información o el servicio de un sistema.
Es recomendable crear contraseñas robustas y modificarlas periódicamente. Algunas pautas a seguir son:
Aplicado lo anterior, se puede comprobar a través de algunas páginas web, cómo de robusta es la contraseña creada y el tiempo estimado que tardaría un ataque de fuerza bruta en descifrar la misma. Después de su comprobación, se recomienda modificarla nuevamente para evitar el uso exacto de la misma.
Tener una contraseña fuerte reduce el riesgo de ser roba mediante técnicas como:
Además de las contraseñas, también son importantes los métodos de autenticación utilizados. Se pueden agrupar en tres familias:
Siempre que sea posible, es recomendable combinar más de un método para impedir que alguien, que disponga de la contraseña, pueda acceder a la información o al equipo.
Finalmente, también incrementa la seguridad el hecho de implementar una política que bloquee temporalmente las cuentas de usuario tras un límite de inicios de sesión, que realice revisiones periódicas de los usuarios o que implante una rotación de contraseñas.
Salvo que fuese imprescindible, limitar el uso del usuario administrador, aplicando el principio del mínimo privilegio a los operadores de los sistemas, es una medida que prevendría la entrada y propagación de malware. Para ello, debe existir una correcta concordancia entre las credenciales y la asignación de permisos, de tal manera que la capacidad de ejecución de un usuario ‘normal’ esté perfectamente limitada con respecto a la de un usuario con privilegios de administración. Los permisos de administración representan un problema para la seguridad al permitir la ejecución libre de programas o el acceso a directorios sensibles.
El correo electrónico es uno de los principales vectores de entrada de ataques ransomware, pudiendo el malware estar presente en forma de archivo adjunto, ejecutable o incrustado en una macro de Microsoft Word. Por esta razón, es importante implementar políticas de filtrado de archivos de correo, así como una sandbox para poder analizar los adjuntos sospechosos de forma segura. Archivos con extensiones .ps2, .bat o .vba, no suelen ser enviados por correo electrónico y su bloqueo evitaría problemas mayores.
Otra forma de actuar, es detener directamente el correo malicioso mediante filtros antispam. Estos filtros pueden actuar de varias formas, siendo la más usada, el filtrado de correo por dominio, con el que se consigue bloquear aquellos provenientes de dominios no deseados. Otros métodos son la detección de enlaces fraudulentos o palabras sensibles en el correo electrónico.
En la primera parte de la serie de post dedicada al ransomware, titulada: ‘Ransomware: medidas preventivas (I)’, se introdujo el concepto de malware de rescate, se habló de las posibles motivaciones de sus autores, se mencionó su evolución conforme al paso del tiempo y se detallaron aquellas medidas de prevención basadas en el hardening de sistemas y sistemas operativos.
Este nuevo artículo tratará de profundizar en otras medidas preventivas, agrupándolas igualmente por bloques, que minimicen las posibilidades de infección o mitiguen las consecuencias de un ataque ransomware.
Disponer de copias de seguridad (backup) es una medida altamente recomendable y para su gestión conviene tener en cuenta aspectos como:
Finalmente, si se quiere profundizar en aspectos como qué información incluir en una copia de seguridad o la protección de las mismas, se recomienda consultar la ‘Guía de aproximación a las copias de seguridad’ de INCIBE.
Usar una VPN (Virtual Private Networking) permitiría acceder a servicios online desde cualquier lugar sin necesidad de exponerlos en Internet, donde podrían ser comprometidos por malware, gracias a un encapsulamiento de la comunicación.
Existen alternativas gratuitas para establecer una VPN, entre ellas, destaca OpenVPN, la cual puede montarse en cualquier dispositivo Linux o en los servicios de virtualización Hyper-V y ESXi.
Una manera eficaz de prevenir ataques directos contra vulnerabilidades conocidas es modificar la configuración por defecto de los servicios, como por ejemplo sus números de puerto. Algunos de estos puertos bien conocidos son el puerto 80 para el servicio http o el puerto 1433 para Microsoft SQL Server.
Un filtrado a nivel de red perimetral proporcionado por un firewall moderno permitiría evitar acceder a páginas maliciosas o no necesarias, mediante un sistema de calificación de direcciones IP y dominios maliciosos en categorías, como banca online, redes sociales, sitios maliciosos, entre otras.
Una red segmentada, siguiendo los principios de mínima exposición, permitiría contener la expansión de una infección por ransomware en la misma y con ello, reducir el impacto del ataque. En esta tarea, es importante contar con un buen número de divisiones de la Red para una segmentación eficaz, entre las que se deben implementar:
Fomentar la educación de los usuarios en materia de ingeniería social podría ayudar a prevenirlos de los ataques de tipo ransomware. Los usuarios son el objetivo de estos ataques, por lo que si conocen la amenaza y sus posibles formas de ataque, se reduciría la probabilidad de que, por ejemplo, ejecutaran un archivo malicioso descargado de un adjunto en un correo electrónico o tras abrir una pestaña emergente del navegador.
Ante la actual existencia de múltiples aplicaciones maliciosas, que se pueden distribuir por medio de software pirata o de baja reputación, es recomendable, siempre que sea posible, usar aquel software que cuente con:
El uso de software pirata no es aconsejable, ya que nadie verifica que se cumplan los puntos anteriores y además, su uso puede incurrir en posibles delitos.
Lo mismo ocurre con las extensiones de navegador, que mayormente son publicadas por desarrolladores independientes. Con relación a éstas, se recomienda usar sólo aquellas que provengan de fuentes de confianza y sean descargadas de fuentes oficiales, como Chrome web store o Mozilla add-ons.
Tener un antivirus habilitado, actualizado y correctamente configurado ayuda a proteger no solamente frente a ataques de ransomware, sino también ante otros tipos de amenazas.
Para esta tarea, es recomendable recurrir a software externo, como CryptoLocker Prevention Kit, que facilite el uso y creación de políticas de grupo mediante reglas e imposibilite la utilización de ficheros a través de carpetas potencialmente vulnerables, como AppData, LocalData, entre otras.
Otra opción es CryptoPrevent, un software más sencillo de usar sin editor de políticas de grupo y presente en diferentes versiones de Windows. Permite configurar políticas de grupo en el registro, que incapaciten ficheros de diversas extensiones (.com, .exe, .pif) y de la misma forma, crear una allow list sobre las aplicaciones verificadas o filtros más avanzados, pudiendo así repeler una gran cantidad de ataques de ransomware.
Como solución destacada, se encuentra el software llamado Anti Ransom, capaz de detectar si se están modificando ficheros, pudiendo paralizar el proceso, además de averiguar la clave que permite descifrar los archivos cifrados.
Este software cuenta con funciones sencillas e intuitivas, notificaciones al detectar la modificación de un directorio sensible, indicando el proceso por el que se está cambiando, y una función de volcado de memoria del proceso para la búsqueda de la clave de cifrado. Si verifica que se trata de un ransomware, bloquea el proceso de modificación del fichero.
España ocupa el puesto número 10 de 26 en la lista de los países con empresas más afectadas por ransomware en 2020, según indica el informe anual de Sophos, por lo que para hacer frente a esta amenaza es imprescindible adoptar medidas preventivas de forma correcta.
La prevención puede basarse en diferentes aspectos, como contar con protecciones EPP (Endpoint Protection Platform) y EDR (Endpoint Detection and Response); instalar protección antivirus en el correo electrónico y sandbox para el análisis de muestras que no se identifican previamente mediante su firma, además de contar con protecciones a nivel de aplicación (capa 7) en el firewall perimetral de la Red.
Uno de los vectores de entrada más importantes en una organización es el posible fallo humano, por lo que concienciar y formar al usuario final es una medida que no se debe olvidar.
Finalmente, como medidas más específicas, una buena gestión de copias de seguridad también es imprescindible, ya que podría reducir drásticamente el tiempo que tarda una organización en recuperarse tras haber sufrido un ataque, mejorando así su capacidad de resiliencia.
Fuente:
https://www.incibe-cert.es/blog/ransomware-medidas-preventivas-i
https://www.incibe-cert.es/blog/ransomware-medidas-preventivas-ii
When you subscribe to the blog, we will send you an e-mail when there are new updates on the site so you wouldn't miss them.
Buscador