Kódolás és IT biztonság
A tárgy célja az információs és kommunikációs rendszerekben használt kódolási módszerek alapelveinek ismertetése, valamint néhány jellemző kódolási eljárás, algoritmus gyakorlati alkalmazási készségének kialakítása, különös tekintettel az IT biztonság céljait szolgáló kódolási technikákra (adatok rejtjelezése, integritásvédelme és hitelesítése). A tárgy célja továbbá az IT biztonság kódoláson túlmutató területeinek bemutatása, különböző rendszer-, hálózat- és szoftverbiztonsági problémák és az azok kiküszöbölését szolgáló módszerek alapelveinek ismertetése, és alkalmazási készség kialakítása a gyakorlatban használt védelmi megoldások kiválasztása, konfigurálása, és üzemeltetése területén.
Követelmények
Előtanulmányi rend
- A tárgy felvételéhez a Hálózatok alapjai és üzemeltetése és a Operációs rendszerek előzetes vagy egyidejű felvétele szükséges.
A szorgalmi időszakban
- A laboron megjelenés kötelező. Ha a félévben 12 labor van, abból 8-at kell teljesíteni, ha 11 van, akkor 7-et.
- A laborok elején beugrók vannak, ahol 5 kérdésből 3-at helyesen kell megválaszolni, különben a labor sikertelen. A sikeres beugróval 1 pont szerezhető.
- A labor vezetett és önálló feladatokból áll, amik külön vannak értékelve. A vezetett részért 1 és az önállóért 2 pont szerezhető.
- A laboronkénti pontszámítás: 1 + szerzett pontok (max: 5)
- A sikeres laborért minimum 2 pontot kell elérni.
- A mulasztott laborjelenlét sikertelen labornak számít.
- Pótlási lehetőségek:
- A laborok nem pótolhatóak.
A vizsgaidőszakban
- A vizsga legalább elégséges (40%) teljesítése szükséges.
Félévvégi jegy
- A félévvi eredmény kiszámítása: 0,5 * L + 0,5 * V
- L: beszámítandó laboratóriumra kapott osztályzatok átlaga
- V: vizsgára kapott osztályzat
- Felfelé van kerekítve (pl.: 4es laborjegy és 3as vizsga esetén a végjegy 4es)
Tematika
A kari Moodle-ben fent van minden ami kell a tárgyhoz, legyen az labor vagy előadás.
Előadás
A prezentációk a Moodle-re vannak feltöltve.
- 1. hét (Dr. Buttyán Levente): bevezetés: biztonsági fogalmak (sérülékenység, rendszerkompromittálódás), CIA, AAA, security engineering & operations; támadó: -profilok, ökoszisztéma, támadáspéldák (APT1, Stuxnet, Duqu), zero-day exploit, osztályozás (CAPEC); sérülékenységek: típusai, osztályozás (CWE), publikáció (CVE), zero-day exploit; ellenintézkedések (NIST SP800-53); biztonsági incidensek kezelése: célok, lépések (NIST SP800-61)
- 2. hét (Gazdag András): szoftverbiztonság; biztonságos fejlesztési életciklus: Microsoft SDL: előtte, közben (követelmények, tervezés, implementáció, verifikáció (statikus és dinamikus elemzés, fuzzing, sérülékenységszkennelés, penetrációs tesztelés), kiadás), utána (válasz)
- 3. hét (Nagy Roland): memory corruption: buffer overflow (stack-based) és védekezés (DEP, kanári, ASLR), integer overflow
- 4. hét (Gazdag András): URL, URI, HTTP, HTML, DOM; szerveroldali architektúra (klasszikus / eseményalapú), OWASP top 10; támadások és kivédésük: szerveroldali: SQL injection (típusai, megelőzés), kliensoldali: same origin policy, JavaScript (scope, futtatás, kliensoldali kód, obfuszkáció), XSS (típusai, megelőzés, védekezés); web security scanners, bug bounty
- 5. hét (Ládi Gergő): AAA: authentication (knowledge-based, posession-based, inheritence-based), authorization (DAC: ACL és UAC, UID és GID; MAC, SAM; chmod, chown, chgrp)
- 6. hét (Dr. Holczer Tamás): tűzfal: csoportosítás (csomagszűrő, állapotalapú, alkalmazásszintű), DMZ, IDS (típusai detekció és elhelyezkedés alapján), IPS (snort), SIEM (összefüggések vizsgálata), VPN
Labor
A végleges laborjegy az a 8 legjobban sikerült labor jegyének az átlagából adódik össze (.5-től felfelé kerekítve). A laborok 3 részre bonthatóak: beugró/"tudáspróba", vezetett rész és önálló rész.
A feladatok a Moodle-re vannak feltöltve, és ott is kell beadni a megoldásokat.
- 1. hét: elmaradt
- 2. hét: szünet
- 3. hét: tudnivalók, labor (videó): Unix-parancsok ismétlése (apt(-get), ls, cat, vim, top, jobs, chmod, ll, sudo !!) és Juice Shop (npm, nginx, symlink, wget, mv, ln, service, tail, .conf, grep)
- 4. hét: CrySyS Image File Format; property, decorator; debugging
- 5. hét: type hinting: mypy; unit test: pytest (fixture)
- 6. hét (videó): Juice Shop: SQL injection, sleep(), social engineering
- 7. hét (videó): Juice Shop: XSS (reflected, DOM-based, persistent)
- 6. labor: vezetett rész
- 7. labor: vezetett rész, Visszafejtendő "malware"
- 8. labor: vezetett rész
- 9. labor: CRYPTO
- 10. labor: bevezető videó, Elemezendő naplófájlok
- 11. labor: COMPRESS
- 12. labor: vezetett rész, src
Vizsga
A vizsga 50 pontos, és 20 pontot el kell érni az elégségeshez. A jegyszámítás az alábbi (valójában ugyanaz, mintha az átlagos jegy százalékokat nézed, csak 2vel elosztva):
Pont Jegy 0 - 19 1 20 - 27 2 28 - 34 3 35 - 42 4 43 - 50 5
Kedvcsináló
A tárgyat nagyon érdekesen tartják, és a laborok egyediek egy jó módon (mondjuk a stílusa hasonlít a HAU-ra). Ha valaki a félév közben aktívan készül és csinálja a laborokat, akkor az 5ös megszerzése nem jelent nagy gondot.
1. félév | |
---|---|
2. félév | |
3. félév | |
4. félév | |
5. félév | |
6. félév |