Bezbednost računarskih sistema

Cilj predmeta

Upoznavanje sa osnovama bezbednosti računara i računarskih mreža, kao i sa najčešćim problemima u oblasti bezbednosti softvera i načinima njihovog rešavanja.

Ishod predmeta

Po završetku kursa, student ima osnovna znanja o sistemima i tehnologijama zaštite savremenih računarskih sistema i mreža, kao što su simetrični algoritmi šifrovanja, digitalni potpis i PKI sistemi. Svestan je neophodnosti izrade politika bezbednosti u okviru računarskih sistema. Razume značaj i osnovne koncepte bezbednosti softvera, sposoban je da prepozna najčešće propuste u bezbednosti softvera i da osmisli strategiju izbegavanja ili uklanjanja ovakvih propusta.

Teorijska nastava

Ocenjivanje i tretiranje bezbednosnih rizika. Politika bezbednosti. Fizička bezbednost. Potencijalni napadi. Mogući načini odbrane. Tehnologije zaštite. Protokoli zaštite. Zaštita na aplikacionom, transportnom i mrežnom sloju računarskih mreža. Mrežne barijere i sistemi za sprečavanje i detekciju upada. Softverska i hardverska rešenja zaštite. Problem bezbednosti softvera. Razlozi za pojavu propusta u bezbednosti softvera. Najčešći primeri propusta u bezbednosti softvera, primeri progamskog koda i načini za rešavanje opisanih propusta (prepunjenost bafera, ispadanje iz opsega mogućih vrednosti, SQL injekcija, umetanje skripte u veb stranicu). Propusti u praćenju protoka na mreži i bezbednost veb aplikacija. Bezbednost sesija. Tehnike za obezbeđivanje bezbednosti sesija. Sigurno skladištenje i prenos podataka. Kategorizacija za probleme bezbednosti softvera – Common Weakness Enumeration (CWE). Karakteristike programskih jezika, tehnologija i operativnih sistema sa aspekta bezbednosti softvera. Postupci provere sigurnosti softvera. Testiranje bezbednosti (fuzzing).

Praktična nastava

Tipovi napada. CAPEC klasifikacija. Napad na servise. Identifikacija servisa. Reconnaissance (Footprinting). Slabosti određenih servisa. HTTP, POP, Telnet. Exploit. Napad na stack. DOS, DDOS. SQL napadi. Process injection napadi na softver. Exploit funkcionalnosti web browser-a. Anonimnost pri napadima. Firewall. IDS/IPS sistemi. Uloga korisničkih računara. Virusi. Trojanski konji. Worm. Rootkit. Edukacija korisnika o načinima napada.