Download as pdf or txt
Download as pdf or txt
You are on page 1of 25

Informatikai biztonság alapjai jegyzet

Informatikai biztonság egy rendszer olyan állapota, melyben a kezelt adatok bizalmassága,
sértetlensége, rendelkezésre állása biztosított, valamint a rendszerelemek sértetlensége és
rendelkezésre állása szempontjából zárt, teljese körű, folytonos és kockázatokkal arányos.

ZÁRT VÉDELEM: Védelem, mely az összes releváns fenyegetést figyelembe veszi


TELJESKÖRŰ: Védelmi intézkedések rendszer minden elemére kiterjednek
FOLYTONOS: Időben változó körülmények nem befolyásolják
KOCKÁZATOKKAL ARÁNYOS: Védelemre szánt költség arányos a potenciális kárértékkel

Információbiztonság
Informatikai biztonságnál szélesebb, szóban, írásban stb., bármely módon információk védelmére
vonatkozik
Adatvédelem: Személyes adatok jogszerű kezelése, ezek védelme
Adatbiztonság: Informatikai biztonság részhalmaza, adatok jogos megszerzése, módosítása, törlése
elleni műszaki és szervezési megoldások

CIA – Biztonsági célok


Confidentiality / Bizalmasság
Titkos / személyes információk nem kerülhetnek jogosulatlanok kezébe. Adatok tárolásánál
feldolgozásánál, továbbításánál biztosítani kell
Integrity / Sértetlenség
Adatintegritás: Adat nem módosul tárolása, feldolgozása, továbbítása során
Rendszerintegritás: Rendszer az elvártak szerint működik, jogosulatlan módosításoktól mentes
Availability / Rendelkezésre állás
A szolgáltatás a jogosultak számára szükséges időben, szükséges ideig használható

Bónusz:
Accountability / Nyomonkövethetőség
Tevékenységek visszakövethetőek
Assurance / Biztosíték, garancia
Bizalom, hogy az előbbi 4 biztonsági célt a biztonsági alrendszer megfelelően ellátja

Sérülési szintek:
Alacsony:
Korlátozott hatás, szervezet képes legfőbb feladatait végrehajtani, csak minimális kár keletkezik
vagyontárgyaiban / bevételében, személyi sérülés minimális
Közepes:
Komoly hatás, jelentős kár, bevétel csökkenés, szervezet képes ellátni feladatait, de hatásfoka
csökken
Magas:
Végezetes hatás, katasztrofális kár, szervezet nem képes ellátni feladatait
Hálózati kommunikáció védelme
OSI biztonsági struktúra
Biztonsági támadás:
Bármilyen tett, mely az információ biztonságát veszélyezteti
Biztonsági mechanizmusok:
Eljárások, melyeket arra terveztek, hogy detektálja, megelőzze vagy kijavítsa a támadás okozta
kárt
Biztonsági szolgáltatások:
Szolgáltatások, melyek védik az adatátviteli és feldolgozó rendszerek biztonságát. Egy vagy több
biztonsági mechanizmust használ

Támadási kategóriák:
Passzív támadás:
Adatátvitel lehallgatása, monitorozása. Cél az üzenet tartalmának megszerzése, forgalom
elemzése.
Nehéz észrevenni, adat nem módosul.
Aktív támadások:
Adatfolyam módosítása, hamis üzenet generálása.
Nehéz teljesen megelőzni
Példák: • Megszemélyesítés adatmódosítás
• Üzenet visszajátszás
• DDOS
Megszemélyesítés:
Támadó eljátsza a legális fél szerepét
Üzenet visszajátszás:
Támadó lehallgatja az üzenetet, majd újra elküldi
Digital signature

Routing control
Traffic padding
Authentication
Access control
Encipherment

Data integrity

Notorization
exchange

Peer entity authentication x x x


Data origin authentication x x
Access control x
Confidentiality x x
Traffic flow confidentiality x x x
Data integrity x x x
Nonrepudiation x x x
Availability x x
2. Titkosítási sémák

Két legfőbb kategória:


Szimmetrikus titkosítás:
Titkosító és visszafejtő kulcs megegyezik, vagy a titkosító kulcsból könnyen, polinomiális időn belül
kiszámítható.
SE = (Key, Enc, Dec) hármas egy szimmetrikus titkosítási séma, ahol
Key: Kulcsgeneráló algoritmus, mely egy k biztonsági paraméterben megad egy K titkos kulcsot
Enc: Titkosító algoritmus, mely egy m nyílt üzenethez és K titkos kulcshoz general c titkosított
üzenetet
𝑐 = 𝐸𝑛𝑐𝐾 (𝑚)
Dec: Visszafejtő algoritmus, mely egy c titkosított üzenethez és egy adott K kulcshoz megad egy
nyílt üzenetet
𝑚 = 𝐷𝑒𝑐𝐾 (𝑐)
𝐷𝑒𝑐𝐾 (𝐸𝑛𝑐𝐾 (𝑚)) = 𝑚
Sokszor része egy r véletlen is, ilyenkor a titkosítás is randomizált
Visszafejtő algoritmus determinisztikus

Asszimmetrikus titkosítás:
A titkosító és visszafejtő kulcs különbözik olyannyira, hogy a visszafejtő a titkos kulcsból cask nem
polinomiális időben számítható ki.
AE = (Key, Enc, Dec) hármas asszimetrikus titkosítási séma, ahol
Key: Kulcsgeneráló algoritmus, mely egy k biztonsági paraméterben megad egy (PK, SK)
nyilvános és titkos kulcsból álló part
Enc: Titkosító algoritmus, mely m nyílt üzenetben és PK nyilvános kulcshoz generál egy c
titkosított üzenetet
𝑐 = 𝐸𝑛𝑐𝑃𝐾 (𝑚)
Dec: Visszafejtő algoritmus, mely egy c titkosított üzenetben és egy adott titkos kulcsban megad
egy m nyílt üzenetet
𝑚 = 𝐷𝑒𝑐𝑆𝐾 (𝑚)
𝐷𝑒𝑐𝑆𝐾 (𝐸𝑛𝑐𝑃𝐾 (𝑚)) = 𝑚
Sokszor eleme r véletlen → randomizált titkosítás
Visszafejtő algoritmus determinisztikus, a kulcs generáló algoritmus határozza meg P, c, K halmazokat

