Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    IT biztonság

    A tantárgy angol neve: IT Security

    Adatlap utolsó módosítása: 2022. augusztus 31.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar

    Mérnökinformatikus szak

    BSc

    kötelező

    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VIHIAC07 6 3/0/1/v 5  
    3. A tantárgyfelelős személy és tanszék Dr. Buttyán Levente,
    4. A tantárgy előadója Dr. Buttyán Levente, docens, HIT
    Dr. Ács Gergely, docens, HIT
    Dr. Bencsáth Boldizsár, adjunktus, HIT
    Dr. Biczók Gergely, docens, HIT
    Dr. Holczer Tamás, adjunktus, HIT
    Futóné Papp Dorottya, tanársegéd, HIT
    Gazdag András Gábor, tanársegéd, HIT
    Ládi Gergő, tudományos segédmunkatárs, HIT
    5. A tantárgy az alábbi témakörök ismeretére épít Programozás alapjai (K3)
    Java és C/C++ programozási nyelvek (K3/K4)
    Operációs rendszerek (K2/K3)
    Kommunikációs hálózatok (K2/K3)
    6. Előtanulmányi rend
    Ajánlott:
    Kommunikációs hálózatok
    7. A tantárgy célkitűzése A tárgy célja, hogy növelje a mérnök-informatikus hallgatók biztonságtudatosságát, formálja a biztonsággal kapcsolatos szemléletüket, valamint felkészítse őket az IT biztonsággal kapcsolatos gyakorlati kihívásokra, és áttekintést adjon a gyakorlatban használt IT biztonsági megoldásokról. Ennek érdekében, a tárgy bevezető szintű áttekintést nyújt az IT biztonság különböző területeiről, és leíró jelleggel bemutatja az egyes területek kihívásait és azok megoldásait. Néhány kiemelt területen (pl. szoftverbiztonság, webes rendszerek biztonsága, kriptográfia) gyakorlati feladatok megoldására is sor kerül laborkörnyezetben, így ezeken a területeken a tárgy az előadásokon elhangzott módszerek megértésén túl, azok alkalmazását is célul tűzi ki. A tárgy további célja, hogy alapozást nyújtson azon hallgatók számára, akik IT biztonsággal kapcsolatos ismereteiket az MSc program keretében szeretnék majd elmélyíteni.
    8. A tantárgy részletes tematikája Az előadások részletes tematikája:
    IT biztonsággal kapcsolatos alapfogalmak, az IT biztonság kockázat alapú megközelítése: alapvető biztonsági célok (CIA, AAA); támadó modellek, sérülékenységek, biztonsági mechanizmusok áttekintése; kockázatmenedzsment, security engineering és security operations folyamata; etikai kérdések az IT biztonságban. (2x45 perc)

    A kriptográfia története: alapvető kriptográfiai fogalmak bevezetése történelmi példákon keresztül, egyúttal a kriptográfia története főbb mérföldköveinek bemutatása. Modern kriptográfiai algoritmusok: szimmetrikus és aszimmetrikus kulcsú rejtjelezés, hash függvények, üzenet hitelesítés, digitális aláírás, véletlenszám generálás, kulcscsere protokollok, PKI. Modern kriptográfiai alkalmazások áttekintése, a kriptográfiai rendszerek gyakorlati problémái. (6x45 perc)

    Hitelesítés fogalma, módszerei, alkalmazása: a napjainkban használt tudás-, birtok- és tulajdonságalapú hitelesítési módszerek bemutatása. Ezek működési elvei, előnyei és hátrányai. Lehetséges támadások az egyes módszerekkel szemben, védekezés a támadások ellen. Két- és többfaktoros hitelesítés. Esettanulmányok. Néhány, hitelesítéssel kapcsolatos szabvány, keretrendszer és protokoll (pl. OpenID, Kerberos, FIDO) fogalmainak és működésének bemutatása. Engedélyezés fogalma, módszerei, alkalmazása: az engedélyezés célja, megközelítések. Néhány fontosabb, engedélyezéssel kapcsolatos szabvány, keretrendszer és protokoll (pl. OAuth, SAML) fogalmainak és működésének bemutatása; példák mindennapjainkból, esettanulmányok. (4x45 perc)

    A hozzáférés-szabályzás és kapcsolódó fogalmai. A hozzáférés-szabályzás általános modellje és két fő megközelítése: DAC, MAC. Engedélyezés és hozzáférés-szabályzás Linux alapú operációs rendszereken: felhasználók, csoportok, engedélybitek; POSIX ACL-ek, SELinux, AppArmor. Engedélyezés és hozzáférés-szabályzás Windows operációs rendszereken: felhasználók, csoportok, fájlrendszer- és megosztásszintű engedélyek. (2x45 perc)

    Szoftverekkel kapcsolatos biztonsági kihívások: a tervezés, fejlesztés, tesztelés és üzemeltetés során felmerülő lehetséges problémák és azok megoldásai. Az alkalmazás fejlesztési folyamat lépései során megjelenő biztonsági kihívások bemutatása; a tervezés biztonsági kihívásai; szoftverek biztonsági elemzése és tesztelése (code review, architekturális kockázatelemzés, software penetration testing, fuzzing), néhány tesztelést segítő eszköz bemutatása. Implementációs kihívások alacsony szintű programozási nyelvek esetén: memória korrupciós hibák oka és kihasználása (a programozási hibákból származó biztonsági problémák típusai, a hibákat kihasználó exploit technikák működése, illusztratív példák, pl: buffer overflow, heap overflow, format string, ROP, stb.); a támadásokat megnehezítő védelmi megoldások bemutatása. Implementációs kihívások webes rendszerekben: az alkalmazásokra veszélyt jelentő kliens és szerver oldali támadások (SQL injection, XSS, CSRF, stb.) és a lehetséges védelmi megoldások (SOP, CSP, stb.) bemutatása. (8x45 perc)

    Hálózatbiztonsági kihívások: tipikus hálózati támadás fázisai (felderítés, behatolás, backdoor telepítés, lateral movement és priviledge escalation, root-ra törés), az egyes fázisokban alkalmazott módszerek és eszközök; hálózatok biztonsági tesztelése (penetration testing, etikus hacking). (2x45 perc)

    Hálózatbiztonsági megoldások: határvédelem tűzfalakkal, tűzfalak típusai, működésük, tipikus konfigurációs beállítások, és tipikus hibák; behatolás detektáló és SIEM rendszerek fajtái, működésük, virtuális magánhálózatok. (4x45 perc)

    Kártékony programok (malware) fogalma, működése: Rosszindulatú szoftverek típusai (vírusok, férgek, trójaiak, stb.), működésük, terjedési és rejtőzködési technikák (rootkit-ek), alkalmazások (kiberbűnözés, botnetek, célzott támadások). Kártékony programok detekciója. (2x45 perc)

    IT rendszerek biztonságának üzemeltetési kérdéssei: Sérülékenységek menedzsmentje, frissítés, back-up. Biztonsági incidensek kezelése: malware fertőzések detektálása, malware alapú incidensek kezelése, logelemzés, memória és disk forensics alapjai. (2x45 perc)

    Személyes adatok védelme (privacy): Adatvédelem (privacy) és a személyes adat fogalma, motivációs példák. Webes nyomonkövetési technikák (pl. browser fingerprinting, third party cookie-k). Anonim kommunikációs rendszerek működése, alkalmazási területek. Query auditing. Anonimizáció, pszichológiai profilozás. (2x45 perc)

    A gépi tanulás biztonsági kihívásai: Motivációs példák. CIA (confidentiality, integrity, availability) problémák a gépi tanulásban, gépi modellek auditálása, jogi háttér. Confidentiality: Modell inverzió, Membership támadás. Integrity: Támadó minták (evasion), tanulóadat szennyezése (targeted pollution). Availability: Sponge minták generálása, nem célzott szennyezés (untargeted pollution). (4x45 perc)

    A biztonság és a privacy közgazdasági megközelítése: Egyéni és szervezeti gazdasági ösztönzők szerepe az információbiztonságban. Aszimmetrikus információ: kontraszelekció, erkölcsi kockázat, tragacspiac. Ösztönzők összehangolásának hiánya: példák, IT biztonsági eszközök és szolgáltatások piaca. Externáliák: biztonság mint externália, biztonsági keresztfüggések. Sérülékenységek gazdaságtana. Kiberbiztosítás. Privacy gazdasági kérdései, privacy keresztfüggések, példák: Facebook, Google, genom, lokáció, k-anonim rendszerek. (4x45 perc)
    Amennyiben a félév során elmarad egy előadás (pl. ünnepnap miatt), az utolsó téma (economics of security and privacy) összevonva, rövidítve, egy előadáson hangzik el.

    A gyakorlatok/laborok részletes tematikája
    1. labor: Kriptográfiai programkönyvtár használata: Kriptográfiai mechanizmusokat (rejtjelezés, digitális aláírás) használó programok készítése alkalmas kriptográfiai programkönyvtár használatával.

    2. labor: Inputvalidáció: A támadási felületen át érkező adatok megfelelő ellenőrzésenek elsajátítása olyan alkalmazás készítésével, mely képes a megadott, potenciálisan veszélyes bemeneteket helyesen kezelni.

    3. labor: Szoftverek biztonsági tesztelése: A különböző technológiákkal fejlesztett alkalmazások esetén felmerülő tesztelési módszerek megismerése és elsajátítása, kiemelt hangsúllyal az alacsony szintű nyelveken fejlesztett alkalmazásokra.

    4. labor: Webes rendszerek biztonsága: Webes alkalmazásokat fenyegető támadások megértése és kipróbálása; a támadásokat megállító lehetséges védelmek kiválasztása vagy alkalmazása.

    5. labor: Incidens kezelés, digitális elemzés (forensics): Logelemzés, rögzített hálózati forgalom (packet capture) elemzése, memóriakép és háttértár digitális elemzése (memory and disk forensics).

    6. labor: Személyes adatok védelme (privacy): Query auditor fejlesztése alkalmas lineáris algebra könyvtár használatával.
    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) Előadás és laboratórium:
    •    Elméleti tananyag: frontális előadások (illusztratív példákkal, esettanulmányokkal), illetve kiadott írásos anyag útmutató kérdések/szempontrendszer segítségével történő önálló feldolgozása (reading assignment)
    •    Gyakorlati ismeretek: távolról vagy egyetemi laborban végzet laboratóriumi gyakorlatok önálló feladat-megoldással, illetve a gyakorlati feladatok megoldását segítő, előre kiadott írott anyag (mérési segédlet) laboratóriumi gyakorlat előtt történő önálló feldolgozása
    10. Követelmények Szorgalmi időszakban:
    •    1 db nagy zárthelyi (sikeres teljesítés feltétele: a zárthelyin megszerezhető pontszám min. 40%-nak elérése)
    •    6 db labor esetén legalább 4 db labor sikeres teljesítése (ha a félév során valamelyik labor elmarad, akkor 3 db labor sikeres teljesítése) szükséges az aláírás megszerzéséhez (sikeres teljesítés feltétele: a labor gyakorlat során megszerezhető pontszám min. 50%-nak elérése)

    Vizsgaidőszakban:
    •    Írásbeli vizsga (sikeres teljesítés feltétele: a vizsgán megszerezhető pontszám min. 40%-nak elérése)

    A félév végi osztályzat megállapításának módja:
    1/3 * ZH + 2/3 * V a legközelebbi egészre kerekítve, ahol ZH a sikeres nagy zárthelyi, V pedig a sikeres vizsga osztályzata

    11. Pótlási lehetőségek A sikertelen (mulasztott vagy nem teljesített) laboratóriumi gyakorlatok nem pótolhatók (ezért nem kötelező a 6 laborból csak 4-et sikeresen teljesíteni).
    A sikertelen (mulasztott vagy nem teljesített) nagy zárthelyi a szorgalmi időszakban egyszer pótolható.
    12. Konzultációs lehetőségek Oktatókkal egyeztetett alkalmi időpontban.
    13. Jegyzet, tankönyv, felhasználható irodalom •    Előadásokhoz rendelt online olvasnivalók (könyvfejezetek, cikkek, blogsorozatok)
    •    The Cyber Security Body Of Knowledge (CyBOK) on-line gyűjtemény fejezetei (https://www.cybok.org/)
    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
    Kontakt óra56
    Félévközi készülés órákra20
    Felkészülés zárthelyire20
    Házi feladat elkészítése0
    Kijelölt írásos tananyag elsajátítása14
    Vizsgafelkészülés40
    Összesen150
    15. A tantárgy tematikáját kidolgozta Dr. Buttyán Levente, docens, HIT
    Dr. Ács Gergely, docens, HIT
    Dr. Bencsáth Boldizsár, adjunktus, HIT
    Dr. Biczók Gergely, docens, HIT
    Dr. Holczer Tamás, adjunktus, HIT
    Futóné Papp Dorottya, tanársegéd, HIT
    Gazdag András Gábor, tanársegéd, HIT
    Ládi Gergő, tudományos segédmunkatárs, HIT
    IMSc tematika és módszer Online módon elérhető, IT biztonsággal kapcsolatos gyakorlati feladatok (pl. saját vagy más által szervezett CTF versenyek feladatainak) megoldásával lehet IMSc pontokat szerezni. Az ehhez szükséges ismeretek önálló elsajátítását útmutatóval (study guide) segítjük.
    IMSc pontozás Alkalomszerűen megállapított pontozás. Maximum 25 IMSc pont szerezhető.