You are on page 1of 26

Vezetéknélküli szenzorhálózatok biztonsága

Ács Gergely

Laboratory of Cryptography and System Security (CrySyS)


Budapest University of Technology and Economics
http://www.crysys.hu
Áttekintés

ƒ Vezetéknélküli szenzorhálózatok rövid áttekintése


• motiváció, hálózat felépítése, alkalmazások

ƒ Sebezhetőségek és támadások

ƒ Szimmetrikus és publikus kulcsú primitívek


ƒ Kulcsmenedzsment
ƒ Link-layer biztonsága
ƒ Biztonságos útvonalválasztás
ƒ Biztonságos adat-aggregáció

ƒ Összegzés

2
Mi az a szenzorhálózat?

ƒ A cél a környezet fizikai jellemzőinek mérése


• pl. hőmérséklet, nyomás, fényerősség, hangerősség, stb.

ƒ Specifikus alkalmazások
• Monitorozás
• pl., bodynets
• Riasztás
• pl. behatolás-detektálás,
autóvezetést segítő
információs rendszerek
• Igény szerinti információkérés
• pl. pozíciómeghatározó rendszerek

ƒ Redundancia
• tipikusan nagy számú szenzor node

ƒ Hálózati architektúra
• Flat
• egyenrangú csomópontok
• Hierarchikus
• klaszterek létrehozása klaszter-vezetővel
• adat-aggregació támogatása Úttest
állapota
• Hibrid tegnap este? 3
Mi az a szenzorhálózat?

ƒ Korlátozott képességű csomópontok (szenzor node) → “érzékelő sejt”


• adatokat gyűjtenek a beéptített szenzorokon keresztül
• korlátozott számítási kapacitás
• MicaZ: Atmega128L MCU
(8 bit, 8 Mhz, 512 KB flash, 128 KB SRAM)
• Tmote Sky: MSP430 MCU
(16 bit, 8 Mhz, 10 KB RAM, 1 MB SRAM)
• Imote2: Intel MCU
(32 bit, 32 MB SRAM, 32 MB flash, 13 Mhz - 414 Mhz, beépített DSP)
• korlátozott energia-ellátás
• vezetéknélküli többugrásos kommunikáció
• MicaZ, Tmote Sky:
CC2420, 2.4 Ghz, 250 Kbps, IEEE 802.15.4 (PHY+MAC réteg) támogatás
• kollaboratív vagy autonóm működés
• ált. helyhez kötöttek
• lehelyezésük lehet szisztematikus vagy véletlenszerű

ƒ Bázisállomás → “agy”
• adatok begyűjtése, elemzése
• kontroll információk továbbítása
• nagyobb számítási kapacitás
• korlátlan energia-ellátás
• alkalmazástól függően mobilis vagy helyhez kötött 4
Sebezhetőségek és támadások 1.

ƒ A szenzor node-ok fizikailag könnyen hozzáférhetőek


• nem tamper-rezisztens hardware

ƒ Támadó rendelkezhet
• laptop típusú eszközzel
• korlátlan számítási és energia-kapacitás
• szenzor node típusú eszközzel (kompromittált szenzor node)
• meglévő csomópontokat foglalhat el
• fizikai feltöréssel
• kód injektálással
• vagy újakat telepíthet

ƒ Külső vagy belső támadó

ƒ A kommunikációs csatorna nyílt


• jamming
• könnyű lehallgatni
• könnyű üzeneteket beszúrni, törölni és visszajátszani 5
Sebezhetőségek és támadások 2.

ƒ Összetett támadások
• DoS támadások (minden réteg)

• Energia-kimerítő támadások (minden réteg)

• Sybil és node replikáció (routing)

• Szelektív továbbítás (routing)

• Féreglyuk létrehozása (routing)

• Mért adat módosítása


(adat aggregáció)

6
Szimmetrikus és publikus kulcsú primitívek

ƒ Speciális megoldások melyek


+ hatékonyak (kicsi számítási és kommunikációs overhead)
• ugyanakkor biztonságuk megfelelően erős

ƒ Szimmetrikus primitívek
• MAC (Message Authentication Code)
• rejtjelezés és dekódolás

ƒ Hash függvények
• fix méretű digitális lenyomat előállítása
• cél az ősképellenállás (OWHF) és ütközésellenállás (CRHF)

ƒ Publikus (aszimmetrikus) kulcsú primitívek


• rejtjelezés és dekódolás
• digitális aláírás

7
Szimmetrikus primitívek

ƒ Cél: minimális kódméret a korlátozott memória miatt és gyors végrehajtás

