Analysis of Botnet behavior as a distributed system Marı́a José Erquiaga1,3 , Sebastián Garcı́a2 , and Carlos Garcı́a Garino1 1 ITIC, FIng, FCEN, Universidad Nacional de Cuyo , Mendoza, Argentina , merquiaga@uncu.edu.ar 2 CTU University , Praga, República Checa , sebastian.garcia@agents.fel.cvut.cz 3 ITIC, FIng, FCEN, Universidad Nacional de Cuyo , Mendoza, Argentina , cgarcia@itu.uncu.edu.ar Abstract El crecimiento vertiginoso de nuevas tec- nologı́as, trae aparejado el crecimiento de apli- caciones maliciosas. Estas aplicaciones hacen uso de los recursos de los dispositivos infec- tados para realizar actividades ilı́citas, enviar mails de forma masiva (spam) o minar para obtener criptomonedas. Para minar, se re- Figure 1: Arquitecturas de Botnets quiere grandes capacidades de cómputo Las botnets pueden ser consideradas como un tipo una red y equipadas con un sistema de software dis- de de aplicación de computación distribuı́da. tribuido. Este software permite que los computadores La palabra botnet significa red de robots. Es coordinen sus actividades y compartan recursos. Esta un tipo de malware, instalado en una com- definición hace referencia a dos aspectos importantes: putadora que ha sido infectada, con la habili- los componentes autónomos, es decir, dispositivos que dad de auto propagarse hacia otras máquinas. forman parte de este sistema, y la capacidad de las Todas las computadoras infectadas conforman aplicaciones que funcionan en estos sistemas para tra- la “red de bots”, o botnet. Este tipo de mal- bajar de manera colaborativa. Concretamente, los sis- ware utiliza los recursos de la computadora in- temas distribuı́dos consisten de dispositivos con ca- fectad (CPU, RAM, ancho de banda), para co- pacidad de cómputo interconectados entre sı́, los cuales municarse con su Botnet Master, que es quien funcionan de forma autónoma y que trabajan juntos, le da órdenes. El presente trabajo es un es- aparentando ser un único sistema coherente. tado del arte, se analiza el comportamiento de Por otro lado, las botnets, son un tipo de aplicación las botnets como aplicaciones de computación maliciosa, que pueden consideradas como un tipo de distribuı́da. Se considera el comportamiento de aplicación de Computación Distribuida. La palabra a nivel de consumo de recursos de los dispos- botnet significa red de robots y consiste de un tipo de itivos que son infectados por el malware, en malware que es instalado en una computadora que ha particular los miners. sido infectada y tiene la habilidad de auto propagarse hacia otras máquinas. De esta manera, todas las com- 1 Introducción putadoras infectadas conforman la “red de bots”, o botnet. Posteriormente, cada botnet utiliza los recur- La definición de sistemas distribuı́dos por Tanembaum sos de la computadora infectada (CPU, RAM, memo- et al [8] es la siguiente: Un sistema distribuido es una ria, ancho de banda), para comunicarse con su Botnet colección de computadoras autónomas enlazadas por Master, que es quien le dará las órdenes. La arqui- tectura de este tipo de malware (botnet) puede ser Copyright c by the paper’s authors. Copying permitted for private and academic purposes. centralizada o descentralizada. Éstas arquitecturas se pueden observar en la figura 1, donde (a) es la arqui- In: Proceedings of the IV School of Systems and Networks (SSN 2018), Valdivia, Chile, October 29-31, 2018. Published tectura centralizada y (b) descentralizada. at http://ceur-ws.org La computación distribuida permite resolver prob- lemas de computación masiva mediante el uso de un antes de malware de tipo miner, y se ejecutarán por gran número de computadoras que conforman una red lo menos 3 muestras diferentes de cada uno. En una distribuida. Esto significa, que existen varios dispos- segunda etapa se ejecuta el malware en un entorno de itivos con gran capacidad computacional, conectados laboratorio (un servidor con varias máquinas virtuales entre sı́, resolviendo problemas que tienen la carac- para infectar), y se monitorea el consumo de CPU, terı́stica de ser intensivos en uso de CPU. Las botnets memoria y ancho de banda. Posteriormente, se agre- son un tipo de malware que hacen uso de esta tec- gan otros dispositivos móviles (smartphones, tablets, nologı́a para realizar actividades ilı́cias. Las botnets cámaras IP, raspberries, etc) y se monitorea el com- hacen uso de los recursos de un dispositivo infectado portamiento. El objetivo de esta etapa es obtener una con el fin de obtener beneficios para el botnet master, red hı́brida y analizar el uso de los recursos en dos es- uno de los usos es la obtención de bitcoins. Los bitcoins cenarios posibles: con y sin la capa de virtualización. son una criptomoneda que ha cobrado mucho auge en En el presente trabajo se presenta una descripción los últimos años [5] [7]. Para generar esta moneda, se de los malware de tipo miner (por ejemplo bitcoin realizan operaciones computacionales que requieren de miner o litecoin miner). Se seleccionarán 3 variantes de mucha capacidad de cómputo. Por este motivo, para malware de tipo miner, y se ejecutarán por lo menos realizar sus operaciones se requieren de varios nodos 3 muestras diferentes de cada uno. Se seleccionarán (dispositivos computacionales) que forman parte de la teniendo en cuenta qué tan reciente es el malware y red Bitcoin. Los nodos bitcoin almacenan una lista de la cantidad de dispositivos afectados por el malware. todas las transacciones en una cadena de bloques que Este tipo de malware será utilizado para realizar los ex- se denominan mineros. Luego, todos los mineros de la perimentos y analizar en comportamiento. Este mal- red, compiten para ser los primeros en encontrar una ware fue seleccionado por sus caracterı́sticas similares solución a un problema criptográfico mediante algorit- a las aplicaciones HPC (para los sistemas operativos mos que para ser ejecutados y obtener una solución. windows, linux, android, otros). La similaridad se Para lograr este objetivo, realizan operaciones que de- debe al uso excesivo de memoria RAM y de proce- mandan de grandes capacidades de cómputo. samiento que requieren los miners 1 . Para detectar las aplicaciones maliciosas se real- izan análisis de su comportamiento, se buscan carac- References terı́sticas y se genera un modelo de comportamiento, [1] M. J. Erquiaga, S. Garcı́a, and C. Garcı́a Garino. varios autores han aplicado esta técnica [6, 4, 2, 3]. “Observer effect: How Intercepting HTTPS traf- Para poder obtener resultados reales, se ejecutan apli- fic forces malware to change their behavior”. In: caciones maliciosas en un laboratorio. Esto se realiza Computer Science – CACIC 2017. (2017). teniendo en cuenta una metodologı́a de trabajo, para capturar los datos necesarios para el análisis. En tra- [2] S Garcı́a. “Modelling the Network behaviour of bajos anteriores, se han ejecutado aplicaciones mali- Malware to Block Malicious Patterns. The Strato- ciosas y capturado el tráfico de red, esto ha permi- sphere Project: a Behavioural IPS.” In: Proceed- tido obtener datos para analizar el comportamiento ings of Virus Bulletin Conference 2015. Virus del malware y ası́ comprender su funcionamiento. [1]. Bulletin Conference 2015, Prague (2015). La hipótesis detrás de estos sistemas (Botnets), es [3] S. Garcia et al. “An Empirical Comparison of Bot- que existe un conjunto de operaciones inherentes a net”. In: Detection Methods. Computers Security cada aplicación/software que opera en la red. Este (2014). conjunto de operaciones es similar a una aplicación [4] Firdausi I., Lim C., and Erwin A.and Nugroho HPC, ya que se utilizan los recursos de la PC local A. S. “Analysis of Machine learning Techniques (computadora infectada), y luego hay comunicación Used in Behavior-Based Malware Detection”. In: entre otros bots o entre el bot y el master. Luego, Second International Conference on Advances a partir de la observación y análisis de este compor- in Computing, Control, and Telecommunication tamiento es posible afirmar que las botnets son un tipo Technologies (2010). de aplicación de HPC. Los datos a analizar son: (i) comportamiento del malware, de forma individual (ii) [5] A. Kundu, C. Kundu, and K. Budhraja. “Secu- comportamiento de la botnet, es decir de la red de bots rity Analytics of Network Flow Data of IoT and (iii) análisis del consumo de CPU, memoria y ancho de Mobile Devices”. In: CoRR (2017). url: http : banda. //arxiv.org/abs/1704.03049. El proceso para este estudio consiste de tres etapas. 1 Cryptocurrency Mining Craze Going for Data Centers: En una primera etapa se realiza un análisis del mal- https://www.bitdefender.com/files/News/CaseStudies/study/196/Bitdefender- ware (tipo de malware, cómo se comporta, qué pasos Whitepaper-Cryptocurrency-Mining-Craze-Going-for-Data- Centers-2018.pdf sigue tras la ejecución, etc). Se seleccionarán 3 vari- [6] Erquiaga M.J., Catania C., and Garcia Garino C. “An analysis of network traffic characteristics for Botnet detection”. In: CACIC, WSI (2012). [7] Böhme R. et al. “Bitcoin: Economics, Technology, and Governance.” In: Journal of Economic Per- spectives (2015). [8] Tanenbaum A. S. Sistemas Distribuı́dos: princip- ios y paradigmas. Pearson Educación, 2007.