INVESTIGACIÓN EN (JNIC2021 LIVE) - Manuel A. Serrano - Eduardo Fernández-Medina Cristina Alcaraz - Noemí de Castro - Guillermo Calvo
←
→
Transcripción del contenido de la página
Si su navegador no muestra la página correctamente, lea el contenido de la página a continuación
EDITORES: Manuel A. Serrano - Eduardo Fernández-Medina Cristina Alcaraz - Noemí de Castro - Guillermo Calvo Actas de las VI Jornadas Nacionales (JNIC2021 LIVE) INVESTIGACIÓN EN
Investigación en Ciberseguridad Actas de las VI Jornadas Nacionales ( JNIC2021 LIVE) Online 9-10 de junio de 2021 Universidad de Castilla-La Mancha
Investigación en Ciberseguridad Actas de las VI Jornadas Nacionales ( JNIC2021 LIVE) Online 9-10 de junio de 2021 Universidad de Castilla-La Mancha Editores: Manuel A. Serrano, Eduardo Fernández-Medina, Cristina Alcaraz Noemí de Castro Guillermo Calvo Cuenca, 2021
© de los textos e ilustraciones: sus autores © de la edición: Universidad de Castilla-La Mancha Edita: Ediciones de la Universidad de Castilla-La Mancha. Colección JORNADAS Y CONGRESOS n.º 34 © de los textos: sus autores. © de la edición: Universidad de Castilla-La Mancha. © de los textos e ilustraciones: sus autores © de la edición: Universidad de Castilla-La Mancha Edita: Ediciones Esta de la Universidad editorial esdemiembro Castilla-Lade Mancha la UNE, lo que garantiza la difusión y comercialización de sus publicaciones a nivel nacional e internacional Colección JORNADAS Edita: Ediciones de YlaCONGRESOS Universidad de n.º Castilla-La 34 Mancha. Colección JORNADAS Y CONGRESOS n.º 34 I.S.B.N.: 978-84-9044-463-4 Esta editorial es miembro de la UNE, lo que garantiza la difusión y comercialización de sus publi- caciones a nivel nacional e internacional. D.O.I.: http://doi.org/10.18239/jornadas_2021.34.00 Esta editorial es miembro de la UNE, lo que garantiza la difusión y I.S.B.N.: 978-84-9044-463-4 comercialización de sus publicaciones a nivel nacional e internacional D.O.I.: http://doi.org/10.18239/jornadas_2021.34.00 I.S.B.N.: Esta obra 978-84-9044-463-4 se encuentra bajo una licencia internacional Creative Commons CC BY 4.0. D.O.I.: http://doi.org/10.18239/jornadas_2021.34.00 Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta Esta obra se encuentra bajo una licencia internacional Creative Commons CC BY 4.0. obra no incluida en la licencia Creative Commons CC BY 4.0 solo puede ser realizada con la Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra no incluida autorización en expresa la licencia Creative de los CC Commons titulares, salvopuede BY 4.0 solo excepción prevista ser realizada con la por la ley. Puede autorización Vd. expresa de losacceder titulares, al texto completo de la licencia en este enlace: salvo excepción prevista por la ley. Puede Vd. acceder al texto completo de la licencia en este enlace: https:// https://creativecommons.org/licenses/by/4.0/deed.es creativecommons.org/licenses/by/4.0/deed.es Esta obra se encuentra bajo una licencia internacional Creative Commons CC BY 4.0. Hecho en España (U.E.) – Made in Spain (E.U.) Hecho en España Cualquier forma de(U.E.) – Made indistribución, reproducción, Spain (E.U.)comunicación pública o transformación de esta obra no incluida en la licencia Creative Commons CC BY 4.0 solo puede ser realizada con la autorización expresa de los titulares, salvo excepción prevista por la ley. Puede Vd. acceder al texto completo de la licencia en este enlace: https://creativecommons.org/licenses/by/4.0/deed.es Hecho en España (U.E.) – Made in Spain (E.U.)
Bienvenida del Comité Organizador Tras la parada provocada por la pandemia en 2020, las VI Jornadas Nacionales de Investiga- ción en Ciberseguridad ( JNIC) vuelven el 9 y 10 de Junio del 2021 con energías renovadas, y por primera vez en su historia, en un formato 100% online. Esta edición de las JNIC es organizada por los grupos GSyA y Alarcos de la Universidad de Castilla-La Mancha en Ciudad Real, y con la activa colaboración del comité ejecutivo, de los presidentes de los distintos comités de programa y del Instituto Nacional de Ciberseguridad (INCIBE). Continúa de este modo la senda de consolidación de unas jornadas que se celebraron por primera vez en León en 2015 y le siguieron Granada, Madrid, San Sebastián y Cáceres, consecutivamente hasta 2019, y que, en condiciones normales se habrían celebrado en Ciudad Real en 2020. Estas jornadas se han convertido en un foro de encuentro de los actores más relevantes en el ámbito de la ciberseguridad en España. En ellas, no sólo se presentan algunos de los trabajos científicos punteros en las diversas áreas de ciberseguridad, sino que se presta especial atención a la formación e innovación educativa en materia de ciberseguridad, y también a la conexión con la industria, a través de propuestas de transferencia de tecnología. Tanto es así que, este año se presentan en el Programa de Transferencia algunas modificaciones sobre su funcionamiento y desarrollo que han sido diseñadas con la intención de mejorarlo y hacerlo más valioso para toda la comunidad investigadora en ciberseguridad. Además de lo anterior, en las JNIC estarán presentes excepcionales ponentes (Soledad Antelada, del Lawrence Berkeley National Laboratory, Ramsés Gallego, de Micro Focus y Mónica Mateos, del Mando Conjunto de Ciberdefensa) mediante tres charlas invitadas y se desarrollarán dos mesas redondas. Éstas contarán con la participación de las organizaciones más relevantes en el panorama industrial, social y de emprendimiento en relación con la ciber- seguridad, analizando y debatiendo el papel que está tomando la ciberseguridad en distintos ámbitos relevantes. En esta edición de JNIC se han establecido tres modalidades de contribuciones de inves- tigación, los clásicos artículos largos de investigación original, los artículos cortos con investi- gación en un estado más preliminar, y resúmenes extendidos de publicaciones muy relevantes y de alto impacto en materia de ciberseguridad publicados entre los años 2019 y 2021. En el caso de contribuciones de formación e innovación educativa, y también de transferencias se han considerado solamente artículos largos. Se han recibido para su valoración un total de 86 7
Bienvenida del Comité Organizador contribuciones organizadas en 26, 27 y 33 artículos largos, cortos y resúmenes ya publicados, de los que los respectivos comités de programa han aceptado 21, 19 y 27, respectivamente. En total se ha contado con una ratio de aceptación del 77%. Estas cifras indican una participación en las jornadas que continúa creciendo, y una madurez del sector español de la ciberseguridad que ya cuenta con un volumen importante de publicaciones de alto impacto. El formato online de esta edición de las jornadas nos ha motivado a organizar las jornadas de modo más compacto, distinguiendo por primera vez entre actividades plenarias (charlas invitadas, mesas redondas, sesión de formación e innovación educativa, sesión de transfe- rencia de tecnología, junto a inauguración y clausura) y sesiones paralelas de presentación de artículos científicos. En concreto, se han organizado 10 sesiones de presentación de artículos científicos en dos líneas paralelas, sobre las siguientes temáticas: detección de intrusos y gestión de anomalías (I y II), ciberataques e inteligencia de amenazas, análisis forense y cibercrimen, ciberseguridad industrial, inteligencia artificial y ciberseguridad, gobierno y riesgo, tecnologías emergentes y entrenamiento, criptografía, y finalmente privacidad. En esta edición de las jornadas se han organizado dos números especiales de revistas con elevado factor de impacto para que los artículos científicos mejor valorados por el comité de programa científico puedan enviar versiones extendidas de dichos artículos. Adicionalmente, se han otorgado premios al mejor artículo en cada una de las categorías. En el marco de las JNIC también hemos contado con la participación de la Red de Excelencia Nacional de Investigación en Ciberseguridad (RENIC), impulsando la ciberseguridad a través de la entrega de los premios al Mejor Trabajo Fin de Máster en Ciberseguridad y a la Mejor Tesis Doctoral en Ciberseguridad. Tam- bién se ha querido acercar a los jóvenes talentos en ciberseguridad a las JNIC, a través de un CTF (Capture The Flag) organizado por la Universidad de Extremadura y patrocinado por Viewnext. Desde el equipo que hemos organizado las JNIC2021 queremos agradecer a todas aquellas personas y entidades que han hecho posible su celebración, comenzando por los autores de los distintos trabajos enviados y los asistentes a las jornadas, los tres ponentes invitados, las personas y organizaciones que han participado en las dos mesas redondas, los integrantes de los distintos comités de programa por sus interesantes comentarios en los procesos de revisión y por su colaboración durante las fases de discusión y debate interno, los presidentes de las sesiones, la Universidad de Extremadura por organizar el CTF y la empresa Viewnext por patrocinarlo, los técnicos del área TIC de la UCLM por el apoyo con la plataforma de comu- nicación, los voluntarios de la UCLM y al resto de organizaciones y entidades patrocinadoras, entre las que se encuentra la Escuela Superior de Informática, el Departamento de Tecnologías y Sistemas de Información y el Instituto de Tecnologías y Sistemas de Información, todos ellos de la Universidad de Castilla-La Mancha, la red RENIC, las cátedras (Telefónica e Indra) y aulas (Avanttic y Alpinia) de la Escuela Superior de Informática, la empresa Cojali, y muy especialmente por su apoyo y contribución al propio INCIBE. Manuel A. Serrano, Eduardo Fernández-Medina Presidentes del Comité Organizador Cristina Alcaraz Presidenta del Comité de Programa Científico Noemí de Castro Presidenta del Comité de Programa de Formación e Innovación Educativa Guillermo Calvo Flores Presidente del Comité de Transferencia Tecnológica 8
Índice General Comité Ejecutivo.............................................................................................. 11 Comité Organizador........................................................................................ 12 Comité de Programa Científico....................................................................... 13 Comité de Programa de Formación e Innovación Educativa........................... 15 Comité de Transferencia Tecnológica............................................................... 17 Comunicaciones Sesión de Investigación A1: Detección de intrusiones y gestión de anomalías I 21 Sesión de Investigación A2: Detección de intrusiones y gestión de anomalías II 55 Sesión de Investigación A3: Ciberataques e inteligencia de amenazas............. 91 Sesión de Investigación A4: Análisis forense y cibercrimen............................. 107 Sesión de Investigación A5: Ciberseguridad industrial y aplicaciones.............. 133 Sesión de Investigación B1: Inteligencia Artificial en ciberseguridad............... 157 Sesión de Investigación B2: Gobierno y gestión de riesgos.............................. 187 Sesión de Investigación B3: Tecnologías emergentes y entrenamiento en ciberseguridad................................................................................................... 215 Sesión de Investigación B4: Criptografía.......................................................... 235 Sesión de Investigación B5: Privacidad............................................................. 263 Sesión de Transferencia Tecnológica................................................................ 291 Sesión de Formación e Innovación Educativa.................................................. 301 Premios RENIC.............................................................................................. 343 Patrocinadores................................................................................................. 349 9
Comité Ejecutivo Juan Díez González INCIBE Luis Javier García Villalba Universidad de Complutense de Madrid Eduardo Fernández-Medina Patón Universidad de Castilla-La Mancha Guillermo Suárez-Tangil IMDEA Networks Institute Andrés Caro Lindo Universidad de Extremadura Pedro García Teodoro Universidad de Granada. Representante de red RENIC Noemí de Castro García Universidad de León Rafael María Estepa Alonso Universidad de Sevilla Pedro Peris López Universidad Carlos III de Madrid 11
Comité Organizador Presidentes del Comité Organizador Eduardo Fernández-Medina Patón Universidad de Castilla-la Mancha Manuel Ángel Serrano Martín Universidad de Castilla-la Mancha Finanzas David García Rosado Universidad de Castilla-la Mancha Luis Enrique Sánchez Crespo Universidad de Castilla-la Mancha Actas Antonio Santos-Olmo Parra Universidad de Castilla-la Mancha Difusión Julio Moreno García-Nieto Universidad de Castilla-la Mancha José Antonio Cruz Lemus Universidad de Castilla-la Mancha María A Moraga de la Rubia Universidad de Castilla-la Mancha Webmaster Aurelio José Horneros Cano Universidad de Castilla-la Mancha Logística y Organización Ignacio García-Rodriguez de Guzmán Universidad de Castilla-la Mancha Ismael Caballero Muñoz-Reja Universidad de Castilla-la Mancha Gregoria Romero Grande Universidad de Castilla-la Mancha Natalia Sanchez Pinilla Universidad de Castilla-la Mancha 12
Comité de Programa Científico Presidenta Cristina Alcaraz Tello Universidad de Málaga Miembros Aitana Alonso Nogueira INCIBE Marcos Arjona Fernández ElevenPaths Ana Ayerbe Fernández-Cuesta Tecnalia Marta Beltrán Pardo Universidad Rey Juan Carlos Carlos Blanco Bueno Universidad de Cantabria Jorge Blasco Alís Royal Holloway, University of London Pino Caballero-Gil Universidad de La Laguna Andrés Caro Lindo Universidad de Extremadura Jordi Castellà Roca Universitat Rovira i Virgili José M. de Fuentes García-Romero de Tejada Universidad Carlos III de Madrid Jesús Esteban Díaz Verdejo Universidad de Granada Josep Lluis Ferrer Gomila Universitat de les Illes Balears Dario Fiore IMDEA Software Institute David García Rosado Universidad de Castilla-La Mancha Pedro García Teodoro Universidad de Granada Luis Javier García Villalba Universidad Complutense de Madrid Iñaki Garitano Garitano Mondragon Unibertsitatea Félix Gómez Mármol Universidad de Murcia Lorena González Manzano Universidad Carlos III de Madrid María Isabel González Vasco Universidad Rey Juan Carlos I Julio César Hernández Castro University of Kent Luis Hernández Encinas CSIC Jorge López Hernández-Ardieta Banco Santander Javier López Muñoz Universidad de Málaga Rafael Martínez Gasca Universidad de Sevilla Gregorio Martínez Pérez Universidad de Murcia 13
David Megías Jiménez Universitat Oberta de Cataluña Luis Panizo Alonso Universidad de León Fernando Pérez González Universidad de Vigo Aljosa Pasic ATOS Ricardo J. Rodríguez Universidad de Zaragoza Fernando Román Muñoz Universidad Complutense de Madrid Luis Enrique Sánchez Crespo Universidad de Castilla-La Mancha José Soler Technical University of Denmark-DTU Miguel Soriano Ibáñez Universidad Politécnica de Cataluña Victor A. Villagrá González Universidad Politécnica de Madrid Urko Zurutuza Ortega Mondragon Unibertsitatea Lilian Adkinson Orellana Gradiant Juan Hernández Serrano Universitat Politécnica de Cataluña 14
Comité de Programa de Formación e Innovación Educativa Presidenta Noemí De Castro García Universidad de León Miembros Adriana Suárez Corona Universidad de León Raquel Poy Castro Universidad de León José Carlos Sancho Núñez Universidad de Extremadura Isaac Agudo Ruiz Universidad de Málaga Ana Isabel González-Tablas Ferreres Universidad Carlos III de Madrid Xavier Larriva Universidad Politécnica de Madrid Ana Lucila Sandoval Orozco Universidad Complutense de Madrid Lorena González Manzano Universidad Carlos III de Madrid María Isabel González Vasco Universidad Rey Juan Carlos David García Rosado Universidad de Castilla - La Mancha Sara García Bécares INCIBE 15
Comité de Transferencia Tecnológica Presidente Guillermo Calvo Flores INCIBE Miembros José Luis González Sánchez COMPUTAEX Marcos Arjona Fernández ElevenPaths Victor Villagrá González Universidad Politécnica de Madrid Luis Enrique Sánchez Crespo Universidad de Castilla – La Mancha 17
Sesión de Investigación A1: Detección de intrusiones y gestión de anomalías I http://doi.org/10.18239/jornadas_2021.34.07 Automating Intrusion Detection Systems in Smart Contracts Xabier Echeberria-Barrio∗‡ , Francesco Zola∗†§ , Lander Segurola-Gil∗ , Raul Orduna-Urrutia∗ ∗ Vicomtech Foundation, Basque Research and Technology Alliance (BRTA) Paseo Mikeletegi 57, 20009 Donostia/San Sebastian, Spain {xetxeberria, fzola, lsegurola, rorduna}@vicomtech.org † Institute of Smart Cities, Public University of Navarre, 31006 Pamplona, Spain ORCID: ‡ 0000-0001-6836-2890, § 0000-0002-1733-5515 Abstract—Blockchain technology has gained a lot of relevance In this work, the goal has been to protect smart contracts in recent years, specifically the smart connect functionality, after deployment by developing an IDS based on the Con- due to its great potential to decentralize different day-to-day tractGuard idea of studying transactions as paths. However, scenarios. This technology brings many advantages thanks to its immutability, specifically smart contracts give blockchain a very the proposed IDS instead of relying on an administrator, relies great versatility. However, these smart contracts can bring many on machine learning (automating the system) that will tell us if threats to the blockchain, considering that vulnerabilities they a path is anomalous or not through some features. In addition, may have, which are immutable once deployed, can be exploited to obtain important data for each route, several features have to attack them. Several studies have focused on studying these been calculated, from which the machine learning model vulnerabilities in order to identify and fix them, thus deploying smart contracts in a secure way. learns. Thus, this paper presents an automated smart contract This study has focused on developing an intrusion detection intrusion detection system. system (IDS) based on the path study. This IDS is deployed The rest of the paper is divided as follows: Section II with the smart contract to be defended, which will monitor the explains the presented intrusion detection system, detailing transactions received by the defended smart contract looking each component. Finally, the first results are presented in at where the transaction comes from. This generates a path in the blockchain network, which will have some characteristics section III-B. that are extracted and analyzed. This will detect possible threats received. Our approach suggests the implementation of an II. M ETHODOLOGY automated IDS in the smart contracts to defend them from possible threats. A. Problem description Index Terms—Cybersecurity analysis, Behavioural classifica- tion, Smart contract analysis, Intrusion Detection In recent years, many vulnerability detection studies have Tipo de contribución: Investigación en desarollo analyzed the security of smart contracts with the aim of increasing their resilience and their ability to prevent cyber- attacks. In particular, this need has increased since several I. I NTRODUCTION attacks on different blockchains, such as Ethereum, and the In 2009 blockchain technology was first introduced and millions of dollars in losses they have caused, were identified. has been gaining interest in recent years. This technology These attacks were able to be carried out thanks to the started as a distributed ledger for peer-to-peer payments, existence of vulnerabilities in smart contracts. These attacks but has evolved by adding programmable transactions, thus and vulnerabilities are compiled in [1], [2]. introducing the concept of smart contracts. 1) Re-entrancy vulnerability: This consists of the possi- By adding the functionality of smart contracts, Ethereum bility to re-entering to smart contract by calling non- revolutionized blockchain technology. Smart contracts can be recursive functions before their completion. considered complete programs that run on the blockchain, 2) Gasless vulnerability: This consists of the possibility to where they are deployed by transactions and generate a new occur a out-of-gas, stopping the process. block for the blockchain. A smart contract can be developed 3) Overflow/underflow vulnerability: This consists of the for many purposes and can execute transactions with assets possibility to pass a combination of input values of considerable value. Each user can send a transaction to that generate a result larger/smaller than the maxi- the contract address, executing the contract. Furthermore, mum/minimum value that the data type can contain. all transactions and parameters are visible to everyone, so 4) Denial of service vulnerability: This consists of the they are subject to intense hacking activity. These bugs are possibility to become the smart contract inoperable for exploited as vulnerabilities to exploit for malicious purposes a short period of time, or in some cases permanently and may not be patched. In 2016, Ethereum suffered the 5) Keep private vulnerability: This allows information that DAO attack [1], where the adversary took advantage of a should be private to be obtained from the smart contract. re-entry vulnerability, to manage to drain more than $150 6) Superficial randomness vulnerability: This appears million cryptocurrencies from some smart contract. Therefore, when the smart contract makes decisions using state this kind of attacks increase the need to study smart contract variables such as the timestamp of transactions, as these vulnerabilities, in order to fix them before their deployment. variables can be manipulated by miners. 49
Sesión de Investigación A1: Detección de intrusiones y gestión de anomalías I 7) Dangerous delegatecall vulnerability: appears when a each time the smart contract is called. In such cases, the contract uses delegatecall to carry out an external func- smart contract sends the received transaction information to tion, executing it in the context of the calling contract. the developed IDS (Fig. 1). This information is received by Many commonly used smart contracts can be vulnerable the path monitoring which monitors where the call comes to serious malicious attacks, for this several methods are from, generating the path from the first user encountered. This implemented to address the flaws and to update the software generated path is passed to the feature extractor, computing to improve its performance and functionality after or before the determined attributes, which are sent to the detector. delivery [3]. Finally, the detector makes the decision whether the path is Most of them have focused on detecting vulnerabilities anomalous or not. If it is anomalous, the smart contract does to avoid deploying smart contracts with them, since once not carry out the received call and if it is not anomalous, it deployed smart contracts are immutable. These developed executes the function normally. tools are offline checking methods to prevent attacks that can exploit these vulnerabilities. However, the IDS developed in 1) Path monitoring: This component calculates the path this work is an online checking method to avoid these attacks, from which the received transactions come from. It takes the since it defends the smart contract once deployed. This type address that sends the call and using the blockchain, adds of tool, has also been proposed [4]–[11], among which is the the previous addresses if these addresses are related through IDS on which this work is based [2]. transactions. In particular, it collects the historical information B. Paths in Blockchain related to each address. This process is repeated until the related address is a user address, which represents the end of A path in a graph is a finite or infinite sequence of the process being the last address in the route. Once the path edges that joins a sequence of vertices. When working on calculation is finished, it is reversed. Therefore, the generated blockchain, concretely in Ethereum, it can be represented as paths start with the user address and continues with at least a graph, where the edges are the transactions and the vertices one smart contract address, where the last address is the one or nodes are the used addresses. Thus, the term path makes that sent the transaction. In addition, these generated paths sense in the context of the blockchain. The Ethereum nodes contain more details about themselves. These details are the can be of two different types: user nodes or smart contract values of each transaction of the paths, the duration time nodes. These nodes are the vertices of the paths that exist in of the paths and the function of the smart contract that has the Ethereum. This work will focus on a type of path that been called. Therefore, each time a transaction arrives at the can be found in the Ethereum. These paths are formed by a smart contract, the path monitoring generates a path with these user node that will be the first one in the path and one or features and sends it to the feature extractor. more smart contract nodes, which will be all but the first one. Mathematically, being a1 , a2 , . . . , an , the nodes of the path A, for n > 1, then we will work with paths A, where a1 is a 2) Feature extractor: This component receives the path user node and a2 , . . . , an are smart contract nodes. from the path monitoring, and it extracts the features which The paths, from which the received transactions come, the detector needs to compute the classification. The feature give extra information, which helps in detecting whether a extractor uses every detail that the received path has in order received transaction is a threat or not. Thus, if the path of to generate several features, representing that path in the most the received transaction is anomalous, it could mean that this appropriate way. These attributes are used to detect generated call is malicious. When working with machine learning it threats by different vulnerabilities that smart contracts may is possible enhance the ability to describe the path adding have. Therefore, the appropriate attributes are those that char- new attributes of the paths to be studied. Thus, the machine acterize known threats. Thus, the feature extractor component learning model will be able to detect such attacks through the generates a vector with these explained features of each path features of the paths. The Table I shows which of mentioned it received from path monitoring. Once the feature vector is vulnerabilities can be detected through path study and which computed, it is used as input for the next component, called can not be detected. detector. TABLE I: Characterization of attacks on paths 3) Detector: The aim of this module is to detect path Attacks Perceptible by Paths anomaly analyzing the input feature vector. The idea is to Re-entrancy Yes. Generate a cyclic paths discover and classify the anomalous smart contract paths. Gasless Yes. Gas costs can be represented Once this model predicts whether the input is anomalous or Overflow/Underflow Yes. Suspicious values can be characterized Denial of service Yes. Loops are type of paths not, if the prediction is anomalous, the received call is not Superficial randomness None. carried out. Otherwise, if the prediction is non-anomalous, the Keep private None. received call is executed, modifying the state of the defended Dangerous delegatecall Yes. The functions called can be characterized smart contract. The life of this detector consists of two steps: training and prediction. In the first one, a part of the path dataset obtained in the previous phase is used to train the C. Intrusion Detection System deep learning model. In the second one, the remained part The developed IDS defends smart contracts that contain of the dataset is used to test the classifier and evaluate the a communication with it. This communication is executed received path detecting anomalous activities. 50
Sesión de Investigación A1: Detección de intrusiones y gestión de anomalías I Fig. 1: Proposed IDS for smart contracts III. VALIDATION in two groups, training data and test data. Those sets were A. Experiment generated randomly and both contained anomalous and no anomalous paths. In this work, Contract Calls dataset from XBlock1 platform With this pre-processing of the data completed, work began is used for the train phase of the Detector. As described on the detector. The model was trained with the training data in [12], this dataset is an Ethereum dataset, which contains and then evaluated with the test data. Therefore, the developed on-chain information about the smart contract activities. The IDS was obtained, generating the first automated intrusion Contract Calls is formed by historical activities of Ethereum detector system for smart contracts, as far as we know. smart contracts and each activity (row) is composed by 11 columns (Tab. II). The Contract Calls dataset contains attacks, B. Results which Ethereum suffered, such as mentioned DAO attack. Taking the training data, the set used for the training Those attacks are represented in isError column. In particular, phase, the model gave a result of 79.30% accuracy in the in this study, the generated paths have been labeled using this detection of anomalous and non-anomalous paths. However, attribute. The paths are labelled as 0 if they contain at most when tested with the test data, the detector gave an accuracy one error or 1 if they contains two or more errors. of 70.20%. For more complete results, we will work with the entire dataset, taking into account the largest number of paths TABLE II: The dataset of the Contract Calls generated in the Ethereum history. Thus obtaining a more Columns First row reliable model and a model that knows more types of paths, BlockNumber 6000000 which could be unknown types of paths for the developed Timestamp TransactionHash 1532118564 0xea55aae509250286c601c22b5b6090f5c985b1d11d3cdc6ea00b919bc4641ad2 detector. FromAddress 0xfbb1b73c4f0bda4f67dca266ce6ef42f520fbb98 ToAddress 0x88518ddba475934f1c35e4c03a126c851cd4b566 IV. C ONCLUSIONS FromIsContract 0 ToIsContract CallType 1 call In this work, an automatic intrusion detection system has CallingFunction 0x6ea056a9 been developed, which with historical data from the Ethereum Value 0 IsError None blockchain obtains an accuracy of 0.70 in detecting anomalous paths. This demonstrates the possibility of implementing an On this experiment the first 10000000 lines of the dataset intrusion detection system to defend smart contracts and thus have been used. The experiment started generating the desired deploy them defended. Future work can investigate more spe- paths traversing the dataset lines. Those generated paths have cialized detectors to improve detector accuracy. In addition, different characteristics which were extracted. Once these the selection of features made to characterize a path to be characteristics were extracted for each path, the was divided studied will be important to best represent a transaction path. It will also be possible to perform tests with the complete 1 http://xblock.pro/ethereum/ dataset to better generalize the learning of the intrusion 51
Sesión de Investigación A1: Detección de intrusiones y gestión de anomalías I detection system detector in addition to including datasets from other blockchains that have smart contract functionality. This will enrich the results of this type of IDSs and improve the reliability of the results. ACKNOWLEDGEMENT This work has been partially supported by the Basque Country Government under the ELKARTEK program, project TRUSTIND (KK-2020/00054). R EFERENCES [1] N. Atzei, M. Bartoletti, and T. Cimoli, “A survey of attacks on ethereum smart contracts (sok),” 03 2017, pp. 164–186. [2] X. Wang, J. He, Z. Xie, G. Zhao, and S.-C. Cheung, “Contractguard: Defend ethereum smart contracts with embedded intrusion detection,” IEEE Transactions on Services Computing, vol. 13, no. 2, pp. 314–328, 2019. [3] J. Chen, X. Xia, D. Lo, J. Grundy, and X. Yang, “Maintaining smart contracts on ethereum: Issues, techniques, and future challenges,” arXiv preprint arXiv:2007.00286, 2020. [4] J. Lee, “Dappguard : Active monitoring and defense for solidity smart contracts,” 2017. [5] G. Ayoade, E. Bauman, L. Khan, and K. Hamlen, “Smart contract defense through bytecode rewriting,” in 2019 IEEE International Con- ference on Blockchain (Blockchain). IEEE, 2019, pp. 384–389. [6] S. Azzopardi, J. Ellul, and G. J. Pace, “Monitoring smart contracts: Contractlarva and open challenges beyond,” in International Conference on Runtime Verification. Springer, 2018, pp. 113–137. [7] F. Zhang, E. Cecchetti, K. Croman, A. Juels, and E. Shi, “Town crier: An authenticated data feed for smart contracts,” in Proceedings of the 2016 aCM sIGSAC conference on computer and communications security, 2016, pp. 270–282. [8] Z. Wang, W. Dai, K.-K. R. Choo, H. Jin, and D. Zou, “Fsfc: An input filter-based secure framework for smart contract,” Journal of Network and Computer Applications, vol. 154, p. 102530, 2020. [9] C. Ferreira Torres, M. Baden, R. Norvill, B. B. Fiz Pontiveros, H. Jonker, and S. Mauw, “Ægis: Shielding vulnerable smart contracts against attacks,” in Proceedings of the 15th ACM Asia Conference on Computer and Communications Security, 2020, pp. 584–597. [10] H. Wang, Y. Li, S.-W. Lin, L. Ma, and Y. Liu, “Vultron: catching vulnerable smart contracts once and for all,” in 2019 IEEE/ACM 41st International Conference on Software Engineering: New Ideas and Emerging Results (ICSE-NIER). IEEE, 2019, pp. 1–4. [11] M. Rodler, W. Li, G. O. Karame, and L. Davi, “Sereum: Protecting existing smart contracts against re-entrancy attacks,” arXiv preprint arXiv:1812.05934, 2018. [12] P. Zheng, Z. Zheng, J. Wu, and H. N. Dai, “Xblock-eth: Extracting and exploring blockchain data from ethereum,” IEEE Open Journal of the Computer Society, vol. 1, pp. 95–106, 2020. 52
También puede leer