V tejto kapitole si povieme niečo bližšie o bezpečnosti programov. Zameriame sa na operačný systém MS Windows
MS Windows ma dve základné úrovne bezpečnosti:
-
user režim (režim používateľa),
-
kernel režim (režim jadra).
V skutočnosti existujú štyri okruhy riadenia práv, ktoré sú podporované hardvérom.
Sú to okruhy:
-
okruh0 = kernel,
-
okruh1 = OS,
-
okruh2 = služby OS,
-
okruh3 = user.
Princípy okruhov boli zavedené spoločnosťou Intel a objavili sa prvý krát v mikroprocesoroch rodiny x86. Ako sme už spomenuli, v operačných systémoch sa využívajú iba dve úrovne bezpečnosti.
-
režim používateľa = okruh3
-
režim jadra = okruh0.
Bezpečnostný model OS MS Windows je detailne zobrazený na nasledujúcom obrázku:

Security reference monitor – zodpovedá za riadenie prístupu
Security Subsystem – zabezpečuje/obsahuje:
-
processlogon (userlogon)
-
local security authenity (LSA) – vytvára pre používateľa ACCESS TOKEN
-
security account manager (SAM) – databáza hesiel a používateľských kont, ktoré používa LSA pri prihlásení a autentifikácii používateľov (zašifrovaná databáza hashov hesiel)
-
centrálna databáza pre uchovávanie konfigurácie systému Windows
-
položky sa nazývajú kľúče (keys)
-
dá sa priamo modifikovať a prezerať používateľom (iba niektoré položky)
-
na najvyššej úrovni má 5 dôležitých bezpečnostných kľúčov
-
HKEY_CLASSES_ROOT (asociácie na názov koncovky súborov)
-
HKEY_CURRENT_USER (konfiguračné údaje práve prihláseného používateľa)
-
HKEY_LOCAL_MACHINE (konfiguračné údaje pre PC)
-
HKEY_USERS (všetky zavedené používateľské profily)
-
HKEY_CURRENT_CONFIG (konfigurácia HW pri štarte systému)
-
skupina kľúčov a hodnôt v registry
-
bezpečnostne relevantné hniezda (hives):
-
HKEY_LOCAL_MACHINE\SAM
-
HKEY_LOCAL_MACHINE\Security
-
HKEY_LOCAL_MACHINE\Softvare
-
HKEY_CURRENT_CONFIG
-
HKEY_USERS\Default
Dobrá bezpečnostná praktika je odstrániť editor registry (regedit32.exe) zo systému, ak nie je spravovaný lokálne – bez domény.
-
podpora centrálnej administratívy bezpečnosti
-
súbor PC zdieľajúcich spoločnú databázu používaných kont a bezpečnostnú politiku
-
bezpečnostnú politiku zabezpečuje DOMAIN CONTROLER + doménoví administrátori
-
súčasť OS
-
môže fungovať aj ako autentifikačná autorita pre iné entity, ako pre doménu, v ktorej funguje
-
môžeme zobraziť ako strom typovaných objektov
-
pridávanie nových objektov, respektíve ich typov
-
každý typ má špecifické vlastnosti a jedinečný GUI (globaly unique identifier)
Príklad:

-
súbory,
-
registry kľúče,
-
Active Directory kľúče.
-
lokálny používateľ,
-
alias, lokálna skupina spisov,
-
doménový používateľ,
-
skupina alebo stroj.
Každý subjekt má pridelený SID (security identifier). SID lokálneho používateľa pozná iba PC. SID doménového používateľa pozná doména.
Malware (skratka z anglického malicious software, niekedy uvádzané ako malvér) je všeobecné označenie škodlivého softvéru. Patria sem napríklad vírusy, trójske kone, spyware a adware. Malware sa do počítača v dnešnej dobe dostáva zvyčajne cez Internet, hlavne pri prezeraní škodlivých stránok s nie dobre zabezpečeným systémom.
Neočakávané správanie programu:
-
správanie mimo požiadaviek
Programová chyba:
-
odchýlka od špecifikácie programu
-
neexistuje spôsob ako im zamedziť
-
škodlivý kód zneužíva neúmyselné programové chyby na páchanie úmyselného škodlivého správania, na úmyselné spôsobenie škody
Ide o najznámejšiu a jednu z najčastejších foriem infiltrácie. Názov vírus je zhodný s názvom biologických organizmov a snaží sa vystihnúť podstatu správania sa tohto škodlivého softvéru. Vírus je vlastne počítačový program, ktorý je schopný sám sa replikovať, teda sám sa rozmnožovať. Tohto je schopný iba za predpokladu, že je pripojený k vykonateľnému hostiteľovi. Takýmto hostiteľom môžu byť spustiteľné (executable) súbory, systémové oblasti disku a podobne. Spustením tohto hostiteľa sa spustí aj vírus a ten sa hneď snaží o rozmnoženie. Jeho cieľom je pripojiť sa k ďalšiemu vhodnému súboru. Kód, ktorý vírus obsahuje je väčšinou škodlivý a vykonáva v počítači škodlivú činnosť.
S pojmom červ sa prvý krát stretávame už v roku 1989, kedy sa prvý krát na scéne objavil Morrisov červ. Počítačový červ je program so škodlivým kódom, ktorý napáda hostiteľský počítač, využíva jeho pripojenie na internet a prostredníctvom spojenia hostiteľského počítača s inými počítačmi sa červ šíri ďalej. Červ môže byť charakterizovaný ako podtrieda vírusov. Na rozdiel od vírusov však červ nepotrebuje na svoje šírenie hostiteľský program, pretože červ obsahuje podprogramy, ktoré zabezpečujú jeho šírenie. Červy, ako už bolo spomenuté, sa šíria prostredníctvom počítačovej siete, na čo využívajú sieťové pakety. Tieto pakety sú smerované od hostiteľského počítača. Keď takýto paket dorazí do počítača, tak hľadá v systéme bezpečnostnú dieru. Ak ju nájde, tak môže dôjsť k infikovaniu systému a k ďalšiemu šíreniu červa. Z tohto vyplýva, že šírenie červov je založené na nachádzaní bezpečnostných dier v systéme.
Ciele červov:
-
určiť, kade sa môže šíriť
-
zabezpečiť šírenie
-
zostať neodhalený a neodhaliteľný
Na rozdiel od vírusov sa trójsky kôň nachádza v počítači iba v jednom exemplári. Nie je schopný rozmnožovať sa a infikovať ďalšie súbory. Vo väčšine prípadov vystupujú trójske kone ako exe súbory, ktoré neobsahujú nič iné, iba telo trójskeho koňa.
Ide o aplikácie, ktoré pracujú na princípe klient-server. Svojimi schopnosťami sú veľmi podobné programom typu VNC alebo remote administrator. Na rozdiel od nich však v systéme vystupujú anonymne a snažia sa skryť svoju prítomnosť. Preto sú tieto programy preventívne hlásené antivírovými programami ako škodlivý softvér.
Backdoor je teda aplikácia, ktorá umožňuje vzdialené riadenie počítača a sama o sebe nemusí byť škodlivá. Záleží na osobe, ktorá túto aplikácia používa. Ak ju používa na páchanie škodlivej činnosti, tak takúto osobu nazývame vzdialený útočník. Princíp činnosti je, že útočník má k dispozícii klientskú časť softvéru a serverová časť sa nachádza na napadnutom počítači. Klient posiela svoje požiadavky serveru a ten ich následne plní, prípadne posiela klientovi požadované informácie.
Ako získa vírus riadenie
1. prehlási sa za aplikáciu
2. kód vírusu je zavedený namiesto kódu aplikácie
Kam sa vírus ukladá
Tvorcha chce mať vírus:
-
ťažko detegovateľný
-
ťažko deaktivovateľný
-
rozširujúcu sa infekciu
-
schopný reinfikovať súbory
-
ľahko vytvoriteľný
-
strojovo nezávislý
Z týchto podmienok vyplýva umiestnenie vírusu:
-
Boot sektor
-
Aplikačné programy
Problém odtekania informácií, respektíve poskytovanie citlivých informácií neoprávneným osobám:
-
Prostredníctvom legálnych výstupov - napríklad v obrázku JPG použijeme posledné dva bity každého pixelu na zakódovanie tajných informácií (steganografia).
Opatrenie: spraví sa architektúra systému a každý modul má jasne navrhnuté správanie a rozhranie; každý modul vyvíja iná programátorská skupina, pričom celý systém integruje dokopy a testuje ďalšia skupina.

-
Prostredníctvom priestoru na disku – alokáciou voľného miesta sa dá komunikovať podobne ako v predchádzajúcom prípade
-
Prostredníctvom zisťovania stavu servera na generovanie jedinečných identifikátorov – realizovateľné, pretože algoritmus na generovanie napr. náhodných súborov je známy.


-
Prostredníctvom časového kanálu
