Ciele
- Pochopiť, čím sa bezpečnostné inžinierstvo zaoberá a prečo je to samostatná disciplína
- Získať prehľad o desiatich najčastejších bezpečnostných chybách v softvéri
- Overiť si, čo z materiálov naozaj vieš
Úvod
Prednáška ani cvičenie sa tento týždeň nekonajú, preto dostávaš namiesto nich dva materiály, ktoré prvý týždeň plnohodnotne nahradia. Obidva sú voľne dostupné, bez registrácie a bez platby.
Nie sú to náhodné odkazy z internetu. Prvý je úvodná kapitola učebnice, ktorá sa na tejto téme používa na univerzitách po celom svete. Druhý je zoznam, ktorý každé tri roky zostavuje medzinárodná organizácia na základe skutočných dát o zraniteľnostiach z praxe. Dohromady ti dajú presne to, čo by inak odznelo na prvej prednáške: čo tento odbor rieši a čo sa v softvéri reálne kazí.
Upozornenie
Z týchto dvoch materiálov bude prvý test v Moodle, ktorý sa otvorí v pondelok druhého týždňa. Neber ich preto ako nepovinné čítanie navyše.
Postup
Krok 1: Prečítaj si, čo je bezpečnostné inžinierstvo
Ross Anderson: Security Engineering, 3. vydanie, kapitola 1 „What Is Security Engineering?"
Rozsah je 16 strán, prečítaš to zhruba za 40 minút. Ross Anderson bol profesor na univerzite v Cambridge a táto kniha je desaťročia štandardnou učebnicou odboru. Celé tretie vydanie je od novembra 2024 voľne k dispozícii, takže ak ťa zaujme aj niečo ďalšie, tu je zvyšok knihy.
Kapitola stojí na jednej myšlienke: bezpečnosť nie je jedna technológia, ale rovnováha štyroch vecí, ktoré musia sedieť naraz.
| Zložka | O čo ide |
|---|---|
| Politika (policy) | čo vlastne chceme dosiahnuť, aké pravidlá majú platiť |
| Mechanizmus (mechanism) | čím to technicky presadíme, napríklad šifrovaním alebo oprávneniami |
| Uistenie (assurance) | ako vieme, že to naozaj funguje tak, ako sme mysleli |
| Motivácia (incentives) | prečo by sa tým vôbec niekto riadil, komu sa oplatí to obísť |
Anderson ukazuje, že prevažná väčšina zlyhaní nevznikne preto, že by bol slabý mechanizmus, ale preto, že niektorá z ostatných troch zložiek chýba. Ilustruje to na bankách, nemocniciach, armáde aj na obyčajnom zámku na dverách.
Čo si z toho odnesieš: prečo sa bezpečnosť nedá „dokúpiť" k hotovému systému, čo znamenajú pojmy dôvernosť, súkromie a utajenie a v čom sa líšia, a prečo je otázka „komu sa oplatí to obísť" často dôležitejšia než otázka „ako silné je šifrovanie".
Úloha 1.1
Po prečítaní si vyber ľubovoľný systém, ktorý sám používaš (školský informačný systém, internetbanking, e-mail) a napíš si k nemu štyri vety, po jednej ku každej zložke z tabuľky vyššie. Pri ktorej z nich sa ti vety písali najťažšie?
Krok 2: Prejdi si, čo sa v softvéri reálne kazí
OWASP je nezisková organizácia zameraná na bezpečnosť softvéru a jej rebríček Top 10 je asi najcitovanejší bezpečnostný dokument vôbec. Nie je to názor jedného človeka, ale výsledok analýzy dát o zraniteľnostiach zo státisícov reálnych aplikácií. Aktuálne vydanie je z roku 2025.
Prejdi si všetkých desať kategórií. Pri každej si všimni tri veci: čím sa prejaví, ako vzniká a čo ju spoľahlivo odstráni.
| Kategória | |
|---|---|
| A01 | Broken Access Control |
| A02 | Security Misconfiguration |
| A03 | Software Supply Chain Failures |
| A04 | Cryptographic Failures |
| A05 | Injection |
| A06 | Insecure Design |
| A07 | Authentication Failures |
| A08 | Software or Data Integrity Failures |
| A09 | Security Logging and Alerting Failures |
| A10 | Mishandling of Exceptional Conditions |
Čo si z toho odnesieš: konkrétnu predstavu o tom, čo sa v aplikáciách naozaj láme. Väčšina položiek nie je o šifrovaní ani o zložitej kryptografii, ale o tom, že niekto zabudol overiť, či používateľ smie vidieť to, čo si vypýtal. Na tento zoznam sa budeme počas semestra opakovane odvolávať.
Úloha 2.1
Vyber si tri kategórie z rebríčka, ktoré ťa najviac prekvapili, a ku každej nájdi jeden konkrétny reálny prípad, kedy takáto chyba spôsobila škodu. Stačí ti na to vyhľadávač a pár minút.
Poznámka
Ak narazíš na anglický termín, ktorému nerozumieš, nepreskakuj ho. Odbornú angličtinu budeš v tomto odbore potrebovať tak či tak a väčšina pojmov sa objaví znova už v druhom týždni.
Krok 3: Over si, čo ti zostalo
Úloha 3.1
Bez toho, aby si sa pozrel späť do materiálov, odpovedz si nahlas na tieto otázky. Ak niektorá odpoveď nepríde do desiatich sekúnd, vráť sa k príslušnej časti.
- Ktoré štyri zložky musia podľa Andersona sedieť naraz, aby systém bol bezpečný?
- Prečo nestačí mať silný technický mechanizmus?
- Ktorá kategória je v rebríčku OWASP na prvom mieste a čo znamená?
- Aký je rozdiel medzi chybou v návrhu a chybou v konfigurácii?
- Čo majú spoločné položky A03 a A08?
Záver
Ak si prešiel oba materiály a vieš odpovedať na päť otázok vyššie, si na druhý týždeň pripravený lepšie, než keby si sedel na prednáške. V pondelok ťa v Moodle čaká prvý test práve z tejto látky.
Zdroje
- Anderson, R.: Security Engineering: A Guide to Building Dependable Distributed Systems, 3. vydanie, Wiley, 2020. Kapitola 1 voľne dostupná na cl.cam.ac.uk.
- OWASP Foundation: OWASP Top 10:2025, dostupné na top10.owasp.org.