Název:
Využití dynamické analýzy kódu při zpětném překladu
Překlad názvu:
Enhancement of Decompilation by Using Dynamic Code Analysis
Autoři:
Končický, Jaromír ; Zemek, Petr (oponent) ; Ďurfina, Lukáš (vedoucí práce) Typ dokumentu: Diplomové práce
Rok:
2014
Jazyk:
cze
Nakladatel: Vysoké učení technické v Brně. Fakulta informačních technologií
Abstrakt: [cze][eng]
V rámci projektu Lissom je vyvíjen rekonfigurovatelný zpětný překladač, jehož cílem je umožnit zpětný překlad programů, určených pro více různých platforem, do několika různých vyšších programovacích jazyků. V době počátku řešení této práce v něm nejsou implementovány techniky využívající informace získané dynamickou analýzou zpětně překládaného programu. Využitím těchto technik je však možné výsledky zpětného překladače výrazně zlepšit. Návrh těchto technik je hlavní náplní této diplomové práce. V rámci tohoto textu je popsáno zpětné inženýrství a zpětný překladač projektu Lissom. Jsou zde obecně popsány existující techniky dynamické analýzy, jako je instrumentace a emulace. Poté jsou zde uvedeny konkrétní informace, které lze získat během dynamické analýzy, a navrženy metody jejich využití ve zpětném překladači.
As a part of the Lissom project, a retargetable decompiler is being developed. Its main purpose is to decompile programs for a particular microprocessor architecture into a high-level programming language. In present, methods of dynamic code analysis are not used during decompilation. However, we can significantly improve the decompilation results by using these methods. Design of dynamic-analysis methods is the main task of this thesis. In this thesis, reverse engineering and Lissom decompiler are described. Furthermore, general dynamic analysis methods, such as instrumentation and emulation, are described. The information we can obtain by using dynamic analysis and its usage during decompilation is proposed.
Klíčová slova:
debugger; dekompilátor; disassembler; dynamická analýza; emulace; instrumentace; Lissom; Pin; Reverzní inženýrství; zpětný překlad; debugger; decompiler; disassembler; dynamic analysis; emulation; instrumentation; Lissom; Pin; recompilation; Reverse engineering
Instituce: Vysoké učení technické v Brně
(web)
Informace o dostupnosti dokumentu:
Plný text je dostupný v Digitální knihovně VUT. Původní záznam: http://hdl.handle.net/11012/53361