Zpětný překlad vybraných konstrukcí jazyka C++

No Thumbnail Available
Date
Authors
Mihulka, Tomáš
ORCID
Mark
B
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
Abstract
Tato práce se zabývá rekonstrukcí hierarchie tříd a jejich virtuálních metod z programů vytvořených jazykem C++. Cílem práce je rozšířit zpětný překladač, který je vyvíjen v rámci projektu Lissom o analýzu těchto konstrukcí pro různé překladače. Rekonstrukce jsou realizovány detekcí Run- Time Type Information (zkratka RTTI ) a virtuálních tabulek. V úvodní části práce je popsán vědní obor reverzní inženýrství a projekt Lissom s jeho zpětným překladačem. Poté následuje popis jazyka C++, jeho struktur s možnostmi jejich dekompilace. Dále následuje část věnující se návrhu, implementaci a testování rozpoznání RTTI a virtuálních tabulek.
This bachelor's thesis deals with the reconstruction of a hierarchy of classes and their virtual methods from programmes created by C++ language . The aim of this work is to extend a decompiler , which has been developed as a part of the Lissom project, by an analysis of those reconstructions for various decompilers . The reconstructions are created through detection of RTTI and virtual tables . The first part of this thesis involves a description of reverse engineering as well as of the Lissom project in terms of the decompiler . The following section of the paper explains the basics of C++ language , its structures and different possibilities of their decompilation . The final part of the paper deals with a design, implementation and testing of a recognition of RTTI and virtual tables .
Description
Citation
MIHULKA, T. Zpětný překlad vybraných konstrukcí jazyka C++ [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2014.
Document type
Document version
Date of access to the full text
Language of document
cs
Study field
Informační technologie
Comittee
prof. RNDr. Alexandr Meduna, CSc. (předseda) doc. Ing. Zdeněk Kotásek, CSc. (místopředseda) Ing. František Grézl, Ph.D. (člen) Ing. Martin Hrubý, Ph.D. (člen) RNDr. Marek Rychlý, Ph.D. (člen)
Date of acceptance
2014-06-18
Defence
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm B. Otázky u obhajoby: Jaký vliv na úspěšnost rekonstrukce mají (a) použité optimalizace v překladači, (b) nepřítomnost ladicích informací, (c) nepřítomnost symbolických informací a (d) různé verze téhož překladače ( gcc 4.6 vs gcc 4.9 )?
Result of defence
práce byla úspěšně obhájena
Document licence
Přístup k plnému textu prostřednictvím internetu byl licenční smlouvou omezen na dobu 10 roku/let
DOI
Collections
Citace PRO