Vyučující
|
-
Malaník David, Ing. Ph.D.
|
Obsah předmětu
|
Témata: 1. Úvod do problematiky reverzní analýzy kódu 2. Metody a metodiky 3. Vyšetřovací prostředí a nástroje 4. Kompilační procesy 5. Struktura aplikací 6. Dekompilační procesy 7. Restaurování chybně dekompilovaných částí kódů 8. Metody dynamické analýzy 9. Metody statické analýzy 10. Hledání zranitelností ve zdrojových kódech 11. Code Tampering 12. Útoky na databáze uvnitř aplikací 13. Reverzní analýza aplikačního protokolu 14. Výstupní protokoly reverzní analýzy, systematizace
|
Studijní aktivity a metody výuky
|
Přednášení, Demonstrace, E-learning
- Domácí příprava na výuku
- 30 hodin za semestr
|
Předpoklady |
---|
Odborné znalosti |
---|
Základní orientace v operačních systémech MS Windows a Linux. Orientace v programovacích jazycích: Java, C, C++, C# a python. |
Základní orientace v operačních systémech MS Windows a Linux. Orientace v programovacích jazycích: Java, C, C++, C# a python. |
Výsledky učení |
---|
Popsat programovací jazyky z pohledu reverzní analýzy |
Popsat programovací jazyky z pohledu reverzní analýzy |
Popsat způsob transformace zdrojových kódů do spustitelné podoby |
Popsat způsob transformace zdrojových kódů do spustitelné podoby |
Popsat problematiku signatures (magic bytes, magic numbers) |
Popsat problematiku signatures (magic bytes, magic numbers) |
Popsat bezpečnostní problémy související s manipulací registrů |
Popsat bezpečnostní problémy související s manipulací registrů |
Popsat bezpečnostní problémy související s používáním GNU Debuggeru |
Popsat bezpečnostní problémy související s používáním GNU Debuggeru |
Po absolvování předmětu bude student schopen porozumět problematice reverzní analýzy kódů moderních aplikací. V rámci předmětu budou představeny typické útočné techniky, kterým čelí současný software. Získané poznatky umožní posluchačů navrhovat a vytvářet bezpečné aplikace, které budou v souladu se světovými standardy. |
Po absolvování předmětu bude student schopen porozumět problematice reverzní analýzy kódů moderních aplikací. V rámci předmětu budou představeny typické útočné techniky, kterým čelí současný software. Získané poznatky umožní posluchačů navrhovat a vytvářet bezpečné aplikace, které budou v souladu se světovými standardy. |
Odborné dovednosti |
---|
Používat GNU Debugger pro reverzní analýzu |
Používat GNU Debugger pro reverzní analýzu |
Používat eXamine pro vyšetřování paměti |
Používat eXamine pro vyšetřování paměti |
Vypočítat hodnoty eflags vhodné pro útok |
Vypočítat hodnoty eflags vhodné pro útok |
Provádět útoky jejichž cílem je vyskočení z for cyklů |
Provádět útoky jejichž cílem je vyskočení z for cyklů |
Provádět útoky jejichž cílem je vyskočení z while cyklů |
Provádět útoky jejichž cílem je vyskočení z while cyklů |
Vyučovací metody |
---|
Odborné znalosti |
---|
E-learning |
E-learning |
Demonstrace |
Demonstrace |
Přednášení |
Přednášení |
Hodnotící metody |
---|
Kombinovaná zkouška (písemná část + ústní část) |
Kombinovaná zkouška (písemná část + ústní část) |
Doporučená literatura
|
-
DANG, Bruce, Alexandre. GAZET, Elias. BACHAALANY a Sébastien. JOSSE. Practical reverse engineering: x86, x64, ARM, Windows Kernel, reversing tools, and obfuscation. Indianapolis. First edition. Indiana: Wiley, 2014. ISBN 9781118787311.
-
KADAVY, David. Design for hackers: reverse-engineering beauty. First edition. West Sussex, UK: John Wiley, 2011. ISBN 9781119998952.
-
RAO KOTIPALLI, Srinivasa a Mohammed A. IMRAN. Hacking Android. First edition.. Birmingham: Packt Publishing, 2016. ISBN 9781785883149.
-
Velu Vijay Kumar. Mobile application penetration testing. First edition. Birmingham: Packt Publishing, 2016. ISBN 9781785883378.
-
VERMA, Prashant a Akshay DIXIT. Mobile Device Exploitation Cookbook. First edition. Birmingham: Packt Publishing, 2016. ISBN 9781783558728.
|