Úvod do počítačovej bezpečnosti

Upozornenie

Upozornenie: Predmet I-UPB je možné pokúsiť sa absolvovať maximálne 2x, po druhom nezvládnutí predmetu bude študent vylúčený zo štúdia.


 

Organizácia predmetu

Prednášky: Pavol Zajac
Cvičenia: Štefan Balogh, Peter Švec, Sabina Daniela Pekareková

AIS sylabus

 Cvičenia

Cvičenia sú založené na riešení zadaní v tímoch (max. 5 členov).

Hodnotenie

60 bodov za semester (min. 35 bodov podmienka absolovania)
40 bodov písomná skúška (prezenčná alebo dištančná, min. 21 bodov podmienka absolvovania)

Zadania na každý 2 týždeň (0 zadanie 5b, 1-5 zadanie 10 bodov, 5b bonus zadanie), konzultácie počas cvičenia v pondelky, individuálne, konzultácie cez Discord (v prípade volného času u cvičiaceho) . Spolu max. 60 bodov za zadania.

V pripade zjavného kopírovania riešenia zadania bude pridelene 0 bodov za zadanie všetkým zučastneným. V prípade opakovania kopírovania nebude udelený zápočet.

Skúška: prezenčná alebo dištančná, spolu 40 bodov, minimum 21 bodov dokopy podmienka na absolvovanie (a minimum 56 spolu so zadaniami, známka podľa klasifikačnej stupnice)

 

Obsah prednášok

Predpokladaný plán predmetu:

1. Úvod do bezpečnosti, základné pojmy a koncepty, Access Control všeobecne
2. Bezpečnostné hrozby, STRIDE
3. Ochrana dôvernosti, symetrické a asymetrické šifrovanie
4. Ochrana integrity, hash funkcie, MAC, elektronický podpis
5. Autentizácia používateľa, heslá, ukladanie hesiel, OTP, multifaktor, biometria
6. Autentizácia a autorizácia pomocou kryptografie, key managment, OAuth, PKI
7. Secure coding, evil input: format string, injection, …

8. Bezpečnosť OS, malvér, prípadne voľná téma.

9. Sieťová bezpečnosť: linková bezpečnosť, bezpečný kanál, IPSec, VPN, TLS, TOR
10. Webová bezpečnosť: Client State manipulation, CSRF, Javascript (CSS, …), OWASP
11. Kryptomeny a blockchain, alebo voľná téma
12. Opakovanie, alebo voľná téma

Obsah cvičení/zadania

Ak všetko pôjde podľa plánu:

1. Úvod
2. STRIDE, DFD, hrozby
3. Aplikácia na šifrovanie/dešifrovanie podľa špecifikácie
4. Aplikácia na podpis/overenie podľa špecifikácie
5. Ukladanie hesiel podľa špecifikácie
6. Overovanie hesiel
7. Nakonfigurovať TLS (HTTPS) na serveri
8. OWASP top 10 zraniteľnosti
9. OWASP (mini-pentest?)
10. Zraniteľnosti v C kóde

Materiály k prednáškam

Slajdy z prednášok budú pribúdať v sprievodnom  Moodle kurze  (aktuálne sú tam prednášky z roku 2015, môžu sa zmeniť).

Ostatné odkazy k prednáškam:

SimpleWebServer (v časti Source Code) a iné materiály ku knihe Christoph Kern, Anita Kesavan, Neil Daswani. Foundations of Security: What Every Programmer Needs to Know.

Java Cryptography Architecture

CERT coding standards
Testovací kód k buffer overflow, základná verzia [attachment:access1.c C kód]

OWASP SQL Injection Prevention Cheat Sheet

Odporúčaná literatúra

Základná literatúra:

Computer Security and the Internet: Tools and Jewels, by Paul C. van Oorschot. 2020, Springer. 365 pages plus frontmatter. ISBN: 978-3-030-33648-6 (hardcopy), 978-3-030-33649-3 (eBook)

Ďalšia odporučená literatúra:

[http://www.apress.com/9781590597842 Christoph Kern, Anita Kesavan, Neil Daswani. Foundations of Security: What Every Programmer Needs to Know. ISBN: 978-1-59059-784-2. Apress, 2007]

[http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0470474246.html Niels Ferguson, Bruce Schneier, Tadayoshi Kohno. Cryptography Engineering: Design Principles and Practical Applications. ISBN: 978-0-470-47424-2. Wiley, 2010]

[http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1118809998.html Adam Shostack. Threat Modeling: Designing for Security. ISBN: 978-1-118-80999-0. Wiley, 2014]

[https://www.microsoft.com/learning/en-us/book.aspx?id=5957 Michael Howard, David LeBlanc. Writing Secure Code, Second Edition. ISBN: 9780735617223. Microsoft Press, 2002]

[https://www.microsoft.com/learning/en-us/book.aspx?ID=6892 Frank Swiderski, Window Snyder. Threat Modeling. ISBN: 9780735619913. Microsoft Press, 2004]

[http://www.cert.org/secure-coding/publications/books/secure-coding-c-c-second-edition.cfm Robert C. Seacord. Secure Coding in C and C++, Second Edition. ISBN: 978-0-321-82213-0. Addison-Wesley, 2013]

[http://www.amazon.com/Cryptographic-Libraries-Developers-Charles-Programming/dp/1584504099 Ed Moyle, Diana Kelley. Cryptographic Libraries for Developers. ISBN: 978-1-584-50409-2. Charles River Media, 2005]

Odkazy

Zaujímavé čítanie k DOS útokom: https://krebsonsecurity.com/2016/09/the-democratization-of-censorship/ (plus veľa ďalších zaujímavých článkov o bezpečnosti)

https://msdn.microsoft.com/en-us/security/aa570401.aspx

http://www.cert.org/

https://www.csirt.org/

https://nvd.nist.gov/

http://csrc.nist.gov/

https://cve.mitre.org/

http://www.osvdb.org/

[https://www.youtube.com/watch?v=GqmQg-cszw4&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh MIT courseware Computer Systems Security]