WebAssembly y el auge de las amenazas de cryptojacking
Explorando los riesgos del cryptojacking con tecnología WebAssembly.
― 7 minilectura
Tabla de contenidos
WebAssembly (Wasm) es una tecnología que permite que las aplicaciones web funcionen mucho más rápido aprovechando las capacidades del hardware de la computadora. Esta tecnología se usa en varias aplicaciones como juegos, reproductores de medios y otras tareas que requieren muchos recursos directamente en los navegadores web. Sin embargo, el ascenso de Wasm también ha presentado nuevos riesgos, especialmente un tipo de ataque cibernético conocido como Cryptojacking.
El cryptojacking es cuando actores maliciosos usan secretamente los recursos de la computadora de una persona para minar criptomonedas sin su consentimiento. Este proceso de minería consume mucha potencia computacional y energía, lo que a menudo provoca una reducción en el rendimiento del dispositivo y un aumento en las facturas de electricidad para la víctima.
Aunque se han introducido muchas medidas para combatir el cryptojacking, entender cómo funcionan estos ataques y cómo apuntan a WebAssembly es crucial para desarrollar defensas efectivas.
La Naturaleza del Cryptojacking
La minería de criptomonedas implica resolver problemas complejos para validar transacciones en un sistema de blockchain. Los mineros reciben nuevas criptomonedas como recompensa por sus esfuerzos, lo que incentiva la participación en el mantenimiento de la red. Sin embargo, a medida que la minería se vuelve más difícil y competitiva, el margen de lucro se reduce. Aquí es donde el cryptojacking se vuelve atractivo para los hackers, ya que pueden explotar los recursos de otra persona sin incurrir en los costos de la minería.
Hay dos tipos principales de cryptojacking: basado en host y basado en navegador. El cryptojacking basado en host requiere la instalación de software de minería en la máquina de la víctima, a menudo a través de descargas maliciosas. El cryptojacking basado en navegador, por otro lado, utiliza scripts incrustados en sitios web infectados que se ejecutan en los navegadores de los visitantes para minar criptomonedas, lo que lo hace menos obvio y más difícil de detener.
Detección de Actividad Maliciosa
Detectar Malware, incluidos los amenazas de cryptojacking, sigue siendo un enfoque importante dentro de la ciberseguridad. Muchos métodos buscan identificar binarios maliciosos. Por ejemplo:
Análisis Estático: Esto implica examinar un archivo binario sin ejecutarlo. Las técnicas incluyen hacer coincidir firmas dañinas conocidas o bloquear ciertas URL. Sin embargo, a menudo se pueden eludir estos métodos a través de trucos de codificación como la ofuscación.
Análisis Dinámico: Este método implica ejecutar el binario y monitorear su comportamiento, como el uso de recursos o llamadas a API. Este enfoque es más efectivo pero puede ser intensivo en recursos y puede requerir que se ejecute el malware para revelar su verdadera naturaleza.
Clasificadores de Aprendizaje automático: Estos sistemas analizan archivos binarios utilizando modelos entrenados con datos para separar programas benignos de los dañinos. Aunque son prometedores, estos modelos pueden tener dificultades con métodos de ataque sofisticados.
Un sistema de detección notable es Minos, que clasifica binarios Wasm convirtiéndolos en imágenes antes de evaluarlos utilizando aprendizaje automático. Esta técnica permite una detección rápida pero no es infalible, ya que los atacantes continuamente encuentran formas de eludir estos sistemas.
Explicación de Ataques adversariales
Los modelos de aprendizaje profundo, incluidos los utilizados en sistemas de detección de malware, tienen vulnerabilidades conocidas como ataques adversariales. Estos ocurren cuando los atacantes ajustan sutilmente los datos de entrada, como agregar ruido a una imagen, para engañar al modelo y que lo clasifique incorrectamente. Aunque estos ataques son más simples con imágenes, aplicar las mismas ideas a archivos binarios (como software) es más complejo porque alterar un binario puede hacerlo inutilizable.
Al introducir cambios menores que mantienen la función general de un binario pero alteran su clasificación al ser escaneado, los atacantes pueden evadir la detección. Aquí es donde entra en juego el concepto de "ejemplos adversariales", donde ajustes específicos llevan a diferentes salidas de los modelos de aprendizaje automático.
Creación de Binarios Adversariales Funcionales
Para demostrar este concepto en acción, supongamos que un atacante quiere evadir la detección de Minos. El proceso se puede resumir de la siguiente manera:
Recolección de Datos: Primero, se crea un conjunto de datos robusto de binarios Wasm tanto benignos como dañinos. Este conjunto de datos es crucial para entrenar un modelo sustituto que imite el comportamiento del clasificador objetivo.
Entrenamiento del Modelo: Se entrena un modelo sustituto local utilizando los ejemplos benignos y maliciosos. El objetivo es crear un modelo que se parezca mucho al clasificador que el atacante quiere explotar, permitiéndoles generar ejemplos adversariales.
Inserción de Gadgets: Los atacantes insertan pequeñas piezas de código (gadgets) en los binarios. Estos gadgets pueden contener cargas útiles adversariales, que son pequeñas piezas de datos que pueden ajustarse durante la fase del ataque. Esto permite a los atacantes cambiar el binario sin modificar su funcionalidad.
Generación de Binarios Perturbados: Usando el modelo sustituto, los atacantes ajustan los gadgets en el binario hasta que la clasificación de salida cambie de maliciosa a benigna. Las modificaciones están diseñadas para ser mínimas para que no comprometan las funciones originales del programa.
Finalización del Ataque: Después de crear el binario modificado con los gadgets insertados, estos nuevos binarios se prueban contra Minos para ver si se clasifican erróneamente como benignos.
Evaluación de la Efectividad del Ataque
Una vez que se generan los binarios adversariales, se puede medir la efectividad del ataque:
Tasa de Éxito: Esto indica con qué frecuencia los binarios alterados son clasificados incorrectamente por el sistema de detección. Si la mayoría de los binarios modificados pasan como benignos, se considera que el ataque ha sido exitoso.
Eficiencia de los Gadgets: También es necesario evaluar la eficiencia de los gadgets para evadir la detección. Por ejemplo, los gadgets que requieren cambios mínimos y mantienen el tamaño y rendimiento original del binario se consideran más efectivos.
Impactos en el Rendimiento: Es crucial analizar cómo la adición de gadgets impacta el tiempo de ejecución y el tamaño del binario. Un buen ataque adversarial debería afectar mínimamente el rendimiento del binario mientras sigue siendo efectivo contra los sistemas de detección.
Contramedidas Contra Ataques Adversariales
Dada la potencialidad de los ataques adversariales para interrumpir los sistemas de detección, se pueden emplear varias contramedidas:
Modelos de Detección Mejorados: Fortalecer los modelos de aprendizaje automático contra entradas adversariales puede implicar crear conjuntos de datos más robustos o utilizar técnicas que integren ejemplos adversariales en el proceso de entrenamiento.
Herramientas de Inspección: Incorporar herramientas que examinen los binarios en busca de patrones o modificaciones inusuales podría ayudar a atrapar binarios alterados antes de que se ejecuten.
Actualizaciones Regulares: Asegurarse de que los marcos de detección se actualicen frecuentemente con nuevos datos sobre amenazas emergentes puede mantener estos sistemas relevantes y efectivos.
Enfoques Híbridos: Usar una combinación de análisis estático y dinámico puede ofrecer un enfoque más integral para detectar actividad maliciosa.
Si bien estos métodos pueden mejorar las defensas, es esencial reconocer que ningún sistema es completamente a prueba de adversarios decididos.
Conclusión
WebAssembly ha abierto nuevas avenidas para el desarrollo web, pero también ha introducido desafíos en el ámbito de la ciberseguridad. El cryptojacking y otras actividades maliciosas explotan sus fortalezas, haciendo que la detección y prevención sean críticas. Comprender y mitigar los ataques adversariales en los clasificadores de aprendizaje automático que combaten estas amenazas es esencial para mejorar la seguridad en línea.
A medida que las amenazas cibernéticas evolucionan, también deben hacerlo las técnicas y herramientas utilizadas para combatirlas. Es necesaria una investigación continua para desarrollar sistemas de detección más robustos capaces de soportar técnicas de evasión sofisticadas y garantizar la seguridad de los usuarios y sus recursos informáticos.
Título: Madvex: Instrumentation-based Adversarial Attacks on Machine Learning Malware Detection
Resumen: WebAssembly (Wasm) is a low-level binary format for web applications, which has found widespread adoption due to its improved performance and compatibility with existing software. However, the popularity of Wasm has also led to its exploitation for malicious purposes, such as cryptojacking, where malicious actors use a victim's computing resources to mine cryptocurrencies without their consent. To counteract this threat, machine learning-based detection methods aiming to identify cryptojacking activities within Wasm code have emerged. It is well-known that neural networks are susceptible to adversarial attacks, where inputs to a classifier are perturbed with minimal changes that result in a crass misclassification. While applying changes in image classification is easy, manipulating binaries in an automated fashion to evade malware classification without changing functionality is non-trivial. In this work, we propose a new approach to include adversarial examples in the code section of binaries via instrumentation. The introduced gadgets allow for the inclusion of arbitrary bytes, enabling efficient adversarial attacks that reliably bypass state-of-the-art machine learning classifiers such as the CNN-based Minos recently proposed at NDSS 2021. We analyze the cost and reliability of instrumentation-based adversarial example generation and show that the approach works reliably at minimal size and performance overheads.
Autores: Nils Loose, Felix Mächtle, Claudius Pott, Volodymyr Bezsmertnyi, Thomas Eisenbarth
Última actualización: 2023-05-24 00:00:00
Idioma: English
Fuente URL: https://arxiv.org/abs/2305.02559
Fuente PDF: https://arxiv.org/pdf/2305.02559
Licencia: https://creativecommons.org/licenses/by/4.0/
Cambios: Este resumen se ha elaborado con la ayuda de AI y puede contener imprecisiones. Para obtener información precisa, consulte los documentos originales enlazados aquí.
Gracias a arxiv por el uso de su interoperabilidad de acceso abierto.