Národní úložiště šedé literatury Nalezeno 35 záznamů.  začátekpředchozí26 - 35  přejít na záznam: Hledání trvalo 0.01 vteřin. 
Rozšíření nástroje pro analýzu spustitelných souborů
Zavoral, Milan ; Ďurfina, Lukáš (oponent) ; Matula, Peter (vedoucí práce)
Tato práce se zabývá rozšířením nástroje pro analýzu spustitelných souborů, který je součástí rekonfigurovatelného zpětného překladače vyvíjeného v rámci projektu Lissom. Cílem práce je analyzovat nedostatky původní implementace tohoto nástroje a na základě toho navrhnout a implementovat zcela nový nástroj, který by tyto nedostatky odstranil. Vytvořené řešení musí představovat plnohodnotný analyzátor spustitelných souborů. V rámci práce je řešen rovněž problém detekce použitého překladače či packeru, přičemž jsou zavedeny heuristické techniky detekce, které umožňují mj. korektní rozpoznání polymorfních packerů. V závěru práce jsou diskutovány dosažené výsledky a jejich přínos pro rekonfigurovatelný zpětný překladač.
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.
Využití informací o použitém překladači při zpětném překladu
Rudolf, Josef ; Ďurfina, Lukáš (oponent) ; Křoustek, Jakub (vedoucí práce)
Tato práce se zabývá nástrojem pro zpětný překlad strojového kódu na vyšší programovací jazyk, vyvíjený v rámci projektu Lissom. Je v ní navržena metoda pro zefektivnění získání informací z binárního souboru na základě detekovaného překladače. Konkrétně se jedná o získávání informací o parametrech, návratových typech a názvech funkcí z názvů symbolů pomocí tzv. demanglingu. V rámci práce jsou zkoumány rozdíly mezi způsoby kódování těchto informací různými překladači (tzv. mangling). Popsána je implementace demangleru a na závěr provedeny testy a porovnána úspěšnost demangleru při zpracování dat, vytvořených různými překladači. Navazujícím úkolem této práce je návrh a implementace jednotné integrace nástrojů v předzpracování a přední části zpětného překladače projektu Lissom a zefektivnění předávání informací mezi nimi.
Zadní část zpětného překladače produkující kód v jazyce C
Urban, Martin ; Ďurfina, Lukáš (oponent) ; Zemek, Petr (vedoucí práce)
Práce popisuje implementaci zadní části zpětného překladače produkujícího kód v jazyce C. Obsahuje základní informace o principech a využití reverzního inženýrství v oblasti informačních technologií i mimo něj. Hlavním cílem je vytvořit zadní část zpětného překladače, která bude generovat kód ekvivalentní vůči vstupu, který bude opět přeložitelný do binární formy se zachováním stejné funkčnosti jako zdrojový binární kód. Výstupem je implementace tříd v jazyce C++, vykonávající popisovanou činnost jako součást obecného dekompilátoru, který je vyvíjený v rámci projektu Lissom.
Optimalizace v zadní části zpětného překladače
Kollár, Jaroslav ; Ďurfina, Lukáš (oponent) ; Zemek, Petr (vedoucí práce)
Tato práce se zabývá návrhem a tvorbou optimalizací v zadní části zpětného překladače. Úlohou těchto optimalizací je vylepšit čitelnost produkovaného zdrojového kódu. 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é následuje analýza produkovaného kódu zpětným překladačem s cílem obeznámit čtenáře s navrženými optimalizacemi pomocí názorných ukázek. Dále následuje hlavní část této práce, která se věnuje popisu návrhu a implementace jednotlivých navržených optimalizací. Poté následuje popis technik, které byly využity při testování. V závěru práce jsou shrnuty dosažené výsledky a jejich přínos.
Generický zpětný překlad programů v bajtkódu do vyšší formy reprezentace
Mrázek, Petr ; Zemek, Petr (oponent) ; Křoustek, Jakub (vedoucí práce)
Práce popisuje postupy a principy zpětného překladu. Uvádí základní informace o zpětném inženýrství a jeho užití v oboru softwarového inženýrství i inženýrství obecně. Dále představuje zpětný překladač vyvíjený v rámci projektu Lissom na FIT VUT v Brně. Cílem práce je navrhnout a implementovat rekonfigurovatelný zpětný překladač bajtkódu navazující na tento překladač.
Migrace zdrojových kódů pomocí dekompilace
Korec, Tomáš ; Ďurfina, Lukáš (oponent) ; Zemek, Petr (vedoucí práce)
Tato práce se zabývá migrací zdrojových kódů vysokoúrovňových programovacích jazyků pomocí dekompilace. Migrační nástroj vyvinutý v rámci práce je postaven na prostřední a zadní části dekompilátoru projektu Lissom. V práci je rozebráno několik překladačů, které ze vstupního jazyka generují kód v LLVM IR. Vhodné překladače byly vybrány pro integraci do migračního nástroje. Kód přeložený do LLVM IR je vstupem prostřední optimalizační části dekompilátoru. Výstupem migračního nástroje je kód v jazyce C nebo v jazyce podobném Pythonu generovaný zadní častí dekompilátoru. Vstupními jazyky jsou Fortran a jeho dialekty, C/C++/Objective-C/Objective-C++ a D. V práci jsou popsány problémy spojené s migrací těchto jazyků, jejich řešení a způsoby jak zlepšit kvalitu a čitelnost výsledného kódu.
Strukturování kódu v zadní části zpětného překladače
Hrbek, David ; Matula, Peter (oponent) ; Zemek, Petr (vedoucí práce)
Cílem této práce bylo navrhnout a implementovat algoritmus pro strukturování kódu v zadní části zpětného překladače projektu Lissom. Zabývá se problémem eliminace nepřímých skoků (branch/goto) z nízkoúrovňového kódu s využitím vysokoúrovňových konstrukcí, jako jsou podmíněné příkazy (if, switch) a cykly (for, while). Práce obsahuje teoretický úvod do problematiky zpětného překladu, informace o zpětném překladači projektu Lissom, návrh algoritmu pro strukturování kódu, popis jeho implementace, popis sady testovacích úloh a shrnutí výsledků.
Jazyk pro dotazování Java AST
Bílek, Jiří ; Matula, Peter (oponent) ; Křivka, Zbyněk (vedoucí práce)
Cílem této práce je návrh dotazovacího jazyka nad abstraktním syntaktickým stromem Java kódu a implementace nástroje, který využívá tento dotazovací jazyk. V práci se nachází průzkum dostupných grafových databází a podrobnější studium grafových databází Neo4J a Titan. Následuje průzkum dostupných nástrojů pro analýzu Java bajtkódu a opět podrobnější zkoumání nástrojů Procyon a BCEL. Dále práce obsahuje návrh jazyka a detailní popis implementace nástroje společně s popisem uložení jednotlivých entit do grafové databáze. Závěrem se práce zabývá experimenty s vytvořeným nástrojem a vyhodnocením časové složitosti knihovny.
Reverzní inženýrství na platformách Java a Android
Žák, Josef ; Pecinovský, Rudolf (vedoucí práce) ; Oraný, Vladimír (oponent)
Práce se zabývá reverzním inženýrstvím na platformě Android a Java. Jsou analyzovány (popsány) existující nástroje a techniky, dále jsou zkoumány možnosti obrany. První část se zabývá důkladnou rešerší prací na toto téma. Další část diskutuje oblasti využití reverzního inženýrství. Další kapitoly popisují operační systém Android a koncept virtuálních strojů na obou platformách. Je uvedeno porovnání registrové a zásobníkové architektury virtuálního stoje. Jádro práce je zaměřeno na statickou analýzu (obsah APK souboru, di-sassemblování, zpětný překlad). Jsou srovnány současně dostupné zpětné překladače pro class soubory a dex soubory. Testy pro zpětný překlad zahrnují různé verze Javy. Závěrečná kapitola se zabývá metodami obrany proti reverznímu inženýrství, včetně popisu výhod a nevýhod. Jsou otestovány dva populární obfuskátory (Proguard, DashO).

Národní úložiště šedé literatury : Nalezeno 35 záznamů.   začátekpředchozí26 - 35  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.