Přístupnostní navigace
E-přihláška
Vyhledávání Vyhledat Zavřít
Detail předmětu
FIT-SCOAk. rok: 2027/2028
Předmět seznamuje s principy a postupy bezpečného kódování. Bezpečné kódování znamená psaní programů bezpečným způsobem, aby se předešlo zranitelnostem, které mohou útočníci zneužít. Znamená to také náležitě a efektivně využívat funkce zabezpečení poskytované knihovnami, jako je ověřování a šifrování. Bude zvážena řada programovacích platforem, od nízkoúrovňových (např. Android OS), přes webové programování (např. JavaScript a Python) až po rozsáhlé jazyky na vysoké úrovni (např. Java). Budou zkoumány nové a vznikající jazykové bezpečnostní mechanismy, včetně způsobů statické a dynamické analýzy.
Proč je předmět vyučován
V současnosti je stále vzrůstajícím problémem to, že díky nedokonalostem v programovém kódu aplikací se útočník může dostat k tak ceněným údajům uloženým na počítači, nebo nad počítačem získat vládu zcela. Cílem tohoto předmětu je jednak ukázat, jak k takové situaci může zcela neúmyslně dojít a jednak demonstrovat, jak je možné psát kód, který bude takovým útokům předcházet.
Podmínky zápočtu
Získání alespoň jednoho bodu z každého projektu a získání alespoň 10 bodů v průběhu semestru. Jakákoli forma plagiátorství nebo nesamostatné práce vede k neudělení zápočtu. Zápočty uděluje cvičící.
Jazyk výuky
Počet kreditů
Příslušnost k typu studijního programu
Garant předmětu
Zajišťuje ústav
Vstupní znalosti
Způsob zakončení předmětu a pravidla hodnocení studentů
Bodové hodnocení výsledků vypracovaných projektů. Průběžná kontrola a hodnocení projektů, závěrečná zkouška. Pro získání bodů ze zkoušky je nutné zkoušku vypracovat tak, aby byla hodnocena více než 20 body. V opačném případě bude zkouška hodnocena 0 body.
Učební cíle
Cílem předmětu je seznámit studenty se základními principy bezpečného psaní programů a vysvětlit obecné principy zranitelných míst a obrany proti nim. K zajištění korektního návrhu a implementace aplikací tak, aby splňovali bezpečnostní požadavky je nutno začlenit praktiky bezpečného kódování jako běžnou součást všech fází procesu vývoje software. Klíčovým krokem je vzdělání vývojářů, tak aby znali podstatné základní principy bezpečného kódování, uměli je aplikovat, a to bez ohledu na prostředí ve kterém pracují.
Studenti se naučí obecné principy a postupy bezpečného psaní programů.
Doporučená literatura
Zařazení předmětu ve studijních plánech
specializace NISY , 0 ročník, zimní semestr, volitelnýspecializace NSPE , 0 ročník, zimní semestr, volitelnýspecializace NEMB , 0 ročník, zimní semestr, volitelnýspecializace NBIO , 0 ročník, zimní semestr, volitelnýspecializace NSEN , 0 ročník, zimní semestr, volitelnýspecializace NVIZ , 0 ročník, zimní semestr, volitelnýspecializace NGRI , 0 ročník, zimní semestr, volitelnýspecializace NADE , 0 ročník, zimní semestr, volitelnýspecializace NISD , 0 ročník, zimní semestr, volitelnýspecializace NMAT , 0 ročník, zimní semestr, volitelnýspecializace NSEC , 0 ročník, zimní semestr, volitelnýspecializace NNET , 0 ročník, zimní semestr, volitelnýspecializace NMAL , 0 ročník, zimní semestr, volitelnýspecializace NCPS , 0 ročník, zimní semestr, volitelnýspecializace NHPC , 0 ročník, zimní semestr, volitelnýspecializace NVER , 0 ročník, zimní semestr, volitelnýspecializace NIDE , 0 ročník, zimní semestr, volitelný
Přednáška
Vyučující / Lektor
Osnova
Projekt
Samostatně řešené projekty.
Individuální příprava na závěrečnou zkoušku
Individuální příprava na vypracování projektu
Individuální příprava na přednášku