Los virus de PC son todo un misterio para muchos usuarios, lo que no es un misterio es los estragos que éstos pueden causar. Y es que, los mal llamados virus (lo correcto es malware), pueden hacer todo tipo de fechorías, desde obtener información privada, hasta duplicarse y colapsar el sistema, hasta corromper archivos, etc. Por eso vamos a dedicar este artículo para desvelarte todos los misterios que hay detrás de estos programas…
Índice de contenidos
¿Qué es un virus o malware?
Un virus o malware es un programa o software malicioso diseñado para infiltrarse en un sistema informático sin el consentimiento del usuario y causar daños, robar información, interrumpir el funcionamiento normal del sistema o llevar a cabo acciones no deseadas. Son creados con intenciones perjudiciales y pueden propagarse de un equipo a otro, afectando no solo a dispositivos individuales, sino también a redes y sistemas completos.
Aunque todos lo llaman virus, lo correcto es usar el término malware, ya que dentro del malware existen varios tipos que veremos en el apartado posterior, y uno de esos tipos es el virus. Por tanto, puede llevar a confusión y no saber si te refieres al término genérico o al tipo.
Además, pueden manifestarse o infectar de diversas formas, como archivos adjuntos de correo electrónico, enlaces maliciosos, descargas de software no confiable, anuncios engañosos, entre otros. Una vez que un sistema es infectado, el virus o malware puede llevar a cabo diversas acciones, como corromper archivos, ralentizar el rendimiento del sistema, robar información personal o financiera, enviar spam, controlar remotamente el dispositivo, entre otros.
Tipos de malware
Existen varios tipos de malware, cada uno con características y objetivos distintos. Algunos de los tipos más comunes son los siguientes:
- Virus: se adjuntan a archivos ejecutables y se replican al infectar otros archivos. Su objetivo puede ser dañar archivos, corromper sistemas o robar información.
- Gusano (Worm): se propaga a través de redes y sistemas sin necesidad de un archivo host. Los gusanos tienen la capacidad de replicarse y propagarse de forma automática, afectando múltiples dispositivos y redes.
- Troyano (Trojan): se oculta dentro de programas legítimos y aparentemente inofensivos. Una vez que se ejecuta, permite el acceso no autorizado al sistema, robando información o permitiendo el control remoto del dispositivo. Dentro de esta categoría podemos encontrar varias, como:
- Ransomware: bloquea el acceso a los archivos o al sistema completo y exige un rescate para restaurar el acceso. Especialmente peligroso, ya que puede causar pérdida de datos o afectar a empresas y organizaciones.
- Spyware: recopila información confidencial sin el consentimiento del usuario. Suele monitorear la actividad en línea, registrar contraseñas, capturar datos bancarios o enviar información personal a terceros.
- Botnets: consiste en una red de dispositivos infectados controlados remotamente por un atacante. Los dispositivos infectados, llamados «bots», se utilizan para llevar a cabo ataques distribuidos de denegación de servicio (DDoS) u otras actividades maliciosas.
- Keylogger (Registrador de teclas): es un tipo de malware diseñado para registrar y monitorear las pulsaciones de teclas realizadas en un dispositivo. Su objetivo principal es capturar información confidencial, como contraseñas, números de tarjetas de crédito u otra información personal. Puede operar en modo sigiloso, registrando todas las teclas presionadas, o puede estar diseñado para activarse solo en determinadas circunstancias. Los datos capturados suelen ser enviados de manera encubierta al atacante, quien luego puede utilizarlos para cometer fraudes, robar identidades o acceder a cuentas y sistemas protegidos.
- Backdoor o puerta trasera: es una funcionalidad oculta o una vulnerabilidad introducida de forma intencional o no en un sistema, que permite el acceso no autorizado al mismo sin ser detectado. Es una forma de acceso remoto que se utiliza de manera maliciosa para eludir las medidas de seguridad existentes y obtener control sobre el sistema comprometido. La backdoor puede ser creada por desarrolladores con fines legítimos, como facilitar el acceso para realizar tareas de mantenimiento o solucionar problemas, pero también puede ser aprovechada por ciberdelincuentes para infiltrarse en un sistema, robar información sensible, instalar otros tipos de malware o llevar a cabo actividades ilícitas. Las backdoors representan una grave amenaza para la seguridad de los sistemas y su detección y eliminación requieren de medidas de seguridad proactivas y actualizadas.
- Adware: muestra anuncios no deseados, a menudo intrusivos, en forma de ventanas emergentes o banners. Puede ralentizar el sistema y afectar la experiencia de navegación.
- Hoax (Bulo): a diferencia de otros tipos de malware, el hoax no es un programa malicioso en sí mismo, sino más bien una falsa alarma o engaño propagado en forma de mensajes o correos electrónicos. Los hoaxes suelen difundir información falsa o alarmante, como alertas de virus inexistentes, rumores de peligros inminentes o cadenas de mensajes con historias falsas. Su objetivo puede ser causar pánico, engañar a los usuarios para que realicen acciones perjudiciales o simplemente generar confusión y desinformación. Aunque los hoaxes no infectan directamente los sistemas, pueden causar preocupación innecesaria y contribuir a la difusión de información falsa en línea.
Estos son solo algunos ejemplos de los diferentes tipos de malware existentes.
Recuerda que es importante contar con medidas de seguridad, como software antivirus y antimalware actualizado, y mantenerse informado sobre las últimas amenazas para protegerse de posibles ataques.
¿Qué hay dentro de un virus? Ejemplos
El código fuente de un virus o malware es como el de un programa, y puede estar escrito en diversos lenguajes de programación. Sin embargo, a diferencia de una app que se diseña para ofrecer algún servicio o funcionalidad, el malware está diseñado para realizar acciones maliciosas en tu sistema.
Por ejemplo, aquí hay un caso de un cliente y servidor para una conexión remota. Esto podría asemejarse a lo que sería un backdoor, para permitir que quien tenga el programa cliente se pueda conectar y manipular al servidor, que sería el infectado con el virus:
- Código del servidor (infeccioso):
import socket
def iniciar_servidor():
# Configurar el socket del servidor
servidor = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
servidor.bind(('localhost', 1234)) # Dirección IP y puerto
servidor.listen(1) # Permitir una conexión entrante
print('Servidor iniciado. Esperando conexiones...')
# Aceptar la conexión entrante
conexion, direccion = servidor.accept()
print('Cliente conectado:', direccion)
while True:
# Recibir datos del cliente
datos = conexion.recv(1024).decode('utf-8')
if not datos:
break
print('Cliente:', datos)
# Enviar una respuesta al cliente
respuesta = 'Recibido: ' + datos
conexion.send(respuesta.encode('utf-8'))
# Cerrar la conexión
conexion.close()
if __name__ == '__main__':
iniciar_servidor()
- Código del cliente (utilidad para el ciberatacante):
import socket
def iniciar_cliente():
# Configurar el socket del cliente
cliente = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
cliente.connect(('localhost', 1234)) # Dirección IP y puerto del servidor
while True:
# Enviar datos al servidor
mensaje = input('Mensaje para el servidor: ')
cliente.send(mensaje.encode('utf-8'))
if mensaje.lower() == 'salir':
break
# Recibir la respuesta del servidor
respuesta = cliente.recv(1024).decode('utf-8')
print('Servidor:', respuesta)
# Cerrar la conexión
cliente.close()
if __name__ == '__main__':
iniciar_cliente()
Como ves, en este caso está escrito en Python, pero podría usarse otros lenguajes. No obstante, no todo es tan fácil, ya que el software antivirus está diseñado para detectarlos y también se necesitará alguna forma de ganar privilegios para que pueda operar. Por tanto, los ciberdelincuentes tienen que crear virus FUD (Fully UnDetectable) y realizar técnicas como el hexing, etc. Por tanto, tras escribir el código, aún quedaría mucho trabajo para dejarlo indetectable con ayuda de un editor hexadecimal…