Szimmetrikus Asszimetrikus
Kulcs titkossága Kulcsok titkosak (K) (PK, SK) nyilvános és titkos kulcs
Nyilvános Kulcs Infrastruktúra
Kulcs kezelése Kulcscsere algoritmusok
(Public Key Infrastructure)
Időigény Gyors algoritmusok Lassú algoritmusok
Üzenet mérete Nagy méretű Kis méretű
RSA, ElGamal, elliptikus görbe
Példák TDES, AES
titkosítása
Támadások
Támadó célja
• Titkos visszafejtő kulcs megszerzése
• Egy adott titkosított üzenethez tartozó nyílt üzenet megszerzése

Támadási módok
Csak a titkosított üzenet ismert – LOA
A támadó rendelkezésére áll ugyanazon kulccsal titkosított üzenetekből álló lista
Ismert nyílt üzenet alapú támadás – KPA
A támadó rendelkezésésre áll egy ugyanazon kulccsal titkosított nyílt és titkosított üzenetekből
álló lista.
Cél a titkos kulcs, vagy a listán nem szereplő titkosított üzenethez tartozó nyílt üzenet
megszerzése.
Választott nyílt üzenet alapú – CPA
A támadó rendelkezésére áll egy ugyanazon kulccsal titkosított nyílt és titkosított üzenetből álló
lista, ahol a nyílt üzenetek a támadó által választottak
Nem alkalmazkodó → passzív, a támadó előre kiválasztja a nyílt üzeneteket
Alkalmazandó → aktív, a kapott titkosított üzenetek alapján választja ki a következő nyílt
üzenetet
Cél a titkos kulcs, vagy a listán nem szereplő kulcsot üzenethez tartozó nyílt üzenet megszerzése
Választott titkosított üzenet alapú – CCA
A támadó rendelkezésére áll egy ugyanazon kulccsal titkosított nyílt és titkosított üzenetekből
álló lista, ahol a titkosított üzenetek a támadó által választottak.
Cél ugyanaz mint előbb

Biztonsági kérdések
Feltétel nélküli biztonság:
Támadó korlátlan számítási kapacitással rendelkezik, de úgy sem “jut be”. Gyakorlatban nehéz
megvalósítani
Feltételes biztonság:
A támadó korlátos kapacsitással rendelkezik, polinom idejű algoritmusokat használ, azért jó
Kirchhoff-elv:
Nem azért biztonságos egy rendszer, mert a mögöttes algoritmus nem ismert. Akkor
biztonságos, ha ismert, csak a kulcson múlik és így sem tudják “feltörni”.
Algoritmus tömeges használatnál nem lehet titkos, implementációból visszafejthető. Tehát jól
ismert, nyilvános, tesztelt módszert érdemes használni.
3. DES, AES

DES – Data Encryption Standard


Szimmetrikus titkosítási séma:
𝑃 = 𝐶 = {0,1}64 , 𝐾 = {0,1}56+8 , minden K 56 véletlen bitből és 8 paritás bitből áll

Első lépés egy kulcsfüggetlen permutáció egy 64 bites bemeneten, utolsó lépés ennek az inverze IP-1
Az első ét utolsó lépés között (IP, IP-1) között 16 kör hajtódik végre, miközben minden körben Feistel
struktúra fut le.

Feistel struktúra:
Minden kör két 32 bites bemenetből ugyancsak kettő 32 bites kimenet.
Bal oldali kimenet a jobboldali másolata.
Jobb oldali kimenetet XOR művelettel kapjuk, ebben a műveletben bal oldali bemenet, job oldalai
bemenet és az adott körhöz tartozó kulcsérték alapján adott f függvénnyel képzett érték vesz részt

Belső függvény:
1. 48 bites számot képzünk a 32 bites jobb oldal kiterjesztésével → Expansion P-box: E
2. E kimenete és a Ki bitjei között XOR művelet
3. Így kapott eredményt 8 és 6 bites csoportba osztjuk, ezeket S-boxokba pumpáljuk
4. Minden S-box 4 bites kimenetet generál
5. Végül így kapott 32 bitet egy P dobozon engedjük keresztül
Minden S-box 4 sorból és oszlopból álló táblázat
A bemenet két szélső bitjei (1. és 6.) címzi meg a sort és a középső 4 bitje címzi meg az oszlopot, így egy
cella tartalma az S-box kimente 4 bit.

Körkulcsok generálása:
Minden 16. Intenációs lépéskor különböző körkulcsokat használunk, kezdetben 56 bites permutációt
végzünk a kulcson.
Ezt két 28 bites részre osztjuk, mindkettőt az intenáció (?)mának megfelelő számú bittel balra forgatjuk.
Az 56 bites kulcs egy 48 bites részét minden fokoztatban külön permutáljuk

Visszafejtés:
Visszafejtés és titkosítás ugyanazzal a kulccsal és körkulcsokkal visszafejthető
Visszafejtő és titkosító algoritmus megegyezik, csak a sorrend más (visszafele)

3DES
DES kulcs túl rövid → háromszoros titkosítás ugyancsak háromszor
EDE is elterjedt → 3 kulcs, 3 fokozat
AES
SE = (Key, Enc, Dec) szimmetrikus titkosítási séma
𝑃 = {0,1}128 𝐶 = {0,1}128 𝐾 = {0,1}𝑘 𝑘 ∈ {128, 192, 256}

Egy kör Hex értékek használata


1. Sub Byte
↓ Egy adott S-box alapján az állapot minden celláját átírjuk / kicseréljük

2. Shift Row
| 2. sor – 1 byte-al forgatjuk
| 3. sor – 2 byte-al forgatjuk
↓ 4. sor – 3 byte-al forgatjuk
3. Mix Column
↓ Minden oszlopot egy adott “táblával” összevalamizünk

4. Add Round Key Körkulcs és az eddigi lépések után kapott állapot oszlopkénti XOR művelete