ƒ Blokkrejtjelező használata építőelemként

ƒ Rejtjelezés és dekódolás
• Skipjack, RC5, AES
• alkalmazás üzenethosszától függően
CBC mód vagy CTR mód

ƒ MAC: CBC-MAC

ƒ Hash függvény
• Merkle-Damgard konstrukció
• f kompressziós függvény konstrukciója
blokkrejtjelezőt felhasználva
• pl. Davies-Mayer séma

ƒ Hardware támogatás
• CC2420: beépített kriptográfiai coprocesszor, viszont legtöbb esetben az MCU ezt nem
tudja használni, így mindent software-ben kell megvalósítani 8
Publikus kulcsú primitívek - kriptográfiai sémák

ƒ Szimmetrikus vs. publikus kulcsú primitívek


+ kulcsmenedzsment jobban skálázható és biztonságosabb
– nagyobb számítási és kommunikációs overhead

ƒ Aszimmetrikus kriptográfiai sémák


• RSA
• Ellipitikus görbe (EC) kriptográfia
• Egyszer használatos (One-time signature) aláírássémák (Lamport-Diffie séma)
Szimmetrikus kulcshossz EC kripto. kulcshossz RSA kulcshossz
80 160 1024
112 224 (x 1.4) 2048 (x 2)
128 256 (x 1.6) 3072 (x 3)
192 384 (x 2.4) 7680 (x 7.5)
256 512 (x 3.2) 15360 (x 15)

ƒ Kulcsmegegyezés protokoll EC és RSA sémák esetén


• Diffie-Hellman protokoll
• felek hitelesítése EC séma esetén: Schnorr, Okamoto identifikációs protokollok
(hatékonyabb mint aláírni a közös Diffie-Hellmann paramétereket)
9
Publikus kulcsú primitívek - digitális aláírás

ƒ Aláírás-sémák
• RSA, méret = kulcshossz
• ECDSA, méret = kulcshossz * 2
• One-time signature, méret az aláírandó üzenet nagyságrendjébe esik

ƒ Számítási overhead (Atmega128L MCU)

Szimmetrikus kulcsú EC aláírás EC aláírás RSA aláírás RSA aláírás


blokkművelet (64 bit) ellenőrzése generálása ellenőrzése generálása
(Skipjack) (EC-160) (EC-160) (RSA-1024) (RSA-1024)
≈ 2 pont ≈ 1 pont
szorzás szorzás
0.012 mWs 53.42 mWs 26.96 mWs 14.05 mWs 359.87 mWs

10
Broadcast hitelesítés szimmetrikus kulcsú kriptográfiával

ƒ Feltevés: a node-ok órái lazán szinkronizáltak

1. A küldő felosztja az időt egyenlő I hosszú Ti (i > 0) intervallumokra


2. A küldő (bázis) generál egy hash láncot:

...

• c0-t minden vevő tárolja


• minden ci a Ti intervallum titkos kulcsa

3. A küldő a Ti-ben küldött üzeneteket ci kulccsal hitelesíti (MAC számítást)


4. Egy csomagot csak akkor fogadnak el, ha a vétel időpontjában
a kulcsot még nem fedte fel a vevő, és a kulcs a hash lánc egy eleme
• a vevőknek tárolni kell az üzeneteket, amíg a megfelelő kulcsot nem kapják meg

m1 c1 m2 m3 c5 Küldő
T1 T2 T3 T4 T5 T6 T7 T8 d=2

m1 c1 m2 m3 c5 Vevő
11
Kulcsmenedzsment - fázisok, csoportosítás

ƒ Kulcsmenedzsment fázisai
1. Kulcskiosztás
• kihelyezés előtti (node-ok nagy száma miatt) feltöltés kulcsokkal, vagy ún. kulcsrészekkel
2. Szomszédok felfedezése
• akiknek még nincsenek közös kulcsaik
3. Közös kulcsok létrehozása
• közvetlenül, vagy olyan node-okon keresztül, akikkel mindketten megosztanak közös kulcsokat
4. Időközönként a közös kulcsok frissítése

ƒ Protokollok csoportosítása
• Kommunikációs minta alapján
• dedikált páronkénti kulcsok
• újra-felhasznált páronkénti kulcsok
• csoportkulcsok
• hálózati kulcsok
• Kulcskiosztás jellege szerint
• probabilisztikus kulcskiosztás
• determinált kulcskiosztás

12
Dedikált páronkénti kulcsmenedzsment 1.

