460-4054/05 – Počítačové viry a bezpečnost počítačových systémů (PVBPS)

Garantující katedraKatedra informatikyKredity4
Garant předmětuprof. Ing. Ivan Zelinka, Ph.D.Garant verze předmětuprof. Ing. Ivan Zelinka, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostpovinný
Ročník1Semestrzimní
Jazyk výukyangličtina
Rok zavedení2016/2017Rok zrušení
Určeno pro fakultyFEIUrčeno pro typy studianavazující magisterské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
PLU042 Ing. Jan Plucar, Ph.D.
ZEL01 prof. Ing. Ivan Zelinka, Ph.D.
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Zápočet a zkouška 2+2
kombinovaná Zápočet a zkouška 10+0

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Cílem předmětu je seznámení jeho posluchačů s problematikou počítačových virů, jejich definicí a klasifikací, způsobem šíření v počítačových systémech a možným zneužitím k průniku do počítačových systémů. Součástí kurzu je rovněž práce s ostrým malware a konstrukce ukázkových typů malware a jeho hybridizace s umělou inteligencí. Absolvent získá přehled o moderních typech malware, jeho použití jako spyware a kybernetické zbraně. Po úspěšném absolvování kurzu bude absolvent schopen aplikovat opatření zvyšující bezpečnost počítačových systémů.

Vyučovací metody

Přednášky
Cvičení (v učebně)
Projekt

Anotace

V rámci předmětu se bude probírat širší spektrum technik tzv. škodlivého kódu. Budou zmíněny jak historicky klasické techniky, tak moderní postupy a algoritmy. Dále budou probírány na úvodní úrovni počítačové viry, jejich klasifikace a způsoby šíření, práce s ostrým malware a konstrukce ukázkových typů malware a jeho hybridizace s umělou inteligencí. Moderní typy malware a jeho použití jako spyware a kybernetické zbraně. Student by měl mít po absolvování kurzu ucelené znalosti z výšezmíněných oblastí, včetně možnosti aplikací protiopatření, zvyšujících bezpečnost počítačových systémů. Součástí kurzu budou i samostatné úkoly plynoucí z přednášek (příp. cvičení). Jejich kontrola a prezentace bude součástí přednášek.

Povinná literatura:

1. Zelinka I., Merhaut F., Úvod do počítačové bezpečnosti, Fakulta elektrotechniky a informatiky VŠB-TU Ostrava, 2018 2. Peter Szor, Počítačové viry - analýza útoku a obrana, Zoner Press

Doporučená literatura:

3. Pokorný J., Hacking - umění exploitace, Zoner Press Lance J., Phishing bez záhad, Grada, 2007

Forma způsobu ověření studijních výsledků a další požadavky na studenta

E-learning

Další požadavky na studenta

Je požadována schopnost tvořit programy v některém z používaných programovacích jazyků a aplikovat získané znalosti do tvorby algoritmů. Další požadavky na studenta nejsou kladeny.

Prerekvizity