Körök száma:
k = 128 → 10
k = 196 → 12
k = 256 → 14

Körkulcs elkészítése:
1. Az állapot utolsó oszlopát, egy byte-al eltoljuk
2. S-Box alapján átírjuk a byte-okat
3. Állapot első oszlop XOR 2. Lépés eredménye XOR RCON első oszlopa
4. Megkapjuk a körkulcs első oszlopát
5. Állapot 2. Oszlopa XOR első oszlopát → körkulcs 2. Oszlopa
6. Állapot 3. Oszlopa XOR első oszlopát → körkulcs 3. Oszlopa
7. Állapot 4. Oszlopa XOR első oszlopát → körkulcs 4. Oszlopa

Kész az első körkulcs



Minden ezutáni körkulcsra a kezdeti állapot helyett az előző körkulcsot használjuk

RCON mindig következő oszlopával

Visszafejtés
Ugyanez cask visszafele
4. RSA
1977-ben jelent meg
Ezt használja legtöbb PKI – SSL, TLS

Matek alapok
Kongruencia

Euler-féle ₰ függvény
₰(n) megadja 1,2,…,n számok közül hány relatív prím van n-el

Euler-Fermat tétele
Ha p prím → 𝑃 𝑋 𝑎 → 𝑎𝑃−1 ≡ 1 (𝑚𝑜𝑑 𝑃)
→ 𝑎𝑃 ≡ 𝑎 (𝑚𝑜𝑑 𝑃)

Szimultán Kongruenciarendszer
Ebből van a Kínai maradék tétel

RSA séma
AE = (Key, Enc, Dec) asszimetrikus séma
Key:
1. Két nagy prím: 𝑝, 𝑞
2. Kiszámítjuk az RSA modulust: 𝑝 = 𝑃 ∙ 𝑞
3. Kiszámítjuk az Euler féle ꬿ függvényt: θ(n) = (𝑃 − 1) ∙ (𝑞 − 1)
4. Választunk egy véletlen e egészet: 1 < 𝑒 < 𝜃(𝑛) é𝑠 (𝑒, 𝜃(𝑛)) = 1
5. Kiszámítjuk d-t: 1 < 𝑑 < 𝜃(𝑛) é𝑠 𝑒𝑑 = 1(𝑚𝑜𝑑 𝜃(𝑛))
e a titkosító 𝑃𝐾(𝑛, 𝑒) 𝑃=𝐶=𝑍
d a visszafejtő 𝑆𝐾(𝑛, 𝑑)
𝐸𝑛𝑐𝑃𝐾 (𝑚): 𝑚𝑒 (𝑚𝑜𝑑 𝑛) é𝑠 𝑃𝐾 = (𝑛, 𝑒)
𝐷𝑒𝑐𝑠𝐾 (𝑐): 𝑐 𝑑 (𝑚𝑜𝑑 𝑛) é𝑠 𝑆𝐾 = (𝑛, 𝑑)

Használható algoritmusok:
Prímek választása: Miller-Rabin
Véletlen e és ezáltal d választása:
Kibővített Euklideszi algoritmus
Titkosítás, Aláírás megerősítés:
Gyorshatványozás
Visszafejtés aláírás:
Kínai-Maradéktétel
Biztonság
RSA modulus mérete: 1024 bit technikailag jó, de 2048/4096 a megfelelő

RSA-OAEP (Optimal Assymetric Encryption Padding)

Egyirányú függvény:
Kiszámítani könnyű: Adott 𝑥 könnyű 𝑓(𝑥) - et számolni
Invertálni nehéz: Adott 𝑓(𝑥) - ből nehéz 𝑥-et kiszámolni

Nem tudjuk ilyen létezik-e


𝑃 ∙ 𝑞 = 𝑝 – kiszámítani könnyű
𝑝 = 𝑃 ∙ 𝑞 – kiszámítani nehéz

5. Hash, Digitális Aláírás

Kriptográfiai Hash függvények


Teszőleges véges hosszú üzenetben n hosszú üzenetet rendelünk.
Az n attól függ milyen hashelő algoritmust használunk
Adatintegritást védi, mivel küldés előtt hasheljük, hash-t is elküldjük, hogy adat megkapása után van
lehetőség hashelni és összehasonlítani
Hash érték: lenyomat / fingerprint
Lavinahatás: 1 bit változás az inputban, jelentős változást jelent az outputban
Hash függvény nem injektív
Jellemzői, elvárásai:
Őskép ellenálló: 𝑦-hoz nehéz olyan 𝑥, hogy 𝐻(𝑦) = 𝑦
Második ősképellenálló: 𝑥 értékben nehéz olyan 𝑥’ -t találni, hogy 𝑥 ≠ 𝑥’ és 𝐻(𝑥) = 𝐻(𝑥’)
Ütközésmentes: Nehéz olyan 𝑥, 𝑥’ ∈ 𝑋 értéket találni, hogy 𝐻(𝑥) = 𝐻(𝑥’)

MAC – Message Auth Codes


𝐻𝑀𝐴𝐶𝑘 (𝑚) = 𝐻(𝐾 ′ ∅ 𝑜𝑝𝑎𝑑) | | 𝐻(𝐾 ′ ∅ 𝑖𝑝𝑎𝑑)| | 𝑚)) (𝑓𝑜𝑔𝑎𝑙𝑚𝑎𝑚 𝑠𝑖𝑛𝑐𝑠 𝑚𝑖 𝑡ö𝑟𝑡é𝑛𝑖𝑘)
H: hash függvény
m: üzenet
K: titkos kulcs
K’: K-ból származtatott másik titkos kulcs
||: korlát
opad: külső konstans
ipad: belső konstans

Digitális Aláírás Sémák


Hitelesség, letagadhatatlanság
DS = (Key, Sign, Ver) digitalis aláírási séma, ahol
Key: Kulcsgeneráló algoritmus k parameter alapján kiszámítja a (PK, SK) kulcspárt
Sign: Aláíró algoritmus, m üzenetre SK titkos kulccsal generál aláírást
𝑆 = 𝑆𝑖𝑔𝑛𝑆𝐾 (𝑚)
Ver: Ellenörző algoritmus, mely S aláírásra és PK nyilvános kulcsra True vagy False értéket ad,
attól függően, hogy az aláírás érvényes-e

