Analýza programového kódu v realném čase
Real-time Code Execution Analysis
Typ dokumentu
bakalářská prácebachelor thesis
Autor
Filip Touš
Vedoucí práce
Dostál Jiří
Oponent práce
Kokeš Josef
Studijní obor
Informační bezpečnost 2021Studijní program
InformatikaInstituce přidělující hodnost
katedra informační bezpečnostiPráva
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Zobrazit celý záznamAbstrakt
Tato práce se zabývá problémem lokalizace funkcí v disasemblovaných binárních souborech bez zdrojového kódu. Poukazuje na obtíže tohoto úkolu vzhledem k absenci specializovaných nástrojů a představuje novou metodu, která tento proces zjednodušuje. Metoda vykonává dynamickou analýzu softwaru a monitoruje provádění kódu v reálném čase. Začíná se seznamem všech adres funkcí v binárním souboru ze kterého reverzní inženýr pomocí tohoto nástroje postupně izoluje cílovou funkci tím, že vyvolává specifické události nebo se jim vyhýbá. Pro realizaci této myšlenky byla vyvinuta knihovna, kterou mohou adaptovat stávající nástroje pro reverzní inženýrství, s vlastním spustitelným uživatelským rozhraním pro samostatné používání. Práce demonstruje praktické použití a efektivitu nástroje na reálných scénářích, ilustruje jeho schopnost zjednodušit proces reverzního inženýrství a zároveň poukazuje na jeho nedostatky. This thesis addresses the challenge of locating functions in disassembled binary files without source code. It highlights the difficulties of this task in the absence of specialized tools and introduces a novel method to simplify the process. The method performs dynamic analysis of the software, monitoring code execution in real-time. Starting with a list of all function addresses in the binary, the reverse engineer using the tool progressively isolates the target function by triggering or avoiding specific events. A library was developed to implement this idea, adaptable by existing reverse engineering tools, with a custom executable user interface for standalone use. The thesis demonstrates the tool's practical application and effectiveness through real-world scenarios, illustrating its ability to simplify the reverse engineering process while also highlighting its limitations.