Campo DC | Valor | Idioma |
dc.contributor.advisor | Almeida, Rodrigo Bonifácio de | pt_BR |
dc.contributor.author | Medeiros, Ismael Coelho | pt_BR |
dc.date.accessioned | 2024-08-13T18:59:12Z | - |
dc.date.available | 2024-08-13T18:59:12Z | - |
dc.date.issued | 2024-08-13 | - |
dc.date.submitted | 2023-07-07 | - |
dc.identifier.citation | MEDEIROS, Ismael Coelho. DogeFuzz: um framework extensível para estudos de fuzzing na análise dinâmica de Smart Contracts. 2023. 91 f., il. Dissertação (Mestrado em Informática) — Universidade de Brasília, Brasília, 2023. | pt_BR |
dc.identifier.uri | http://repositorio2.unb.br/jspui/handle/10482/49807 | - |
dc.description | Dissertação (Mestrado) — Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2023. | pt_BR |
dc.description.abstract | Smart contracts são programas Turing-completo que são executados em uma rede Blockchain.
Muitas vezes, este tipo de programa armazena ativos digitais valiosos e em um Blockchain
como o Ethereum, o bytecode de cada smart contract está público e transparente, e por
isso, pode ser acessado por qualquer um. Isso faz com que este tipo de programa seja alvo
constante de ataques e que a segurança de um contrato seja algo crítico. Este trabalho
visa apresentar uma ferramenta flexível (chamada DogeFuzz) de forma que seja possível
experimentar diferentes técnicas de fuzzing na análise dinâmica de smart contracts.
Entre as estratégias de fuzzing existentes, exploramos os benefícios de se utilizar as
técnicas de greybox fuzzing e directed greybox fuzzing direcionada a instruções críticas de
um smart contract. Foi mostrado, por meio de um experimento com cerca de 300 smart
contracts, que estas técnicas conseguiram encontrar vulnerabilidades mais rapidamente
que uma estratégia de fuzzing simples como blackbox fuzzing, que gera inputs completamente aleatórios. Além disso, concluímos que uma ferramenta de fuzzing necessita ter
tempo para gerar uma quantidade grande de inputs para explorar melhoras as vulnerabilidades existentes nos smart contracts e que novas pesquisas em cima do DogeFuzz devem
levar isto em consideração na hora de planejar o experimento. E por fim, foi feita uma
análise da relação de métricas (como cobertura, tempo de execução, e instruções críticas
executadas) e a detecção de vulnerabilidades, e foi notado que algumas vulnerabilidades
possuíam uma certa relação com estas métricas que foram colhidas durante a execução
do experimento. | pt_BR |
dc.description.sponsorship | Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES). | pt_BR |
dc.language.iso | por | pt_BR |
dc.rights | Acesso Aberto | pt_BR |
dc.title | DogeFuzz : um framework extensível para estudos de fuzzing na análise dinâmica de Smart Contracts | pt_BR |
dc.type | Dissertação | pt_BR |
dc.subject.keyword | Segurança de software | pt_BR |
dc.subject.keyword | Contratos inteligentes | pt_BR |
dc.subject.keyword | Fuzzing (Computação) | pt_BR |
dc.subject.keyword | Software - análise | pt_BR |
dc.subject.keyword | Blockchain | pt_BR |
dc.rights.license | A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor com as seguintes condições: Na qualidade de titular dos direitos de autor da publicação, autorizo a Universidade de Brasília e o IBICT a disponibilizar por meio dos sites www.unb.br, www.ibict.br, www.ndltd.org sem ressarcimento dos direitos autorais, de acordo com a Lei nº 9610/98, o texto integral da obra supracitada, conforme permissões assinaladas, para fins de leitura, impressão e/ou download, a título de divulgação da produção científica brasileira, a partir desta data. | pt_BR |
dc.description.abstract1 | Smart contracts are Turing-complete programs that run on a Blockchain network. Often,
this type of program stores valuable digital assets and on a Blockchain like Ethereum, the
bytecode of each smart contract is public and transparent, and therefore can be accessed
by anyone. This makes this type of program a constant target of attacks and the security
of a contract is something critical. This work aims to present a flexible tool (called
DogeFuzz) so that it is possible to experiment with different fuzzing techniques in the
dynamic analysis of smart contracts.
Among the existing fuzzing strategies, we explore the benefits of using greybox fuzzing
and directed greybox fuzzing directed at critical instructions of a smart contract. It was
shown, through an experiment with about 300 smart contracts, that these techniques
managed to find vulnerabilities faster than a simple fuzzing strategy like blackbox fuzzing,
which generates inputs completely random. In addition, we conclude that a fuzzing tool
needs to have time to generate a large amount of inputs to better exploit existing vulnerabilities in smart contracts and that further research on DogeFuzz should take this
into account when designing the experiment. And finally, an analysis was made of the
relationship between metrics (such as coverage, execution time, and critical instructions
executed) and the detection of vulnerabilities, and it was noted that some vulnerabilities
had a certain relationship with these metrics that were collected during execution of the
experiment. | pt_BR |
dc.description.unidade | Instituto de Ciências Exatas (IE) | pt_BR |
dc.description.unidade | Departamento de Ciência da Computação (IE CIC) | pt_BR |
dc.description.ppg | Programa de Pós-Graduação em Informática | pt_BR |
Aparece nas coleções: | Teses, dissertações e produtos pós-doutorado
|