ƒ Alapmegoldás: minden node minden más node-dal megoszt egy közös kulcsot
(kapcsolatonként különböző kulcs)
• nem skálázható, viszont biztonságos Node A (3,4) KA,B = (3,11)

ƒ Determinisztikus kulcskiosztás
• m × m méretű kulcsmátrix generálása
• minden node rendelkezik egy (i, j) pozícióval
• minden node tárol 2*N1/2 kulcsot
• nem biztonságos

ƒ Determinisztikus kulcsgenerálás
• minden node rendelkezik egy
KA,B = (6,4) Node B (6,11)
P(x,y)=P(y,x) szimmetrikus részpolinommal
• a polinom együtthatóinak száma k+1
• node i polinomja P(i,y), node j polinomja P(j,y), közös kulcs: P(i,j)
• k-biztonságos: k+1-nél kevesebb node nem képes mások kulcsát meghatározni

13
Dedikált páronkénti kulcsmenedzsment 2.

ƒ LEAP (Localized Encryption and Authentication Protocol)


• feltevés: minden szenzor node a lehelyezést követő adott időtartományban nem
kompromittálódik, ez az idő kihasználható kulcsmegegyezésre
• minden node kezdetben rendelkezik egy KM master kulccsal
• szomszédok felderítése, majd közös kulcs létrehozása

KA = HashKM(IDA), KB = HashKM(IDB)
1. A → *: IDA
2. B → A: IDB, MACKB(IDA || IDB)
3. KA,B = HashKB (IDA)
4. KM törlése

• ezenkívül broadcast-key (egy node és minden szomszédja között) és network-wide key


létrehozása

ƒ Probabilisztikus kulcskiosztás
• cél: tárolt kulcsok számának csökkentése
• minden node tárol N*p különb. kulcsot, ahol p annak a valószínűsége hogy két node
megoszt egy kulcsot
• ha két node nem oszt meg közös kulcsot, akkor valószínűleg kell lennie egy útvonalnak a
kettő között, amelyek mentén minden szomszédos pár megoszt egy kulcsot 14
Újrahasznált páronkénti kulcsmenedzsment

ƒ Egy kulcs több kapcsolatnál is felhasználható


• alapmegoldás: egyetlen hálózati szintű (network-wide) közös kulcs megosztása
• skálázható, de nem biztonságos

ƒ Véletlen kulcskiosztás
• egy közös key-pool generálása KP darab különböző kulccsal
• minden node választ k kulcsot visszatevés nélkül a poolból (key-ring)
• a valószínűség, hogy két node megoszt legalább egy kulcsot:

• a valószínűség, hogy egy kapcsolat kompromittálódik ha egy


node kompromttálódik:

ƒ Q-kompozit véletlen kulcskiosztás


• a szomszédos csomópontoknak legalább Q kulcsot kell megosztani K1, ..., KQ
• Közös K kulcs kiszámítása: KA,B = Hash(K1||K2||...||KQ)
• a valószínűség, hogy egy kapcsolat kompromittálódik ha egy
node kompromttálódik:

15
Link-layer biztonság

ƒ End-to-end rejtjelezés (SSL, IPSec) és hitelesítés sok esetben nem lehetséges


• adat-aggregáció
• DoS támadások elkerülése végett

ƒ Alapvetően szimmetrikus primitíveket alkalmazása a gyakori használat miatt

ƒ TinySec
• Két működési mód: Auth (csak hitelesítés), AE (hitelesítés és rejtjelezés)
• szemantikus biztonság: 8 byte (2 byte counter + 2 byte forráscím + 4 byte header) hosszú
IV változó értékű minden nyílt szövegre
• IV rövid mérete és a kódméret csökkentése miatt CBC módot használnak (CTR helyett)
• CBC-MAC (4 byte): nem biztonságos változó hosszúságú üzenetek esetén, ezért az üzenet
hosszának rejtjelezettjét hozzáadják az első nyíltszöveg blokkhoz
• Visszajátszásos támadás ellen:
• AE módban IV-t belefoglalják a MAC számításba
• Auth módban felsőbb rétegekben oldják meg Rejtjelezett

Dest AM Len Src Cntr Data MAC


(2) (1) (1) (2) (2) (0...29) (4)

Hitelesített
ƒ egyéb software csomagok: SenSec, SNEP, MiniSec, SecureSense, L3Sec, stb.
16
Routing biztonsága

ƒ Támadás célja
• kézbesítési ráta csökkentése
• hálózat élettartamának csökkentése
• késleltetés növelése
• támadó kontrolljának növelése

ƒ Támadási módszerek és védekezések


