Malware
Artículo
Discusión
Leer
Editar
Ver historial
Herramientas
Apariencia ocultar
Texto
Pequeño
Estándar
Grande
Anchura
Estándar
Ancho
Color (beta)
Automático
Claro
Oscuro
Los programas maliciosos suelen ser representados con símbolos de peligro o
advertencias de archivo malicioso.
Un malware, traducido del inglés como programa malicioso, programa maligno,
programa malintencionado o código maligno, es cualquier tipo de software que
realiza acciones dañinas en un sistema informático de forma intencionada (al
contrario software defectuoso) y sin el conocimiento del usuario (al contrario que
el software potencialmente no deseado[1]).[2] Ejemplos típicos de estas actividades
maliciosas son el[3] robo de información (p. ej. a través de troyanos), dañar o
causar un mal funcionamiento del sistema informático (p. ej. mediante Stuxnet,
Shamoon o Chernobyl), provocar perjuicios económicos, chantajear a propietarios de
los datos de sistemas informáticos (p. ej. con un ransomware), permitir el acceso
de usuarios no autorizados, provocar molestias o una combinación de varias de estas
actividades.[4][5][6][7]
Antes de que el término «malware» fuera acuñado por Yisrael Radai en 1990,[8][9] el
software maligno se agrupaba bajo el término «virus informático» (un virus es en
realidad un tipo de malware).[10]
Para el 2020, un programa malicioso conocido con el nombre de Joker —debido a que
el icono que utiliza al momento de aparecer en tiendas de aplicaciones es el de un
payaso— infectó a más de 1700 aplicaciones que tuvieron que ser retiradas de once
tiendas de aplicaciones. Sin embargo, este programa malicioso se adapta muy
rápidamente a la tienda y se puede ocultar fácilmente.[11]
Motivaciones
Durante los años 1980 y 1990, se creaba malware como una forma de vandalismo o
travesura. Sin embargo, en la actualidad, la principal motivación es la obtención
de un beneficio económico. En los últimos años, está apareciendo malware asociado a
amenazas persistentes avanzadas, que son campañas fuertemente orquestadas
realizadas por grupos asociados a estados o a importantes instancias con poder,
cuyo objetivo más habitual es el robo de información estratégica o producir daños
en sistemas de organizaciones objetivo.
Las motivaciones más habituales para la creación de programas maliciosos son:
Experimentar al aprender (p. ej. el Gusano Morris)
Realizar bromas, provocar molestias y satisfacer el ego del creador. (p. ej.
Melissa y los virus joke)
Producir daños en el sistema informático, ya sea en el hardware (p. ej. con Stuxnet
y Chernobyl), en el software (p. ej. Ramen que cambia la página inicial del
servidor web), en los datos (p. ej. Shamoon o Narilam que buscan destruir los
datos)[12] o provocando la caída de servidor (p. ej. Code Red)
Provocar una degradación en el funcionamiento del sistema. Por ejemplo, consumiendo
ancho de banda de la red o tiempo de CPU.
Sacar beneficio económico. Por ejemplo:
Robando información (personal, empresarial, de defensa...) para luego usarla
directamente en fraudes o revenderla a terceros. Al tipo de programa malicioso que
roba información se le llama programa espía o spyware.
Chantajeando al propietario del sistema informático (p. ej. el ransomware)
Presentar publicidad. A este tipo de programa malicioso se le llama adware.
Mediante la suplantación de identidad. Es el objetivo final de muchos ataques de
phishing.
Tomando control de computadoras para su explotación en el mercado negro. Estas
computadoras zombis son usadas luego para, por ejemplo, el envío masivo de correo
basura, para alojar datos ilegales como pornografía infantil,[13] distribuir
malware (pago por instalación[14]) o para unirse en ataques de denegación de
servicio distribuido (DDoS).
Cuando el malware produce pérdidas económicas para el usuario o propietario de un
equipo, también se clasifica como crimeware o software criminal. Estos programas
suelen estar encaminados al aspecto financiero, la suplantación de personalidad y
el espionaje.[15]
Algunos autores distinguen el malware del grayware (también llamados greyware,
graynet o greynet), definiendo estos como programas que se instalan sin la
autorización del usuario y se comportan de modo tal que resultan molestos o
indeseables para el usuario, pero son menos peligrosos que el malware. En esta
categoría, por ejemplo, se incluyen los programas publicitarios, marcadores,
programas espía, herramientas de acceso remoto y virus de broma. El término
grayware comenzó a utilizarse en septiembre del 2004.[16][17][18][19]
Estructura
Dentro del código del malware podemos tener un código destinado a aportantes
distintos tipos de funcionalidades:
La carga útil, que es la parte del código relacionada con la actividad maliciosa
que realiza el malware.[20]
Opcionalmente, el malware puede tener un código para su distribución automática, se
le llama reproducción, que propaga el malware a otras ubicaciones. Así, la
infección por el malware puede ser directa, por ejemplo, a través de la ejecución
de programas descargados de la red, o a través de esta reproducción automática.
Usualmente, el malware puede tener un código útil para el usuario destinado a
ocultar la funcionalidad verdadera del software. Es típico ocultar el malware en
plugins o programas de utilidad básica como salvapantallas. Al malware que tiene
este componente se les llama troyanos.
El malware, para realizar alguna de sus funciones, puede hacer uso de programas
legítimos aprovechando sus funcionalidades para, por ejemplo, eliminar, bloquear,
modificar, copiar datos o alterar el rendimiento de computadoras o redes. A este
tipo de programas legítimos se les llama Riskware.[21] Algunos tipos de programas
que son riskware son: utilidades de administración remota, clientes IRC,
descargadores de archivos, monitorizadores de la actividad de la computadora,
utilidades de administración de contraseñas, servidores de Internet (FTP, Web,
proxy, telnet, ...). Es habitual que los antivirus permitan detectar el riskware
instalado.
Tipos
Hay distintos tipos de programas maliciosos, aunque estos pueden pertenecer a
varios tipos a la vez:
Virus: secuencia de código malicioso que se aloja en fichero ejecutable (huésped)
de manera que al ejecutar el programa también se ejecuta el virus. Tienen las
propiedades de propagarse por reproducción dentro de la misma computadora.
Gusano: programa malicioso capaz de ejecutarse por sí mismo. Se propaga por la red
explotando vulnerabilidades para infectar otros equipos.
Troyano: programa que bajo apariencia inofensiva y útil tiene otra funcionalidad
oculta maliciosa. Típicamente, esta funcionalidad suele permitir el control de
forma remota del equipo (administración remota) o la instalación de puertas
traseras que permitan conexiones no autorizadas al equipo. Además, no se
reproducen. Los troyanos conocidos como droppers son usados para empezar la
propagación de un gusano inyectándolo dentro de la red local de un usuario.[22][23]
Bomba lógica: programas que se activan cuando se da una condición determinada
causando daños en el sistema. Las condiciones de ejecución típicas suelen ser que
un contador llegue a un valor concreto o que el sistema esté en una hora o fecha
concreta.
Adware: muestran publicidad no solicitada de forma intrusiva provocando molestias.
Algunos programas shareware permiten usar el programa de manera gratuita a cambio
de mostrar publicidad, en este caso, el usuario acepta la publicidad al instalar el
programa. Este tipo de adware no debería ser considerado malware, pero muchas veces
los términos de uso no son completamente transparentes y ocultan lo que el programa
realmente hace.
Programa espía (spyware): envía información del equipo a terceros sin que el
usuario tenga conocimiento. La información puede ser de cualquier tipo como, por
ejemplo, información industrial, datos personales, contraseñas, tarjetas de
crédito, direcciones de correo electrónico (utilizable para enviarles correos
basura) o información sobre páginas que se visitan (usable para seleccionar el tipo
de publicidad que se le envía al usuario). Los autores de estos programas que
intentan actuar de manera legal pueden incluir unos términos de uso, en los que se
explica de manera imprecisa el comportamiento del programa espía, que los usuarios
aceptan sin leer o sin entender. La mayoría de los programas espías son instalados
como troyanos junto a programas deseables descargados de internet. Sin embargo,
otras veces los programas espías provienen de programas famosos de pago (ej. Red
Shell fue distribuido a través de la plataforma Steam por los propios
desarrolladores de juegos).[24] Los programas espías suelen estar centrado en
obtener tipos específicos de información. Según como operan o la clase de
información al que están orientados, tenemos distintos tipos de programas espías.
Hay que tener en cuenta que un programa espía concreto puede ser de varios tipos a
la vez. Algunos de los tipos más frecuentes son:
Keylogger: software que almacena las teclas pulsadas por el usuario con el fin de
capturar información confidencial. Este tipo de software permite obtener
credenciales, números de tarjeta de crédito, conversaciones de chat, contenido de
correos, direcciones de los sitios web a los que se accede, etc.[25]
Banking Trojan: software que aprovecha vulnerabilidades para adquirir credenciales
de financieras (de bancos, portales financieros por Internet, cartera de
criptomonedas, brókeres por Internet, ...).[25] Además, este tipo de software suele
modificar el contenido de transacciones o de la página web, así como insertar
transacciones adicionales.[25]
Ladrón de contraseñas (del inglés: Password Stealer): software que se encarga de
recopilar cualquier contraseña introducida dentro del dispositivo infectado.[25]
Infostealer: software que roba información sensible guardada en el equipo
(navegadores, clientes de correo, clientes de mensajería instantánea, ...), como
por ejemplo contraseñas, usuarios, direcciones de correo electrónico, ficheros de
log, historial del navegador, información del sistema, hojas de cálculo,
documentos, ficheros multimedia...
Cookies de seguimiento (del inglés: Tracking Cookie) o Cookies de terceros (del
inglés: third-party cookies). Es una cookie que se usa para compartir detalles de
las actividades de navegación realizadas por el usuario entre dos o más sitios o
servicios no relacionados.[26] Suelen estar relacionadas con empresas de publicidad
que tienen algún acuerdo con sitios web y utilizan esa información para realizar
marketing dirigido, orientar y mostrar anuncios de forma tan precisa como sea
posible a segmentos relevantes de usuarios (Adware Tracking Cookie).[27][28]
También pueden utilizarse para crear un perfil y realizar un seguimiento detallado
de la actividad del usuario.[29] Por ejemplo, en 2000 se anunció que la Oficina de
la Casa Blanca de la Política Nacional para el Control de Drogas, en colaboración
con DoubleClick, había usado cookies de terceros para medir la eficacia de una
campaña por Internet antidrogas haciendo seguimiento de quien había clicado en el
anuncio y que páginas fueron vistas a continuación (Cookiegate).[30][31] Google
tiene previsto eliminar el soporte de cookies de terceros en 2023 e imponer el uso
de la API FLoC como sustituto.[32]
Stalkerware. Es un programa espía especialmente diseñado para dispositivos móviles
que tiene como objetivo obtener todo tipo de datos e información de la víctima, su
actividad por Internet y controlar todos sus movimientos.[33]
Malvertising: se aprovecha de recursos disponibles por ser un anunciante
publicitario, para buscar puertas traseras y poder ejecutar o instalar otro
programa malicioso. Por ejemplo, un anunciante publicitario en una página web
aprovecha cualquier brecha de seguridad de navegador para instalar programas
maliciosos.
Ransomware o criptovirus: software que afecta gravemente al funcionamiento del
ordenador infectado (p. ej.: cifra el disco duro o lo bloquea) y le ofrece al
usuario la posibilidad de comprar la clave que permita recuperarse de la
información. En algunas versiones del malware (p. ej. Virus ucash) se enmascara el
ataque como realizado por la policía y el pago como el abono de una multa por haber
realizado una actividad ilegal como, por ejemplo, descargar un software ilegal.
Rogueware: es un falso programa de seguridad que no es lo que dice ser, sino que es
un malware. Por ejemplo, falsos antivirus, antiespía, cortafuegos o similar. Estos
programas suelen promocionar su instalación usando técnicas de scareware, es decir,
recurriendo a amenazas inexistentes como, por ejemplo, alertando de que un virus ha
infectado el dispositivo. En ocasiones también son promocionados como antivirus
reales sin recurrir a las amenazas en la computadora. Una vez instalados en la
computadora, es frecuente que simulen ser la solución de seguridad indicada,
mostrando que han encontrado amenazas y que, si el usuario quiere eliminarlas, es
necesario la versión de completa, la cual es de pago.[34]
Decoy o señuelo: software que imita la interfaz de otro programa para solicitar la
contraseña del usuario y así poder obtener esa información.
Dialer: toman el control del módem dial-up, realizan una llamada a un número de
teléfono de tarificación especial, muchas veces internacional y dejan la línea
abierta cargando el coste de dicha llamada al usuario infectado. La forma más
habitual de infección suele ser en páginas web que ofrecen contenidos gratuitos,
pero que solo permiten el acceso mediante conexión telefónica. Actualmente la
mayoría de las conexiones a Internet son mediante ADSL y no mediante módem, lo cual
hace que los dialers ya no sean tan populares como en el pasado.
Secuestrador de navegador: son programas que realizan cambios en la configuración
del navegador web. Por ejemplo, algunos cambian la página de inicio del navegador
por páginas web de publicidad o páginas pornográficas, otros redireccionan los
resultados de los buscadores hacia anuncios de pago o páginas de phishing bancario.
Wiper: es un malware orientado al borrado masivo de datos. Por ejemplo, discos
duros o bases de datos.[35]
Clipper malware: es un malware que se aprovecha de que los usuarios tienden a, en
lugar de insertar manualmente, copiar cierto tipo de informaciones en el
portapapeles (en inglés clipboard) y luego la utilizan pegándola en donde
necesitan. Lo que hace este tipo de malware es monitorizar el portapapeles y cuando
su contenido se ajusta a ciertos patrones lo reemplaza de manera oculta con lo que
el atacante quiera.[36][37] El uso más habitual de este tipo de aplicaciones es el
secuestro de transacciones de pago al cambiar el destino de estas.[36][38] Lo que
hacen es sustituir dirección de una cartera digital o cartera de criptomonedas,
posible destino de la transacción, copiada en el portapapeles, por una
perteneciente al atacante.[36][37][38] Este tipo de ataque explota la complejidad
inherente a cierto tipo de datos, los cuales son largas cadenas de números y/o
letras que parecen aleatorios.[37] Esto favorece que el usuario se apoye en la
acción de copiar y pegar del portapapeles y además, dificulta que al pegar pueda
ser advertido que el dato ha sido reemplazado.[37]
Criptominado malicioso (del inglés cryptojacking): es un tipo de programa malicioso
que se oculta en un ordenador y se ejecuta sin consentimiento utilizando los
recursos de la máquina (CPU, memoria, ancho de banda, ...) para la minería de
criptomonedas y así obtener beneficios económicos. Este tipo de programa se puede
ejecutar directamente sobre el sistema operativo de la máquina o desde plataforma
de ejecución como el navegador.[39][40]
Cryptostealer o malware para el robo de criptomonedas. Para este cometido es
habitual el uso de Clipper malware, tipo de malware ya visto, diseñado para
controlar el portapapeles y cuando detecta una dirección de criptomonedas,
automáticamente la reemplaza por la del atacante.[36][41] De esta forma, si
queremos realizar una transferencia a la dirección que creemos que tenemos en el
portapapeles, en este caso, iría a la dirección del atacante.[41] Otros malware,
como HackBoss, se centran en robar claves de carteras de criptomonedas.[42]
Web skimming: software que los atacantes instalan en aplicaciones webs de comercio
electrónico con el fin de recopilar información de pago (datos personales y de
tarjetas de crédito, fundamentalmente) de los usuarios que visitan dicho sitio web
comprometido.[43]
Apropiador de formulario: software que permite robar información que es introducida
en formularios web.[44]
Técnicas de evasión
Para que un programa maligno pueda completar sus objetivos es esencial que
permanezca oculto, ya que si es detectado tanto el proceso como el propio malware
serían eliminados, frustrando los objetivos del mismo. Las principales técnicas de
evasión, algunas de ellas calificadas como técnicas de evasión avanzadas (advanced
evasion techniques, AET),[45] son:[46]
Estrategias orientadas a evadir la detección haciendo que el código del malware en
las distintas infecciones sea lo menos identificable posible por patrones de código
o basado en hash. Para implementar este tipo de estrategias se usan técnicas de
cifrado y ofuscación. Las estrategias más importantes son las siguientes:[47]
El cifrado base, o simplemente malware cifrado,[48] que consiste en cifrar una
parte significativa del programa malicioso y tener un descifrador/cargador, el cual
carga en memoria el texto cifrado, lo descifra en memoria y lo ejecuta. La clave
para descifrar puede estar explícita o implícita dentro del mismo descifrador. Es
habitual que cada instancia use una clave distinta, pudiendo cambiar cada cierto
tiempo, teniendo que recifrar el texto y actualizar el cargador en consecuencia.
[49] Dado que los elementos que residen en el disco no exponen comportamientos
maliciosos, hacer detecciones confiables basadas en los componentes no cifrados es
difícil.[50] Las herramientas que a partir de un programa automáticamente generan
otro proceso que realiza el cifrado base son llamadas crypters.[51]
Oligomórfico. Es una forma avanzada de uso del cifrado en el malware que consiste
en tener una colección de descifradores diferentes, eligiéndose uno al azar para
cada nueva víctima. De esta forma, el código cargado no es el mismo en todos los
casos. Esto dificulta su detección, ya que en lugar de comprobar un solo
descifrador, se tiene que comprobar todas sus formas posibles. El número de
posibilidades suele ser de varios centenares.[52][53]
Polimórfico. Es una forma avanzada de uso del cifrado en el malware que consiste en
generar diferentes descifradores a partir de un motor polimórfico incorporado. El
motor polimórfico es un software que permite automáticamente generar un gran número
de descifradores, del orden de millones. Para ello utiliza distintas técnicas de
ofuscación.[54] En 1990 se creó el primer virus polimórfico conocido como V2PX,
también llamado 1260, y en 1992 se creó el primer toolkit polimórfico llamado
Mutation Engine (MtE), el cual permitía crear malware polimórfico.[54]
Metamórfico. Esta técnica se creó debido a la facilidad que tenían las herramientas
antimalware de detectar código malicioso una vez descifrado.[54] Este tipo de
software se basa en el uso de un motor metamórfico integrado dentro del mismo que
muta su código, cambiando por completo el cuerpo del malware, incluido el propio
motor de mutación. El malware metamórfico no tiene parte cifrada y, por lo tanto,
no necesita descifrador. Se trata de malware polimórfico que emplea un motor de
mutación para mutar todo su cuerpo en lugar de modificar sólo el descifrador.[55]
De esta forma, el malware nunca revela su contenido común en memoria, lo que hace
más difícil su detección por parte de sistemas antimalware.[52] Así, cada vez que
se propaga un malware metamórfico bien construido, se genera una nueva versión que
mantendrá el mismo efecto y comportamiento general. Un buen motor metamórfico crea
un número infinito de versiones sin patrones de cadena identificables, lo que hace
que su detección mediante firmas sea prácticamente imposible.[54] Para detectar
este tipo de malware se han de emplear técnicas basadas en el análisis de
comportamiento y heurísticas.[55]
El cifrado de los datos transferidos.[45] Lo habitual es usar cifrado simétrico
debido a que el cifrado asimétrico tiene un coste computacional alto.[56]
Uso de protectores de software para dificultar la detección del malware. Se pueden
utilizar técnicas de empaquetamiento de ejecutables, cifrado y ofuscación.[57]
Infección sin afectar a ficheros (en inglés fileless infections). Infecciones que
no tocan el disco y sólo residen en memoria para evitar la detección. Por ejemplo,
el kit de exploit Angler efectuaba este tipo de infecciones.[58]
Uso del protocolo de Diffie-Hellman de intercambio de claves para ocultar el
tráfico de herramientas de detección de tráfico de red malicioso. Este sistema es
usado por los kits de exploit web Angler y Nuclear.[59]