Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2018/2019

Bezpečný kód

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
BI-BEK Z,ZK 5 2+2 česky
Přednášející:
Josef Kokeš (gar.)
Cvičící:
Josef Kokeš (gar.)
Předmět zajišťuje:
katedra informační bezpečnosti
Anotace:

Studenti se naučí posuzovat a zohledňovat bezpečnostní rizika při návrhu svého kódu a řešení v běžné inženýrské praxi. Od teorie modelování bezpečnostních rizik přistoupí k praxi, ve které si vyzkouší běh programů pod nižšími oprávněními a jak tato oprávnění stanovovat, protože ne každý program musí nutně běžet s administrátorským oprávněním. Budou také prakticky demonstrována rizika spojená s přetečením zásobníku. Dále se studenti budou krátce věnovat zabezpečení dat a jak toto zabezpečení souvisí s databázovými systémy a webem. V závěru se budou věnovat útokům typu DoS (Denial of Service) a obraně proti nim.

Požadavky:

Programování v C, znalost základních programových rozhraních a architektur počítačových systémů, základní znalost SQL, základní znalost Javascriptu.

Osnova přednášek:

1. Úvod do bezpečného programování, modelování bezpečnostních rizik

2. Generování kódu a struktura spustitelného souboru

3. Přetečení bufferu

4. Psaní bezpečného kódu v C

5. Úrovně bezpečnostních oprávnění, ACL

6. Běh programu při nízkých oprávněních

7. Zabezpečení a integrita dat

8. Datový vstup, kanonická reprezentace a bezpečnost

9. Databáze a bezpečnost

10. Bezpečnost webových aplikací

11. Útoky typu denial-of-service

12. Bezpečnost socketů

Osnova cvičení:

1. Úvod do nástrojů pro ladění

2. Generování kódu a rozbor existující aplikace

3. Přetečení bufferu

4. Psaní bezpečného kódu v C

5. Psaní bezpečného kódu v C II

6. Běh při nízkých oprávněních

7. Zabezpečení a integrita dat

8. SQL injection

9. Bezpečné programování pro databázové systémy

10. Bezpečnost webových aplikací

11. Sessions

12. Bezpečnost socketů

Cíle studia:

Studenti předmětu se seznámí se základními bezpečnostními principy a jejich aplikací na počítačový kód. Po seznámení se se základy překladů a linkování spustitelných souborů se studenti seznámí s problémem přetečení bufferu a sami si vyzkouší,jaké dopady bude mít tato častá chyba na jejich vlastní programy, a jak může být zneužita potenciálními útočníky. Studenti dále porozumí bezpečnostním mechanismům operačního systému Microsoft Windows na úrovni přístupových seznamů (ACL)a bezpečnostních tokenů. Studenti se detailně seznámí s bezpečnostním prostředkem Windows User Account Control a vyzkouší si,jaké bude mít dopady na běh jejich vlastního kódu, běžícího s minimálními oprávněními. Část předmětu bude dále věnována databázím a jejich bezpečnosti, po stránce injekce kódu do SQL dotazů, se kterou se studenti budou mít možnost prakticky seznámit.Dále se studenti seznámí s bezpečností webových aplikací a útoky typu Cross Site Scripting a Cross Site Request Forgery,které opět prakticky zažijí. Poslední část předmětu bude věnována bezpečnostním mechanismům platformy .Net a útokům typu Denial-of-Service.

Studijní materiály:

[1] Howard, M. - LeBlanc, D.: Writing Secure Code, 2nd Edition, Microsoft Press, 2003, 9780735617223,

[2] Howard, M. - LeBlanc, D.: Writing Secure Code for Windows Vista, Microsoft Press, 2007, 9780735623934,

[3] Seacord, R. C.: Secure Coding in C and C++, 2nd Edition, Addison-Wesley Professional, 2013, 9780321822130,

Poznámka:

2++2

Rozvrh na zimní semestr 2018/2019:
Rozvrh není připraven
Rozvrh na letní semestr 2018/2019:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po
Út
St
místnost TH:A-s135
Kokeš J.
09:15–10:45
(přednášková par. 1)
Thákurova 7 (FSv-budova A)
As135
místnost T9:345
Kokeš J.
11:00–12:30
(přednášková par. 1
paralelka 101)

Dejvice
NBFIT BOU ucebna
místnost T9:345
Kokeš J.
12:45–14:15
(přednášková par. 1
paralelka 102)

Dejvice
NBFIT BOU ucebna
místnost T9:345
Kokeš J.
14:30–16:00
(přednášková par. 1
paralelka 103)

Dejvice
NBFIT BOU ucebna
Čt

Předmět je součástí následujících studijních plánů:
Platnost dat k 21. 3. 2019
Aktualizace výše uvedených informací naleznete na adrese http://bilakniha.cvut.cz/cs/predmet3458606.html