Támadó célja:
(Az édesanyját megbaszni)
Teljes feltörés: Támadó ki tudja számolni az aláíró fél titkos kulcsát
Univerzális hamisítás: Támadó bármely üzenethez tud érvényes aláírást generálni
Szelektív hamisítás: Támadó által választott üzenethez tud érvényes aláírást generálni
Egzisztenciális hamisítás: Támadó képes egy (random) aláírt üzenetet generálni

Támadási módok
Key Only Attack – KOA
Támadó cask a nyilvános kulcsot ismeri
Known Message Attack – KMA
Támadó ismer ugyanazon kulccsal aláírt üzenetlistát
Chosen Message Attack – COA
Támadó rendelkezésre áll általa választott üzenetek és azokhoz tartozó aláírások listája
Adaptive Chosen Message Attack – ACOA
Előző, csak korábbi üzenetek és aláírások alapján választja a következőt
RSA Aláírás
DS = (Key, Sign, Ver)

Key:
1. Két nagy prím: 𝑝, 𝑞
2. Kiszámítjuk az RSA modulust: 𝑝 = 𝑃 ∙ 𝑞
3. Kiszámítjuk az Euler féle ꬿ függvényt: θ(n) = (𝑃 − 1) ∙ (𝑞 − 1)
4. Választunk egy véletlen 𝑒 egészet: 1 < 𝑒 < 𝜃(𝑛) és (𝑒, 𝜃(𝑛)) = 1
5. Kiszámítjuk d-t: 1 < 𝑑 < 𝜃(𝑛) és 𝑒𝑑 = 1(𝑚𝑜𝑑 𝜃(𝑛))
e a titkosító 𝑃𝐾(𝑛, 𝑒) 𝑃=𝐶=𝑍
d a visszafejtő 𝑆𝐾(𝑛, 𝑑)

Sign: 𝑆𝑖𝑔𝑛𝑆𝐾 (𝑚) = 𝑚𝑑 (𝑚𝑜𝑑 𝑛) = 𝑆

