Resumen:
En los últimos años, han cobrado popularidad y gran capital financiero las tecnologías blockchain y en particular Ethereum, que introdujo el concepto de smart contracts que permitió el desarrollo de una gran variedad de proyectos. Esto dio lugar a la investigación y desarrollo de herramienta de testing de smart contracts, en particular fuzzing. En esta tesis, en búsqueda de una herramienta para extender, llevamos a cabo en primer lugar un análisis del state-of-the-art de las herramientas de fuzzing existentes, lo que nos llevó a elegir a Echidna, debido a su popularidad, simpleza de extensión y disponibilidad de código y desarrolladores. En base a esto, realizamos una investigación de reverse-engineering que nos permitió documentar extensamente el algoritmo de Echidna, obteniendo diversos diagramas que disponibilizamos para el uso de la comunidad. Una vez hecho esto, implementamos una versión de Echidna que incorpora conceptos de la herramienta AFL Fast, que asigna energía a los elementos del corpus en función de la frecuencia del camino explorado por cada elemento. Además, implementamos una versión random que asigna energías uniformes para utilizar como testigo en el análisis. Finalmente, mediante el uso de tres distintos benchmarks, comparamos los resultados obtenidos por las tres distintas versiones y concluimos que la adaptación implementada obtiene resultados equivalentes a la original pero con un overhead de tiempo significativo, mientras que la versión random también obtiene resultados similares sin ningún overhead de tiempo. Esto nos lleva a concluir que la estrategia de elección de elementos de corpus no pareciera influir lo suficiente en la eficiencia de la herramienta ya que su comparación con random que representa la elección trivial de elementos de corpus resulta en el mismo nivel de performance. Como trabajo futuro, se pueden seguir explorando los resultados observados haciendo uso de benchmarks más complejos y extensos que permitan otorgarle mayor confianza a lo concluido o incluso proponer nuevas estrategias de feedback utilizando la documentación provista en esta tesis para facilitar el desarrollo.
Citación:
---------- APA ----------
Rentería, Dago Martín de; Regnier, Melissa. (2024). Fuzzing de smart contracts : EchidnaAFL. (Tesis de Grado. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales.). Recuperado de https://hdl.handle.net/20.500.12110/seminario_nCOM000510_RenteriaRegnier
---------- CHICAGO ----------
Rentería, Dago Martín de; Regnier, Melissa. "Fuzzing de smart contracts : EchidnaAFL". Tesis de Grado, Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales, 2024.https://hdl.handle.net/20.500.12110/seminario_nCOM000510_RenteriaRegnier
Estadísticas:
Descargas mensuales
Total de descargas desde :
https://bibliotecadigital.exactas.uba.ar/download/seminario/seminario_nCOM000510_RenteriaRegnier.pdf
Distrubución geográfica