Mostrar el registro sencillo del ítem
Practical analysis of embedded microcontrollers against clock glitching attacks
dc.contributor.advisor | Weber, Raul Fernando | pt_BR |
dc.contributor.advisor | Seifert, Jean-Pierre | pt_BR |
dc.contributor.author | Silva, Ricardo Gomes da | pt_BR |
dc.date.accessioned | 2015-02-25T01:57:49Z | pt_BR |
dc.date.issued | 2014 | pt_BR |
dc.identifier.uri | http://hdl.handle.net/10183/110334 | pt_BR |
dc.description.abstract | Clock glitching attacks are one of the different types of hardware fault injections studied nowadays. By glitching the clock, it is possible to change the target’s hardware behavior, either by corrupting or simply skipping CPU instructions. Since the software is not prepared to handle a device that has been tampered with, an attacker can exploit such vulnerability and take over the control flow of the program. Multiple attacks can then be performed, such as forcing the device to exiting loops or dump its own memory. This work applies such technique against AVR microcontrollers by implementing a modular glitcher environment. Such environment allows not only for fine-tuning of attacks, but also a brute-force algorithm for finding the glitching range to be implemented. By executing multiple repeatable experiments, both on handcrafted and compiled code, it demonstrates that such architecture is vulnerable against these attacks by introducing faults that were not expected and cannot be handled by the software. The implications of this regarding the security of the program are discussed in this work. Additionally, a critical analysis of the disadvantages and issues of the approach used and how it can be further improved is provided. | en |
dc.description.abstract | Clock-Glitching-Angriffe sind eine der verschiedenen Arten von Hardware-Fehler- Angriffen, die heutzutage untersucht werden. Das Glitchen der Clock ermöglicht es, das Verhalten der angegriffenen Hardware zu verändern. CPU-Instruktionen können auf diese Weise entweder verändert oder auch komplett übersprungen werden. Da die Software nicht darauf ausgelegt ist, auf Manipulationen an dem Gerät zu reagieren, kann ein Angreifer diese Situation ausnutzen und die Kontrolle über den Programmablauf übernehmen. Viele verschiedene Angriffe können damit durchgeführt werden: Zum Beispiel können Schleifen vorzeitig abgebrochen werden oder das Gerät dazu gebracht werden, den gesamten Speicherinhalt auszugeben. In der vorliegenden Arbeit werden diese Techniken gegen einen AVR Mikrocontroller angewendet. Hierzu wurde eine modulare Umgebung entwickelt, die das Glitchen der Clock ermöglicht. Diese Umgebung ermöglicht nicht nur eine präzise Einstellung der Angriffsparameter, sondern auch das Ermitteln des genauen Zeitpunkts, an dem der Glitch eingefügt werden soll, durch eine Brute-Force-Suche. Indem sowohl auf angepasstem als auch auf kompiliertem Code verschiedene reproduzierbare Experimente wiederholt werden, zeigt diese Arbeit, dass die untersuchten Architekturen angreifbar durch solche Angriffe sind, in denen unerwartete Fehler eingebracht werden, mit denen die Software nicht umzugehen weiß. Die Auswirkungen, die diese Angriffe auf die Sicherheit der Programme haben, werden in dieser Arbeit diskutiert. Außerdem werden die Eigenschaften und Nachteile dieses konkreten Ansatzes kritisch hinterfragt und der Frage nachgegeangen, wie er verbessert werden kann. | de |
dc.description.abstract | Ataques de clock glitching são um dos diferentes tipos de injeção de falhas de hardware estudados nos dias de hoje. Ao causar um glitch no clock, é possível trocar o comportamento do hardware, seja corrompendo ou simplesmente pulando instruções da unidade de processamento central (CPU). Como o software não está preparado para lidar com um dispositivo que foi adulterado, um atacante pode explorar tal vulnerabilidade e obter controle do fluxo do progama. Múltiplos ataques podem então ser executados, tais como forçar o dispositivo a sair de loops ou mesmo extrair o conteúdo da sua memória. Este trabalho aplica tal técnica em microcontroladores AVR através da implementação de um ambiente de glitching modular. Tal ambiente não apenas permite o ajuste fino dos ataques, mas também a implementação de um algoritmo de força bruta para localização da faixa ideal de ataque. Através da execução de múltiplos experimentos repetitíveis, tanto em código feito a mão, assim como compilado, é demonstrado que tal arquitetura é vulnerável contra estes ataques através da introdução de falhas que não eram esperadas e não podem ser lidadas através de software. As implicações disto em relação à segurança são discutidas neste trabalho. Além disso, é fornecida uma análise crítica das desvantagens e problemas da abordagem utilizada e como ela pode ser melhorada. | pt_BR |
dc.format.mimetype | application/pdf | pt_BR |
dc.language.iso | eng | pt_BR |
dc.rights | Open Access | en |
dc.subject | Seguranca : Computadores | pt_BR |
dc.subject | Tolerancia : Falhas | pt_BR |
dc.title | Practical analysis of embedded microcontrollers against clock glitching attacks | pt_BR |
dc.type | Trabalho de conclusão de graduação | pt_BR |
dc.contributor.advisor-co | Nedospasov, Dmitry | pt_BR |
dc.identifier.nrb | 000952609 | pt_BR |
dc.degree.grantor | Universidade Federal do Rio Grande do Sul | pt_BR |
dc.degree.department | Instituto de Informática | pt_BR |
dc.degree.local | Porto Alegre, BR-RS | pt_BR |
dc.degree.date | 2014 | pt_BR |
dc.degree.graduation | Ciência da Computação: Ênfase em Ciência da Computação: Bacharelado | pt_BR |
dc.degree.level | graduação | pt_BR |
Ficheros en el ítem
Este ítem está licenciado en la Creative Commons License
-
Tesinas de Curso de Grado (37922)