𝑇𝑅𝑈𝐸 𝑠 𝑒 ≡ 𝑚(𝑚𝑜𝑑 𝑛)
Ver: 𝑉𝑒𝑟𝑃𝐾 (𝑚, 𝑆) = {
𝐹𝐴𝐿𝑆𝐸 𝑒𝑔𝑦é𝑏𝑘é𝑛𝑡

Biztonsági gyengeség - Tankönyvi verzió


Nyilvános kulcs ismeretével – Egzisztenciálisan hamisítható:
Input: 𝑃𝐾 = (𝑛, 𝑒)
Output: (𝑚, 𝑠) ∈ 𝑀 × 𝑆
Algoritmus:
• Véletlenül választjuk: 𝑠 ∈ 𝑆
• Kiszámítjuk: 𝑚 ≡ 𝑆 𝑒 (𝑚𝑜𝑑 𝑛)

Chosen Message Attack támadás – univerzálisan hamisítható:


Input: tetszőleges 𝑚, 𝑃𝐾 = (𝑛, 𝑒), 𝑠’ egy adott 𝑚’ üzenetre
Output: 𝑠
Algoritmus:
• Véletlen választunk 𝑟 ∈ 𝑀
• Kiszámítjuk: 𝑟 ′ ≡ 𝑟 𝑒 (𝑚𝑜𝑑 𝑛)
• Kérjük az 𝑚′ ≡ 𝑚 ∙ 𝑟 ′ (𝑚𝑜𝑑 𝑛) aláírás, megkapjuk 𝑠’ -t
• Kiszámítjuk 𝑠 ≡ 𝑠 ′ ∙ 𝑟 −1 (𝑚𝑜𝑑 𝑛)

RSA FDH – Full Domain Hash


Megoldja az első problemákat – Az üzenetet hasheljük mielőtt aláírjuk
DS = (Key, Sign, Ver)
Key:
• Véletlenül választunk két nagy prímet: 𝑝 ∙ 𝑞
• Kiszámítjuk az RSA modulus: 𝑛 = 𝑝 ∙ 𝑞
• Kiszámítjuk n Euler-féle ∅ függvény értékét: ∅(𝑛) = (𝑝 − 1)(𝑞 − 1)
• Véletlenül választunk egy 𝑒 egészet, ahol 1 < 𝑒 < ∅(𝑛) és (𝑒, ∅(𝑛)) = 1
• Kiszámítjuk: 𝑑: 1 < 𝑑 < ∅(𝑛), ahol 𝑒𝑑 ≡ 1 (𝑚𝑜𝑑 ∅(𝑛))
𝑃𝐾 = (𝑛, 𝑒), 𝑆𝐾 = 𝑑 és ∅(𝑛), 𝑝, 𝑞 titkos paraméterek
𝑀 = {0,1}∗ , 𝑆 = 𝑍𝑛
Sign:
• 𝑆𝑖𝑔𝑛𝑆𝐾 (𝑚) = 𝐻(𝑚)𝑑 (𝑚𝑜𝑑 𝑛) ∀𝑚 ∈ 𝑀, ahol 𝑆𝐾 = 𝑑, 𝐻 ∶ {0,1}∗ → 𝑍𝑛 hash függvény.
Ver:
𝑇𝑅𝑈𝐸, 𝑆 𝑒 ≡ 𝐻(𝑚) 𝑚𝑜𝑑(𝑛);
• 𝑉𝑒𝑟𝑃𝐾 (𝑚, 𝑠) = {
𝐹𝐴𝐿𝑆𝐸, 𝑒𝑔𝑦é𝑏𝑘é𝑛𝑡
∀(𝑚, 𝑠) ∈ 𝑀 × 𝑆, ahol 𝑃𝐾 = (𝑛, 𝑒)

6. PKI – Public Key Infrastructure


Fogalom
Hardver, szoftver, emberi erősoforrások, szabályzatok, eljárások összessége, melyek szükségesek
tanusítványok: • létrehozására
• használatára
• kezelésére
• tárolására
• terjesztésére

Regisztrációs hivatal – RA
(Polgár Jenő hivatal)
(meg akarok halni)
Feladata:
• Ügyfelek megbízható hitelesítése
• Tanusítványkérés összeállítása, továbbítása
• Tanusítvány visszavonási kérések fogadása

Hitelesítő hivatal – Certification Authority


Feladata:
• Tanúsítványkérések fogadása
• Kulcspárok generálása a különböző implementációkban
• Nyilvános kulcsú tanusítványok kialakítása
• Kiadott tanusítványok közzététele nyilvános tanusítványtárban
• Korábbi tanusítványok / kulcspárok megújítása
• Tanusítványok visszavonása, ezek listájának publikálása

Jellemzői:
• Fizikai és logikai védelme nagyon fontos
• Adhat tanusítványt felhasználónak, vagy más CA-knak
• Felhasználóknál szavatolja, hogy a nyilvános kulcshoz tartozó titkos kulcs a tanusítványt birtokló
felhasználónál van.
Minden tanusítványban elhelyezni a saját nevét és aláírását (Ha a CA megbízható, a tanusítvány is)
Legfontosabb saját titkos kulcsának a védelme

Tanusítványtár
Speciális adatbázis, amely tartalmazza
• CA áltál kibocsátott tanusítványokat
• Visszavont tanusítványok listáját
• Egyéb adatokat a tanusítványoknál

Feladata:
Bármely tanusítvány állapotáról real-time információ adása

Szolgáltatásai:
Biztosítja ügyfeleket egy adott tanusítvány hitelességéről, érvényességéről

Tanusítványok
Életciklus:
Kiadás → Használat → Visszavonás
Szerep:
Egy adott személy / szervezet / szerver és egy publikus kulcs közötti kapcsolat igazolása
Használat:
1. Alkalmazás egy portja, ahol kell valamelyik fél PK-ja

2. Alkalmazás valamely szabvánnyal elkéri a tanusítványt, ellenörzi az aláírást

3. Ha az aláírás érvényes / hiteles, ellenörzi, hogy a CA hiteles-e

Repeat 2. és 3.

Telepítés
• Verzió • Érvényesség kezdete
• Sorozatszám • Érvényesség vége
• Aláírási algoritmus + • Tulajdonos
• Aláírás-kivonatoló algoritmus • Nyilvános kulcs
• Kiállító • Ujjlenyomat-algoritmus
• Ujjlenyomat

Visszavonási lista:
CA kiadott tanusítványai közül, adott időpontban addig visszavont tanusítványok aláírt listája → Hiteles
7. Azonosítás, Hitelesítés, Feljogosítás
Identification, Authentication, Authorization

Fogalom
Azonosítás: Azonosító megadás
Hitelesítés: Ellenörző adat megadása az azonosításkor, annak ellenörzése
Feljogosítás: Erőforrásokhoz való hozzáférési jogok megadása

Hitelesítés módjai
Tudás alapú: jelszó, PIN, biztonsági kérdés
Birtoklás alapú: kulcs, elektronikus / smart kártya → Tokenek
Biometrikus: Statikus: ujjlenyomat, írisz, retina, DNS
Dinamikus: aláírás, gépelési ritmus, stb..

Miért azonsítók, jelszavak?


Azonosítók:
Könnyű jogoknál dönteni, ez alapján tud privilégiumokat rendelni, DAC (Discretionary Access
Control) is ezt használja
Jelszavak:
Könnyű, mindenki számára érthető, nem kell hozzá semi plussz
Azért a legnépszerűbb, mert általánosan elfogadott nem azért mert a legbiztonságosabb

Unix / Local Authentication


Mint a legtöbb védelemnek, ennek sem az a célja, hogy megállítsa a támadást, az a lényeg hogy lassítsa

Miért kell?
Ha csak jelszavak hash-ét tároljuk, akkor előre vesszük gyakori jelszavak listáját, hasheljük és még a
rendszerbe jutás előtt van egy listánk amit össze tudunk hasonlítani a jelszófájlban levő dolgokkal

Mit csinál?
Minden jelszó mellé rakunk egy random értéket, ez a Só, és a só || jelszó konkatenációt hasheljük
Nem lehet előre összeállítani mit próbálunk meg

Nem lesz ettől lassú?


Nem, mert a lassú az a hash, de bejelentkezéskor csak egyszer fut le

Mi az előnye?
Ugyanazon jelszó mellett lehet több hashelt érték – lenyomat
Offline szótártámadás nehéz
Nem tudják könnyen ellenőrizni egy felhasználó használ-e több helyen ugyanazt a jelszót

Sidenote
Ha nem a user-id mellett tároljuk a random értéket, hanem külön fájlban/helyen – Beszorzás(?)
Támadások
Offline szótár támadás
Támadók megszerzik a hasheket tartalmazó állományt, a lehetséges jelszavakból szótárakat készítenek
A szótár elemeit minden sóval hashelik, összehasonlítják, ha sikertelen → transzformáció

Szivárvány táblák
Támadó előre kihasználja a lehetséges hash értékeket a szótárban levő elemekre az összes lehetséges
sókkal véve – Kurvanagy tábla

Offline szótárban kevesebb hely, kevésbé gyors


Szivárvány tábla kurvasok hely, gyors

A szivárvány táblát még a jelszófájl megszerzése előtt lehet csinálni

Védekezés
Felhasználók oktatása – Mondatok kezdőbetűje
Számitógép-generált jelszavak – Felhasználó nem jegyzi meg, FIPS181
Relatív jelszó ellenörzés – Folyamatos ellenörzés jelszótörőkkel
Összetett eljárásrend – Felhasználó választja, vannak követelmények – Ezt használjuk

Birtoklás alapú hitelesítés


Kártyák
• Mágnescsík – Vésett karakter + mágnes csík
• Memória – Adatot tárol, nem végez számitást
• Smart – Mikrokontroller + memória
Smart kártya
• Contactless
Hitelesítés:
• Statikus: felhasználó hitelesíti magár a tokennel (PIN)
• Dinamikus jelszót generál – Token új jelszót generál időközönként
• Kihívás-válasz – Rendszer generál random kihívást, token választ ad

Biometrikus hitelesítés
Felhasználót egyedi, fizikai tulajdonságai alapján hitelesítjük
Összetett, drága
Példák: Arcfelismerés, ujjlenyomat, retina, írisz, hang, aláírás
Remote authentication
Jelszó protokoll
Token protokoll
Biometrikus lehet statikus vagy dinamikus

Kerberos
Authentikációt egy authentikációs szerver végzi
MIT – Internet szabvány
Elvárás
Felhasználó hitelesítse magát minden szolgáltatásnak
Minden szerver hitelesítse magát a kliensnek

Résztvevők
Kliensek, alkalmazás szerverek, Kerberos szerver

AS – Authentikációs szerver
Tárolja minden kliens jelszavát
Hitelesíti a klienst, erről értesíti az alkalmazás szervert
Minden alkalmazás szerverrel cserél egy-egy SK-t

8. Az informatikai biztonság modellje

Alapfogalmak
Biztonság alanya / asset
Informatikai rendszer erőforrásai: hardver, szoftver, adatok, hálózat
Fenyegetés / threat
Olyan művelet vagy esemény, mely sértheti az infromatikai rendszer elemeinek védettségét, biztonságát
Sérülékenység / vulnerability
Informatikai rendszer gyengesége, amelyen keresztül valamely fenyegetés megvalósulhat
Kategóriák:
- Rendszerelem, adatok módosulása
- Rendszerelem, adat kiszivárgása
- Rendszerelem elérhetősége lassú, vagy elérhetetlen / használhatatlan

Támadások
Fenyegetést előidéző cselekmény, mely valami védett érték ellen irányul
Módja:
- Aktív: Rendszerelemeket / működésüket módosítja
- Passzív: Rendszerinformációk megszerzése, felhasználása
Végrehajtó:
- Belső: Jogosult a rendszerelem hozzáférése, arra nem jogosult módon használják fel
- Külső: Egyáltalán nincs feljogosítva a rendszer használatára
Legtöbb támadás belső – Külsőből indul, a cél a jogosultság
Kockázat / risk
Fenyegetettség mértéke, amely valamely fenyegető tényezőből ered
A kockázat fenyegetés bekövetkezésének gyakorisága és az az által okozott kár nagyságának függvénye
Cél a minimalizálása

Védelmi intézkedés
Olyan eljárás, eszköz, technológia, mely csökkenti a rendszer sérülésének kockázatait
Alkalmazás területe:
- Fizikai: kábelezés, ajtók
- Ügyviteli: szabályozások, eljárások, oktatás
- Technikai / Algoritmikus: tűzfalak, authentikációs rendszerek, titkosítás

Funkcionalitás szerint:
- Preventív intézkedés – Megelőzik a támadás bekövetkezését (biztonsgái frissítés, titkosítás)
- Detektív intézkedés – Ha a preventív kudarcot vall, észlelni kell a támadást – checksum, logs
- Korrektív intézkedés – Sérülés kijavítása (Backup Recovery)

Tervezés
- Miket akarunk védeni? Milyen erőforrást?
Rendszerelemek teljeskörű felmérése
- Milyen veszélyek fenyegetik az adott erőforrás
Kik / mik ellen védjük a rendszerelemeket? Mik a lehetőségeik / erőforrásaik
- Mekkorák a kockázatok? Milyen védelmi intézkedést vezessünk be?
- Milyen hatásfokkal kezeli ezeket a kockázatokat a választott megoldás?
Sikeresség vizsgálata, kudarc gyakorisága
- Választott megoldás milyen új biztonsági rést okoz?
Módosítás dominószerűen hullámzik végig a rendszeren
- Megéri alkalmazni a megoldást?
Pénz, idő alkalmazás kényelmetlensége, csökkenő teljesítmény

Tervezési alapok
Jogosultságok minimalizálása
Csak annyi jogosultságot adjunk, amennyi feltétlen szükséges
Preventív intézkedés csökkenti a véletlen / direkt károkozást
Bármely rendszernél alkalmazható

Minimalizálás
Rendszerkonfiguráció minimalizálása
Olyan szoftvert, alkalmazást ne futtassunk, melyek nem feltétlen szükségesek a biztonságos működéshez
Növeli a teljesítményt, tárhelyet takarít meg
Ha csak emailezik egy gép, ne legyen rajta más
Több szintű védelem
Több szintű, többféle védelem – Preventív, detektív, korrektív

Open Design
Biztonsági mechanizmus elemei, működés módja nyilvános kell legyen
Szakértők elemezik az algoritmusokat – bizalom
Kirchhoff-elv
Felosztás / compartmentalization
Parcellák / terek kialakítása, elkülönítése
Limitálja a kárt, ha az egyik sérül, a többi még rendben van

Egyszerű megoldást válasszunk


Összetett rendszer – nem jó
Egyszerű rendszert könnyebb tervezni, implementálni, tesztelni

Pszichológiai elfogadottság
Ha egy mehcanizmus gátolja valami könnyű / kényelmes hozzáférését, használatát, a felhasználó ki fogja
kapcsolni
Biztonsági mechanizmus legyen transzparens, kövesse az emberi gondolkodást

Fenyegetések
Hardver
Rendelkezésre állásra irányul a legtöbb fenyegetés
Véletlen, vagy szándékos rongálás / lopás – sérülhet vele a bizalmasság
Védelem: Fizikai és adminisztratív intézkedések

Szoftver
Rendelkezésre állásra irányuló fenyegetés – alkalmazás törlése, módosítása
Védelem: backup
Sértetlenségre irányuló fenyegetés – szoftver módosítása, vírusok
Szoftverkalózkodás

Adat
Védeni kell, értékes és egyedi
Továbbítás, tárolás, feldolgozás során sérülhet
Bizalmasságra irányuló fenyegetés – Személyes adatok, tervek, stb
Sértetlenségre irányuló fenyegetés – adatok módosítása
Rendelkezésre állásra irányuló fenyegetés – Adat törlése
Támadási fa
Rendszer sérülékenységeit kiaknázó lehetséges támadásokat, fenyegetéseket tartalmazza
Részei:
- Fa gyökere: a támadás célja
- Leveleik: különböző támadási módok
- Köztes elemek: részcélok

Zombi számitógép: Internethet kapcsolódó gép, melyet a támadó irányít, erőforrásokat felhasználja

9. Hálózati támadások, védelem

Szolgáltatásmegtagadásos támadók
Valamely szolgáltatás rendelkezésre állását fenyegeti

Kategóriák
Sávszélesség elleni
Internet és szerver közötti hálózati kapcsolat szűk kapacitásának kihasználása

Rendszer erőforrások elleni


Rendszer erőforrásait támadó túlterheléssel – Hálózat kezelő rendszer összeomlik

Alkalmazás rétegbeli támadás


Speciális alkalmazásokat támad
SMTP – email szerver túlterhelése
Webszerver túlterhelése – adatbázis lekérdezése

Támadások
Ping of death
Ping max méretű csomagjánál nagyobb csomagokkal bombázza az áldozatot
Buffer megtelik, ez összeomláshoz vezet

Flooding / Elárasztásos támadások


ICMP Flood – ICMP echo parancs (ping) – Csomagok küldése hamis forráscímekkel, amíg már nem tud
válaszolni
SYN Flood – TCP három-utas kézfogás üzenet visszaigazolási rendszerét exploitálja, árasztja el

IP forrás cím spoofing


Hamis forrás címmel a válaszok nem térnek vissza, vannak amik error csomaggal, vagy célt nem érő
csomag küldésével növelik a forgalmat

DDOS
Sima Denial of Service, csak elosztott, azaz egyszerre több rendszer használata (zombigépek, botgépek)
Védelmi intézkedések
Tűzfalak
Backup – tükör másolat
Megosztott tartalom – Elosztás, több szerver is válaszol kérdésekre

Tűzfalak
Védik a helyi hálózatokat hálózat-alapú támadásoktól
Személyes tűzfal:
PC-n, de csak egy gépet véd, szoftveresen OS része, alapbeállítással hatékonyak
Ha állítani akarjuk, minden gépen kell

Központi tűzfal:
Spec routeren fut, hardveres tűzfal
Teljes hálózatot védi
Olcsó, egyszerű hálózatmenedzsment
Központi kezelhetőség

Mit csinál?
Hálózati kapcsolódási ponton helyezkedik el, minden átmenő forgalmat figyel, szűr
Teljes hálózati forgalmat figyeli, akár csomagonként átvizsgálva
Kimenő cosmagokat is ellenőrizhet – belső hálózattól induló támadás

Korlátai:
Központi tűzfal nem véd hálózaton belül – fertőzött eszköz hálózatba hozása sérülékenység

Típusai
Csomagszűrő
Szabályok halmazát alkalmazzák ki és bejövő csomagokra, vagy továbbítják, vagy eldobják

Állapot szerinti szűrés


Azonosítja egy kapcsolat kezdetét, végét és a közte lévő adatforgalmat
Csomagjait átmenetileg tárolja, amíg az adatokat össze nem gyűjti
Tárolhat TCP sorszámait, ezzel a session hijackinget megelőzi

Alkalmazásszintű tűzfal
Csak a forgalomhoz tartozó forrás, cél, szolgáltatás, hálózati csomagokat figyeli

12. Kártékony programok

Malware
Adatok / szoftverek bizalmasságát, integritását, rendelkezésre állását veszélyezteti, vagy erkölcsi /
anyagi / idő kárt okoz
Csoportosítás
Terjedés módja
Fertőzött file futtatása – vírus
Szoftversérülékenység kihasználása – féreg
Pszichológiai támadás – trójai, spam, adathalászat

Gazdaprogram szükségessége
Szükséges – vírus
Vírus – féreg

Sokszorosítás
Nem képes önmagát megsokszorozni – trójai, spam email
Megsokszorozódik – vírus, féreg

Büntető rutin
Rendszer- és adatfájlok megrongálása
Szolgáltatás eltulajdonítása – botnet, zombie gépek
Információ lopás – jelszavak, személyes infók

Attack toolkit
Régen egy terjedési mód és büntető rutin volt, most Blended attack
Többféle terjedési mód, akár update mechanizmus
Zeus Crimeware
Személyes infók megszerzésre PC-k megfertőzésével
Legfelkapottabb botnet – Hálózatra kapcsolt gépek összessége melyek felett átvették az irányítást
HTML code injection, minden kattintásnál screenshot

A PT-Fejlett perszisztens fenyegetés


Üzleti, politikai célpontokat célzó kiberbűnözési forma
Fejlett
Számos eszközt használnak fel a behatoláshoz
Cél védelmi rendszerek, eszközök kikerülése
NIST: Támadók alkalmazkodnak a védők erőfeszítéseihez

Perszisztens
Támadók jól meghatározott céllal tevékenykednek, alapos előzetes felderítőmunka, majd céluk eléréséig
nem hagyják el a rendszert – Hozzáférésük fenntartható

Fenyegetés
Célzott, irányított, komplex akciók
Különböznek a többi támadástól a célpont választásánál – Nem az infrastruktúrát töri fel,
alkalmazottakra koncepcionál
Célok
Szellemi termék, szerzői tulajdon, biztonsági infrastruktúra adatok (?), infrastruktúra fizikai lekapcsolása

Technikák
- Pszichológiai támadás
- Célzott phising email
- Drive-by download – böngésző sérülékenység kihasználása
- Nulladik napi támadás

Stuxnet
Van, katonai APT, féreg, rootkit

Vírusok
Végrehajtható programokat, vagy dokumentumokat fertőzi meg
Gyakoriak script kódok – MS Office, Adobe PDF
Vírus a kód lefuttatásával valami kárt okoz
Megfertőzhet:
- Alkalmazásokat
- Rendszerfájlokat
- Bootnál futtatott programkódot

Részei:
Fertőző mechanizmus: Hogyan terjed, sokszorozódik a vírus
Indíték: Esemény, feltétel mely meghatározza mikor aktiválódik a büntető rutin – Logikai bomba
Büntető rutin: Kárt okozó tevékenység

Célpont szerinti csoportosítás


Boot vírusok
Háttértár boot szektorába ágyazódik be
OS előtt aktiválódik, összes többi háttértárat megfertőzi

Alkalmazásvírusok
Append és replace vírusok, letöltödnek a memóriába, megfertőzik a többi futó programot

Macrovírus
Makrókat támogató dokumentumszerkesztőket támadnak meg, terjedéshez elég csak megnyitni egy
fertőzött állományt
Ide tartoznak a levelező vírusok

Összetett vírus
Rejtőzködési stratégia szerinti csoportosítás
Titkosított vírus
Titkosítja a tartalmát

Lopakodó vírus
Memóriában maradva cselezi ki az OS-t és antivírust, innen változtathat OS jellemzőin,
könyvtárstruktúrán
Rootkitek: Eszköz, melyet root (legnagyobb jogosultság) megszerzése után használ

Polimorf vírus
Fertőzési ciklusonként változtatják megjelenési formájukat – nehéz felismerni
Mutációs motor felel a kulcsgenerálásért, titkosításért ez is módosul

Metamorfózisra képes vírus


Minden alkalommal teljesen felülírják magukat / kinézetüket

Férgek
Kliens / Szerver oldali sérülékenységek kiaknázása
Használhatnak hálózati kapcsolatot, hardver médiát, email makrót, script kódot

???
Megpróbál valamilyen hozzáférést találni, melyen keresztül terjedhet, önmaga lemásolásával,
végrehajtásával a távoli rendszerre

Hálózati cím keresési stratégiák


Véletlen
Fertőzött hostok véletlen IP-t használnak – hatalmas internetforgalom

Hit-lista
Összegyűjtött sebezhető gépek listáját, megfertőzött gépek (?) bekapcsolódnak, rövid idejű próbálgatás,
nehéz észrevenni

Topológia

Fertőzött gép, infói alapján találja a következő ???

Helyi alhálózat
Tűzfal mögötti rést próbál további tűzfal mögötti (?) megfertőzni, alhálózat címstruktúrájával

Modern férgek
Multiplatform
Többféle platform, többféle makró / szkript kód
Multikihasználás
Többféle behatolási mód – Webszerver, böngésző, email, stb

Ultragyors terjedés

Polimorf / Metamorf
Feljebb írja

Szállítás eszközei
Ideális többféle büntetési rutin terjedése – DDOS, rootkit, spyware

Nulladik napi támadás

Drive-by-downloads
Böngésző sebezhetőségének kihasználása – Felhasználók tudtuk nélkül letöltenek, installálnak kártékony
programot (weboldalakról)

Kliens oldali sebezhetőség


Különféle bugok: Email, PDF olvasó
Clickjacking: állítható rétegek, akár keylogger

Social Engineering
Trójaiak használata – 3 modell
- csinálja amit mond + büntető rutin
- csinálja amit mond + módosít
- lecseréli az eredeti funkciót

Büntető rutinok
Tevékenység, mely végrehajtódik fertőzött rendszeren
Nem minden kártevőnek van

Rendszer károsítása
1988 Csernobil vírus, 2001 Klen mass email féreg
Adatok megsemmisítése
Ransomware
Lezárja a felhasználó fájljait, blokkolja a hozzáférést – váltságdíj
Titkosító: Van titkosítás
Nem titkosító: Egész rendszert lezárja – Megkeres illegális fájlokat, fenyeget
Böngészőlezáró: JS script blokkolja a böngészőket
Fizikai sérülések
Bios újraírása, ezzel fizikai kárt okozva
Stuxnet

Logikai bomba
Egy adott feltétel teljesülésével indul el – Adatok törlése, módosítása, rendszer leállása

Támadó ügynökök
Kártékony kód a támadó irányítása alá helyezi a rendszert, annak erőforrásait – Zombi gépek
Zombi gépek hálózatra kötve botnet
Rendszer integritása, rendelkezésre állása veszélyben

Zombik használata
- DDOS
- Spam
- Forgalomfigyelés
- Keylogging
- Malware terjedés
- Adware

Információszerzés
Fertőzött gépeken tárolt adatok összegyűjtése
Adatok bizalmasságának támadása
Kategóriák
- Credentials, Keylogging, spyware
- Adathalászat, megszemélyesítés
- Felderítés, kémkedés

Célzott adathalászat
Kevés embernek, testreszabott levél – social engineering

Lopakodás
Kártékony programok azon rutinja, melyekkel elrejtik jelenlétüket és hozzáférésüket – rendszer
integritásának támadása

Hátsóajtó
Program titkos belépési portja, ennek ismeretében be lehet lépni a biztonsági hitelesítés megkerülésével
Programok tesztelésére használhatják

Rootkit
Programcsomag, telepítés után fedett hozzáférést biztosít, tart fenn a fertőzött gépben root
jogosultsággal
Gyökércsomag elrejti, hogy bármit is csinálunk
Perszisztens – registry
Memória alapú – nincs perszisztens kód, restart megöli, nehéz detektálni
Lehet felhasználói / kernel módú – ennek módosításával rejti el magát

Biztonsági intézkedések
Megelőzés
Antivírus – Sérülékenység, fenyegetés csökkentése, felhasználói oktatás

Ha a megelőzés nem sikeres


- Detektálás – hely
- Azonosítás – file
- Eltávolítás – Ha nem megy, töltsük le a backupot

Antivírusok
Generációk
- Egyszerű szkennerek – bitminta, állomány alapján
- Heuriszitkus szkennerek – kártékony kódhoz kapcsolódó kódszeletet keres (checksum, adatintegritás)
- Aktivitás figyelés – kártékony kód tevékénységét nézik
- Teljes védelem – többféle antivírus megoldás, általános visszafejtés

Modernek
Viselkedés blokkoló rendszer
Rootkit védelmi intézkedés

You might also like