INVESTIGACIÓN EN (JNIC2021 LIVE) - Manuel A. Serrano - Eduardo Fernández-Medina Cristina Alcaraz - Noemí de Castro - Guillermo Calvo

Página creada Sergio Ricardo
 
SEGUIR LEYENDO
INVESTIGACIÓN EN (JNIC2021 LIVE) - Manuel A. Serrano - Eduardo Fernández-Medina Cristina Alcaraz - Noemí de Castro - Guillermo Calvo
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