• üzenetek manipulációja - üzenethitelesítés (digitális aláírás, one-time sign., MAC, μTesla)
• szelektív továbbítás - multipath routing
• féreglyuk - statisztikai detekció, packet leashes, MAD, irányított antennák használata, stb.
• Sybil támadás és node replikáció - erőforrás tesztelés, line-selected multicast

ƒ Biztonságos routing protokollok


• Hitelesített TinyOS beaconing - topológia alapú
• SIGF - pozíció alapú
• INSENS - centralizált, link-state alapú
• Secure Directed Diffusion - adatközpontú

Laboratory of Cryptography and System Security


www.crysys.hu 17
Sybil és node replikáció

ƒ Sybil támadás elleni védekezés: rádió-erőforrás tesztelés


• Feltevés:
• ugyan egy node használhat több ID-t, de ált. csak egy antennája van
• egy antenna egyszerre csak egy csatornát képes használni

1. minden node az összes szomszédjához hozzárendel egy csatornát véletlen módon


2. a node véletlen módon kiválaszt egy csatornát és küld egy broadcast üzenetet
3. ha nem Sybil használja a csatornát, akkor biztosan kap választ, ellenkező esetben bizonyos
valószínűséggel nem kap választ

• hátrány: energia-igényes, speciális hardware-rel rendelkezhet a támadó (több antenna)

ƒ Node replikáció elleni védekezés: B


line-selected multicast
E A
A F
C

Replikáció! 18
W
Féreglyuk detektálása - statisztikai detekció

ƒ Centralizált megoldás
• a bázis begyűjt minden szomszédossági világos – támadott
listát sötét – nem támadott

ƒ NNT (Neighbor Number Test) - teszt


• a féreglyuk növeli a szomszédok átlagos
számát

ƒ ADT (All Distances Test) - teszt


• a féreglyuk csökkenti az átlagos úthosszakat

világos – támadott
sötét – nem támadott

19
Routing biztonsága - Hitelesített TinyOS beaconing

ƒ Hitelesített TinyOS beaconing

B → *: (BEACON, rnd, B, sigB)


B
ha sigB korrekt, akkor X és Z beállítja B-t
szülőnek
Z X
Z → *: (BEACON, rnd, Z, sigB)
X → *: (BEACON, rnd, X, sigB)

Y ha sigB korrekt, akkor Y beállítja Z-t


szülőnek

Y → *: (BEACON, rnd, Y, sigB)

ƒ Ugyan biztonságosnak tervezték, de a protokoll támadható


• a BEACON üzenetet a küldő node nem hitelesíti

20
Adat-aggregáció biztonsága

ƒ Kérés-alapú rendszerek
• a bázis kérésére a szenzor node-ok periódikusan vagy one-shot jelleggel válaszolnak
ƒ Esemény alapú rendszerek
• a szenzor node-ok csak akkor küldenek üzenetet ha a célesemény bekövetkezik

ƒ Az aggregáció történhet csak a bázison, vagy közbenső node-okon is (in-network proc.)

ƒ Támadások (belső támadó)


• hamis esemény beszúrása (esemény alapú rendszerek)
• Interleaved Hop-by-hop Authentication
• üzenetek eldobása, mért adat módosítása (nincs in-network processing)
• MAC, multipath routing
• hamis adat beszúrása vagy létező módosítása (van in-network processing) az aggregátum
eltorzítása végett
• outlierek detekciója, rugalmas aggregátor függvények használata, SDAP,
Attack-resilient Synapsis Diffusion
• node mérési környezetének manipulációja (külső támadó)

21
Interleaved Hop-by-hop Authentication

ƒ Feltevések
• nincs in-network processing, esemény detekciója
• a kompromittált node-ok száma kisebb mint t paraméter
• a node-ok klaszterekbe szerveződnek, minden klasztertag megoszt egy kulcsot a bázissal
• minden node megoszt egy kulcsot t+1 upstream és t+1 downstream node-dal
ƒ Célok
• a bázis képes legyen az adat hitelességét ellenőrizni
• a hamis adatokat már a közbenső node-ok is ki tudják szűrni (DoS, komp. node-ok
lokalizációja)

t=3
BS

v1
u7 u2 u1
u5 u4 u3
v2
CH
u6
v3

22
Rugalmas aggregátor függvények, outlierek detekciója 1.

ƒ Feltevés
• aggregáció csak a bázison történik

f(23,…,1000)

23°C Átlaghőmérséklet
21°C kiszámítása
22°C 25°C 22°C

