Národní úložiště šedé literatury Nalezeno 29 záznamů.  předchozí11 - 20další  přejít na záznam: Hledání trvalo 0.01 vteřin. 
A decompiler for Objective-C
Mráček, Jakub ; Yaghob, Jakub (vedoucí práce) ; Bednárek, David (oponent)
Objective-C je populární programovací jazyk používaný primárně pro vývoj na platformách OS X a iOS. V práci prezentujeme praktický přístup k dekompilaci programů napsaných v Objective-C a zkompilovaných pro architektury x86 a AArch64 za použití kompilátoru LLVM. Na základě známých obecných technik reverzního inženýrství a teorie kompilátorů analyzujeme nové problémy a příležitosti v binárních souborech vzniklých překladem z Objective-C. Poté navrhujeme řešení a algoritmy, které umožní dekompilátoru lépe rozpoznat vysokoúrovňové struktury, které jsou běžné ve zdrojových kódech napsaných v jazyce Objective-C. Tato práce předkládá implementaci nového dekompilátoru zvaného "Cricket" jako grafickou aplikaci pro OS X, která využívá popsané algoritmy a metody pro rozpoznávání vzorů k rekonstrukci zdrojového kódu v Objective-C. Dekompilátor si klade za cíl maximalizovat čitelnost výstupu a umožňuje uživateli dále modifikovat vygenerovaný zdrojový kód. Implementovaný program je poté vyhodnocen na populární open-source knihovně a výstupy jsou porovnány s konkurenčním produktem. Powered by TCPDF (www.tcpdf.org)
Dekódování binárního kódu do vyšší formy reprezentace
Macko, Lukáš ; Soukup, Ondřej (oponent) ; Matula, Peter (vedoucí práce)
Diplomová práce se zabývá zpětným inženýrstvím v oblasti software. Představuje jeho uplatnění, používané nástroje a postupy. Podrobněji se věnuje problematice dekódování instrukcí. Uvádí dva základní postupy-lineární dekódování a rekurzivní sestup. Poukazuje na jejich silné stránky a nedostatky. Následně představuje zpětný překladač vyvíjenýspolečností AVG Technologies. Tento překladač je rekonfigurovatelný, což umožňuje zpětný překlad z různých architektur do více cílových jazyků. Cílem práce bylo navrhnout a implementovat algoritmus pro dekódování binárních souborů do vyšší reprezentace. Navržený algoritmus vychází z algoritmu rekurzivního sestupu. Využívá informace o toku řízení programu. Pro zpřesnění výsledku dekódování jsou navíc použity záznamy z tabulky symbolů a další informace. Navržený algoritmus byl implementován pro rekonfigurovatelný zpětný překladač společnosti AVG Technologies. Testy implementovaného algoritmu ukázaly zlepšení detekce funkcí v dekódovaných programech. Implementované řešení navíc umožňuje dekódovat i soubory, jejichž analýza s aktuálním řešením nebyla možná.
Optimalizace LLVM IR pro účely zpětného překladu
Kollár, Jaroslav ; Chaloupka, Jan (oponent) ; Matula, Peter (vedoucí práce)
Tato práce se zabývá návrhem a implementací optimalizací ve střední části zpětného překladače vyvíjeného firmou AVG Technologies. Úlohou těchto optimalizací je zlepšit čitelnost produkovaného zdrojového kódu a současně vylepšit některé navržené optimalizace v zadní části zpětného překladače. V úvodu jsou poskytnuty základní informace o reverzním inženýrství a zpětných překladačích, které slouží pro účel uvedení do dané problematiky. Poté se nachází popis stavu zpětného překladače před zahájením této diplomové práce. Dále následuje hlavní část práce, která se věnuje popisu návrhu a implementace jednotlivých navržených optimalizací. Poté následuje popis testování optimalizací a shrnutí dosažených výsledků. V závěru práce je diskutován budoucí možný vývoj.
Retargetable Analysis of Machine Code
Křoustek, Jakub ; Janoušek, Jan (oponent) ; Návrat,, Pavol (oponent) ; Kolář, Dušan (vedoucí práce)
Program analysis is a computer-science methodology whose task is to analyse the behavior of a given program. The methods of program analysis can also be used in other methodologies such as reverse engineering, re-engineering, code migration, etc. In this thesis, we focus on program analysis of a machine-code and we address the limitations of a nowadays approaches by proposing novel methods of a fast and accurate retargetable analysis (i.e. they are designed to be independent of a particular target platform). We focus on two types of analysis - dynamic analysis (i.e. run-time analysis) and static analysis (i.e. analysing application without its execution). The contribution of this thesis within the dynamic analysis lays in the extension and enhancement of existing methods and their implementation as a retargetable debugger and two types of a retargetable translated simulator. Within the static analysis, we present a concept and implementation of a retargetable decompiler that performs a program transformation from a machine code into a human-readable form of representation. All of these tools are based on several novel methods defined by the author. According to our experimental results and users feed-back, all of the proposed tools are at least fully competitive to existing solutions, while outperforming these solutions in several ways.
Zpětný překlad z vybraných formátů spustitelných souborů
Bandzi, Michal ; Láznička, Stanislav (oponent) ; Matula, Peter (vedoucí práce)
Objektové súbory obsahujú strojový kód, ktorý môže byť vykonaný procesorom. Každý objektový súbor má formát, ktorý popisuje jeho štruktúru. Pre vykonanie spätného prekladu je nutné súbor spracovať a previesť dáta do vnútornej reprezentácie spätného prekladača. Táto práca pojednáva o návrhu a implementácii nových modulov pre podporu spracovania formátov, ktoré budú súčasťou Rekonfigurovateľného spätného prekladača. Cieľom práce je pridanie podpory pre formáty Intel HEX a Mach-O a nová implementácia už podporovaného formátu Portable Executable. Implementácia modulov pre Intel HEX a Mach-O bola úspešná a je možné použiť ich pre spätný preklad. Spracovanie formátu PE nedosahuje dostatočnej kvality kvôli chybám knižnice LLVM, na ktorej je implementácia založená.
Detekce podobnosti zdrojových souborů v jazyce C
Rek, Petr ; Kučera, Jiří (oponent) ; Matula, Peter (vedoucí práce)
Tato práce se zabývá návrhem, implementací a testováním nástroje csim, sloužícího pro porovnávání podobnosti dvou souborů v jazyce C. Primárním účelem vzniku tohoto nástroje je testování zpětného překladače vyvíjeného společností AVG Technologies s.r.o. Testování je prováděno na základě podobnosti abstraktního syntaktického stromu původního a dekompilovaného souboru. Čtenář je tedy seznámen se základy problematiky zpětného inženýrství, zejména zpětným překladem binárního kódu do vyšší úrovně reprezentace. Dále je popsán koloběh, kterým kód prochází od jeho vytvoření až po zpětný překlad, a jeho vliv na tento proces. Čtenáři je také poskytnut přehled o projektu LLVM a překladači Clang, který je základním stavebním kamenem nástroje csim.
Zpětný překlad vybraných konstrukcí jazyka C++
Mihulka, Tomáš ; Zemek, Petr (oponent) ; Matula, Peter (vedoucí práce)
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.
Zpětný překlad aplikací pro architekturu PowerPC
Mišák, Ján ; Matula, Peter (oponent) ; Ďurfina, Lukáš (vedoucí práce)
Tato práce se zabývá přidáním podpory pro architekturu PowerPC do přední části zpětného překladače. Nacházejí se v ní základní informace o reverzním inženýrství, jeho využití a významu v informačních technologiích. Práce také obsahuje souhrn znalostí o architektuře PowerPC a informace o zpětném překladači projektu Lissom, hlavně jeho přední části. Cílem práce bylo implementovat podporu dekompilace binárnich souborů pro architekuru PowerPC v přední části zpětného překladače. Výsledkem práce je implementace řady analýz ve formě tříd jazyka C++ a úprava existujících části kódu tak, aby byla podporována požadovaná funkčnost.
Interaktivní zpětný assembler
Mrva, Milan ; Přikryl, Zdeněk (oponent) ; Křoustek, Jakub (vedoucí práce)
V práci jsou popsané postupy a nástroje zpětného inženýrství v rámci softwaru. Uvedené jsou techniky ochrany před rozkladem či zkoumáním obsahu spustitelného souboru. Představené jsou příklady programů zabývajících se zpětným překladem. Dále se práce zaobírá architekturou procesoru s důrazem na mikroprocesory Intel a Motorola. Jsou ukázané rozdílné formáty spustitelných souborů. Byl implementovaný generický modulovatelný zpětný assembler.V tomto textu je představená jak jeho struktura, tak zásuvné moduly, které prezentují tři různé techniky disassemblovaní. Jeden z modulů používa vícevláknový parser, který je vlastním návrhem autora. Tyto přístupy jsou v závěru porovnané a je nastíněn další vývoj.

Národní úložiště šedé literatury : Nalezeno 29 záznamů.   předchozí11 - 20další  přejít na záznam:
Chcete být upozorněni, pokud se objeví nové záznamy odpovídající tomuto dotazu?
Přihlásit se k odběru RSS.