Předmět nemá žádné prerekvizity.

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Přednášky: 1. Umělá inteligence a umělý život, sebereplikující se struktury (hra života, Fredkinovy sebereplikující se struktury, von Neumann a teorie sebereplikujících se automatů). Umělý život a virtuální univerza (Tierra, biomorfové, SBEAT, SBART, EDEN, SWIMBOOT). Umělý život a komplexní systémy. 2. Historie počítačového malware, vznik, a postupný vývoj. 3. Sebereplikující se struktury, konečné automaty a Turingovy stroje. Počítačový malware z hlediska teoretické informatiky. 4. Definice viru, společné a rozdílné rysy s virem biologickým. Klasifikace škodlivého kódu (viry, adware, spyware, červi,...) a jeho šíření kódu. HOAX. Generátory virů. Základní způsoby šíření. Antimalwerové desatero. 5. Podrobné metody infekce, Metody infekce. Infekce souborů (com, exe, API, MBR, DBR, ...), techniky infekce (přepisující viry, připojující se viry, dutinové viry, utajený bod...). Infekce paměti, využívání přerušení, swapovací viry. 6. Škodlivý kód a jeho závislost na prostředí (t.j. na OS, souborovém formátu, procesoru, architektuře, překladačích, ...). Počítačoví červi, životní cyklus a payload. 7. Základní obranné strategie virů. Skenování v paměti, trasování, ochrana proti ladění, obrněné viry, retroviry, obrana proti heuristické analýze, emulaci a disassemblování, použití nedokumentovaných funkcí. 8. Tvorba a generování virů. Kód viru, zakódované viry (dekryptory, nelineární dekódování, W95/fono, W95/Mad2736), oligomorfní viry, polymorfní viry, metamorfní viry. Generátory virů. 9. Reverzní inženýrství škodlivého kódu, disasemblovací technologie. Základy crackingu. Analýza přepisujícího a připojujícího se viru v jazyce C a jeho disassemblování. 10. Evoluční teorie a nekonvenční vývoj malware. Evoluční vývoj virů, botnet a hejnový virus. 11. Základy phishingu, spamu a antispamu. Spam, definice a historie. Nástroje pro boj se spamem. Antispamové strategie a nástroje pro Windows a Linux. Bayesovský klasifikátor a SpamAssassin. Poštovní klient a filtry. Phishing. Phishing jako podkategorie spamu.,Phishing a spyware. Fals identity, přesměrování a falešná identita. Phishing a Malware. 12. Kybernetická bezpečnost a úvod do hackingu - základní pojmy a postupy. 13. Zálohování. Základní zálohovací systémy a postupy 14. Bitcoiny a dark web. Cvičení v PC učebnách 1. Keylogger: Studenti si vytvoří základní program malwaru, který bude sloužit jako jednoduchý keylogger. Seznamte se s problematikou tvorby keyloggeru. 2. Windows API, registry, oprávnění: Výuka ovládání Windows API a programová práce s registry Windows. Pomocí registrů Windows zajistěte, aby se Váš keylogger spouštěl při startu systému. 3. PowerShell, Alternate stream: Skrytí malware do alternativního streamu, ukázka práce s PowerShellem. Seznamte se s mechanismy „streamů“, které jsou součástí NTFS file systému. Seznamte se se základy PowerShellu a s kódováním base64. 4. DLL injection: Maskování běhu malware za použití této techniky. Přes Vaši aplikaci proveďte DLL injection vytvořené knihovny do zamýšleného (běžícího) procesu. 5. Symetrické šifrování: Malware šifrující soubory - využití např. u ransomwaru. Svůj malware z předchozích cvičení rozšiřte o šifrování a dešifrování souboru, do kterého se ukládají stisknuté klávesy z keyloggeru. 6. Statická analýza malware 1: Úvod do analýzy malware - integrita souborů, extrakce stringů. Ověřování integrity a získávání dat ze software: Seznamte se s technikami užívanými k ověřování itegrity souborů. Seznamte se s nástroji pro extrakci řetězců (stringů) z exe souborů. Seznamte se s on-line službou https://www.virustotal.com/. 7. Statická analýza malware 2: Práce s PE hlavičkami, odhalení obfuskačních technik u malware. Nastudujte různé techniky, jež se užívají ke skrytí těla malware. Především pak techniky typu „obfuscation“ a „packing“. Detailně se seznamte s hlavičkami užívanými u spustitelných souborů – především pak PE a DOS hlavičkou. 8. Dynamická analýza malware: Debuggování dodaného malware v assembleru, úprava kódu v assembleru. Debugging a Cracking: Seznamte se s procesem debuggování binárních souborů. Crackněte dodanou aplikaci. 9. Praktická analýza malware: Studentům bude dodán kód aktuálního malware, samostatně si pak vyzkouší manuální analýzu, při které by měli uplatnit nabyté vědomosti. Proveďte důkladnou analýzu dodaného vzorku, na internetu najděte o malware různé zajímavé informace a zodpovězte přiložené otázky. 10. Automatická analýza malware za pomocí Cuckoo Sandbox: Instalace Cuckoo sandboxu, analýza malware za použití automatizovaných nástrojů. Nainstalujte si vlastní instanci Cuckoo Sandboxu. Přes Cuckoo Sandbox analyzujte dodané vzorky. Následně také proveďte analýzu keyloggeru, který jste vytvářeli v rámci cvičení. 11) Studentské prezentace

Podmínky absolvování předmětu

Prezenční forma (platnost od: 2016/2017 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodůMax. počet pokusů
Zápočet a zkouška Zápočet a zkouška 100 (100) 51
        Zápočet Zápočet 30  15
        Zkouška Zkouška 70  35 3
Rozsah povinné účasti: K získání zápočtu: 80% účasti v laboratořích, odevzdání všech protokolů, absolvování zkoušky podle podmínek přednášejícího.

Zobrazit historii

Podmínky absolvování předmětu a účast na cvičeních v rámci ISP: Splnění všech povinných úkolů v individuálně dohodnutých termínech.

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2025/2026 (N0613A140035) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2024/2025 (N0613A140035) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2024/2025 (N0688A140015) Průmysl 4.0 P angličtina Ostrava 2 volitelný odborný stu. plán
2023/2024 (N0688A140015) Průmysl 4.0 P angličtina Ostrava 2 volitelný odborný stu. plán
2023/2024 (N0613A140035) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2023/2024 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 2 volitelný odborný stu. plán
2022/2023 (N0688A140015) Průmysl 4.0 P angličtina Ostrava 2 volitelný odborný stu. plán
2022/2023 (N0613A140035) Informatika P angličtina Ostrava 2 volitelný odborný stu. plán
2022/2023 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 2 volitelný odborný stu. plán
2021/2022 (N0688A140015) Průmysl 4.0 P angličtina Ostrava 2 volitelný odborný stu. plán
2021/2022 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 2 volitelný odborný stu. plán
2020/2021 (N0688A140015) Průmysl 4.0 P angličtina Ostrava 2 volitelný odborný stu. plán
2020/2021 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 2 volitelný odborný stu. plán
2019/2020 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 2 volitelný odborný stu. plán
2019/2020 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 2 volitelný odborný stu. plán
2018/2019 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 2 volitelný odborný stu. plán
2018/2019 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 2 volitelný odborný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (1801T064) Informační a komunikační bezpečnost P angličtina Ostrava 1 povinný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 2 volitelný odborný stu. plán
2017/2018 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 2 volitelný odborný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika P angličtina Ostrava 2 volitelný odborný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (2612T025) Informatika a výpočetní technika K angličtina Ostrava 2 volitelný odborný stu. plán
2016/2017 (N2647) Informační a komunikační technologie (1801T064) Informační a komunikační bezpečnost P angličtina Ostrava 1 povinný stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku

Hodnocení Výuky

Předmět neobsahuje žádné hodnocení.