23
Rugalmas aggregátor függvények, outlierek detekciója 2.

ƒ Kriptográfia nem segít (a támadó a szenzor környezetét is manipulálhatja)


• f aggregátor függvény torzítása:

• f agg. fv. torzítása támadott esetben (k kompromittált csomópont), legerősebb támadó:

• Letörési pont:

ƒ Pl. a MAX, MIN, és AVERAGE letörési pontja 0 (már egy db hamis érték is végtelen
torzítást okozhat), de MEDIAN esetén ez 1/2.

ƒ Outlierek
• truncation: minden mért értéket [a,b] intervallum közé csonkolunk
(x = a ha x < a, x = b ha x > b)
• trimming: eldobjuk a mért értékek alsó ρ és felső ρ hányadát
• RANBAR: RANSAC algoritmus használata (nagy számú kompromittált node-ok esetén)

24
Összegzés

ƒ Szenzor hálózatok
• speciális mérési, riasztási, felügyeleti feladatok ellátása
• korlátozott erőforrással rendelkező csomópontok
ƒ Biztonság kulcsfontosságú
• a szenzor node-ok könnyen hozzáférhetőek
• vezetéknélküli csatorna könnyen hozzáférhető, kommunikáció könnyen manipulálható
• változatos összetett támadások, pl. Sybil, node replikáció, féreglyuk, aggregáció elleni
támadások, stb.
ƒ Diverzifikált megoldások, melyek figyelembe veszik az erőforrás-korlátokat
• hagyományos kripto. primitívek hatékony megvalósítása
• skálázható és hatékony kulcskiosztás nagyméretű hálózatokban
• korlátozottan használható end-to-end biztonság helyett hatékony link-layer biztonság
• hatékony védekezés a szövevényes routing támadások ellen
• rugalmas adat-aggregáció megvalósítása

ƒ EU kutatási projektek
• EU-FP6, Ubiquitous Sensing and Security in the European Homeland (UbiSec&Sens)
http://www.ist-ubisecsens.org/ (STReP)
• EU-FP7, Wireless Sensor and Actuator Networks for Critical Infrastrures Protection
(WSAN4CIP), http://www.wsan4cip.eu/ (STReP) 25
Irodalomjegyzék

ƒ Wireless Sensor Network Security, ISBN: 978-1-58603-813-7, IOS Press, Cryptology and Information Security
Series, 2007. Editors: J. Lopez and J. Zhou
ƒ L. Buttyán and J.-P. Hubaux. Security and Cooperation in Wireless Networks, Cambridge University Press,
2008.
ƒ A. Perrig, R. Szewczyk, J. Tygar, V. Wen, D. Culler. SPINS: Security Protocols for Sensor Networks. In
Wireless Networks, 2002.
ƒ C. Karlof, N. Sastry, D. Wagner. TinySec, A link layer security architecture for wireless sensor networks.
Proceedings of the 2nd international conference on Embedded networked sensor systems, pp. 162-175, 2004.
ƒ L. Eschenauer and V. D. Gligor. A key-management scheme for distributed sensor networks. In Proceedings
of the ACM Conference on Computer and Communication Security (CCS), 2002.
ƒ P. Bryan and A. Perrig and V. Gligor. Distributed Detection of Node Replication Attacks in Sensor Networks.
In Proceedings of the IEEE Symposium on Security and Privacy, 2005.
ƒ J. Newsome, E. Shi, D. Song, A. Perrig. The sybil attack in sensor networks: analysis & defenses. In
Proceedings of the third international symposium on Information processing in sensor networks (IPSN), 2004.
ƒ I. Vajda, L. Buttyán, L. Dóra. Statistical Wormhole Detection in Sensor Networks. In Proccedings of the
Security and Privacy in Ad-hoc and Sensor Networks: Second European Workshop (ESAS), 2005.
ƒ S. Zhu, S. Setia, S. Jajodia, P. Ning. An Interleaved Hop-by-Hop Authentication Scheme for Filtering of
Injected False Data in Sensor Networks. In Proceedings of IEEE Symposium on Security and Privacy, 2004.
ƒ S. Zhu, S. Setia, S. Jajodia. LEAP: efficient security mechanisms for large-scale distributed sensor
networks. In Proceedings of the 10th ACM conference on Computer and communications security, 2003.
ƒ L. Buttyán, P. Schaffer, I. Vajda. RANBAR: RANSAC-Based Resilient Aggregation in Sensor Networks
In Proceedings of the Fourth ACM Workshop on Security of Ad Hoc and Sensor Networks (SASN), 2006.

26

You might also like