55
Etude du protocole, de la sécurité et création d’une application ZigBee Projet de Synthèse M2 SSIC 2010 – 2011 AMBROGI Anthony THIMONT Jérémy

Etude du protocole, de la sécurité et création d’une application ZigBee

  • Upload
    amma

  • View
    50

  • Download
    2

Embed Size (px)

DESCRIPTION

Etude du protocole, de la sécurité et création d’une application ZigBee. Projet de Synthèse M2 SSIC 2010 – 2011. AMBROGI Anthony THIMONT Jérémy. Sommaire. Les spécifications ZigBee La sécurité ZigBee Le développement du projet Conclusion. Les spécifications ZigBee. - PowerPoint PPT Presentation

Citation preview

Page 1: Etude du protocole, de la sécurité et création d’une application ZigBee

Etude du protocole, de la sécurité et création d’uneapplication ZigBee

Projet de Synthèse M2 SSIC2010 – 2011 AMBROGI

AnthonyTHIMONT Jérémy

Page 2: Etude du protocole, de la sécurité et création d’une application ZigBee

Sommaire

•Les spécifications ZigBee

•La sécurité ZigBee

•Le développement du projet

•Conclusion

2

Page 3: Etude du protocole, de la sécurité et création d’une application ZigBee

Les spécifications ZigBee

• Généralités• Architecture

3

Page 4: Etude du protocole, de la sécurité et création d’une application ZigBee

Qu’est-ce que ZigBee ?• Technologie sans-fil (LP-WPAN)

• Courte portée• Faible débit• Faible consommation• Faible besoin en mémoire• Grand nombre de noeuds• Protocole standardisé• Fonctionnement sûr• Fonctionnement autonome• Fonctionnement sécurisé• …

Sommaire

Spécifications > Généralités

Sécurité

Développement

Conclusion

4

Pendant des années

ET sans interventio

n

Page 5: Etude du protocole, de la sécurité et création d’une application ZigBee

Qu’est-ce que ZigBee ?• Comparaisons

Sommaire

Spécifications > Généralités

Sécurité

Développement

Conclusion

5

Page 6: Etude du protocole, de la sécurité et création d’une application ZigBee

Qu’est-ce que ZigBee ?• Particularités :

• Basé sur la norme IEEE 802.15.4• Topologie en étoile et point à point

• Deux types d’objets dans un réseau

Sommaire

Spécifications > Généralités

Sécurité

Développement

Conclusion

6

FFD (Full Function Device)

RFD (Reduce Function Device)

Entités complètes Entités allégées (pas de mécanisme de

routage)3 rôles possibles :

Coordinateurs, Routeurs, Dispositifs finaux

1 seul rôle possible :Dispositifs finaux

Communications avec les FFD et les RFD

Communications avec seulement les RFD

Alimenté par source non contrainte énergiquement

Moindre consommation énergétique et utilisation

mémoire

Page 7: Etude du protocole, de la sécurité et création d’une application ZigBee

La ZigBee Alliance• But : standardiser le protocole

• Créée par 8 entreprises en 1997• Comprend plus de 200 entreprises• Membre requis dans un but lucratif

Sommaire

Spécifications > Généralités

Sécurité

Développement

Conclusion

7

Page 8: Etude du protocole, de la sécurité et création d’une application ZigBee

La ZigBee Alliance• De nombreux domaines

d’application

Sommaire

Spécifications > Généralités

Sécurité

Développement

Conclusion

8

Page 9: Etude du protocole, de la sécurité et création d’une application ZigBee

Un modèle en couches•Utilise 4 couches sur les 7 du

modèle OSI : PHY, MAC, NWK et APL.

•Communication grâce aux points d’accès.

•2 types de points d’accès:▫Un pour les données▫Un pour le management

•2 configurations:▫Spécifications IEEE 802.15.4▫Directement par la norme

Sommaire

Spécifications > Architecture

Sécurité

Développement

Conclusion

9

Page 10: Etude du protocole, de la sécurité et création d’une application ZigBee

Sommaire

Spécifications > Architecture

Sécurité

Développement

Conclusion

10

Page 11: Etude du protocole, de la sécurité et création d’une application ZigBee

La couche physique (PHY)• Traduit les trames en bits• Envoi et réception par

transmission radio• 3 bandes de fréquences différentes• 2 couches PHY différentes•Principales fonctions :

▫l’activation et la désactivation de la transmission radio

▫la communication des canaux▫l’évaluation de la qualité du canal

Sommaire

Spécifications > Architecture

Sécurité

Développement

Conclusion

11

Page 12: Etude du protocole, de la sécurité et création d’une application ZigBee

La couche liaison (MAC)• Utilise le concept de réseau délivrant

des services pour la formation ou la découverte des réseaux et la possibilité de le rejoindre

• 2 topologies différentes: ▫Topologie étoile:

▫La communication est établie via un commutateur central qui peut initier, terminer ou router les communications.

▫Topologie point à point:▫La communication se fait entre tous les nœuds

à portée sans hiérarchie.

Sommaire

Spécifications > Architecture

Sécurité

Développement

Conclusion

12

Page 13: Etude du protocole, de la sécurité et création d’une application ZigBee

La couche liaison (MAC)

•Principales fonctions: ▫l’accès au canal physique pour

les transferts (CMSA-CA)▫l’ordonnancement des données▫la délivrance de trames

d’acquittement (ACK)▫la garantie de l’intégrité des

données

Sommaire

Spécifications > Architecture

Sécurité

Développement

Conclusion

13

Page 14: Etude du protocole, de la sécurité et création d’une application ZigBee

La couche réseau (NWK)•Transmet les paquets de façon

sûre•Prend en charge le routage et la

topologie Topologie maillée (mesh

networking)

Sommaire

Spécifications > Architecture

Sécurité

Développement

Conclusion

14

Page 15: Etude du protocole, de la sécurité et création d’une application ZigBee

La couche application (APL)

APSApplication Support Sublayer

ZDOZigBee Device Object

Filtre les doublons Gestion du réseau en local et vial le médium d’accès

Comprend la signification des données reçues

Service de découverte d’autres noeuds

Vérifie si la source est reliée à l’application

Définit l’état courant de l’objet

Maintient une table de correspondance

Définit le rôle de l’objet

Sommaire

Spécifications > Architecture

Sécurité

Développement

Conclusion

15

•Composée de 2 sous-couches :

Page 16: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité ZigBee

• Généralités• Sécurité de la norme 802.15.4• Sécurité des couches supérieures

16

Page 17: Etude du protocole, de la sécurité et création d’une application ZigBee

Principes de sécurité• Les services de sécurité se

chargent ▫de l’établissement et du transport

des clés, ▫de la protection des paquets▫du management des équipements

•Chaque couche prend en charge le mécanisme de sécurité.

Sommaire

Spécifications

Sécurité > Généralités

Développement

Conclusion

17

Page 18: Etude du protocole, de la sécurité et création d’une application ZigBee

Principes de sécurité• Basés sur un modèle, où chaque

couche de la pile de protocoles se fait mutuellement confiance

•La sécurité des couches PHY et MAC est aussi assurée par la norme 802.15.4

Sommaire

Spécifications

Sécurité > Généralités

Développement

Conclusion

18

Page 19: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des trames•802.15.4 utilise l’algorithme de

cryptage AES avec une clé de 128bits.▫préinstallée sur les nœuds, ▫partagée hors bande (via un autre

canal que celui d’envoi ou de réception de message),

▫ou grâce à cette voie.•Le cryptage permet de cacher le

message mais aussi de valider les données transmises

Sommaire

Spécifications

Sécurité > 802.15.4

Développement

Conclusion

19

Page 20: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des tramesSommaire

Spécifications

Sécurité > 802.15.4

Développement

Conclusion

20

•3 champs sont relatifs à la sécurité.

•Différents types de protection possibles en mettant en place différents paramètres de contrôle.

Page 21: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des tramesSommaire

Spécifications

Sécurité > 802.15.4

Développement

Conclusion

21

•Utilisé uniquement dans le cas où l’on active le bit "Security Enabled" du champ "Frame Control"

Page 22: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des tramesSommaire

Spécifications

Sécurité > 802.15.4

Développement

Conclusion

22

Valeur Signification(0x00) Pas de sécurité Pas de cryptage ni

d’authentification des données(0x01-2-3) AES-CBC-MAC-32-64-128 mais

l’authentification des données est garantie(0x04) AES-CTR Cryptage mais pas d’authentification

des données(0x05-6-7) AES-CCM-32-64-128 Cryptage et

authentification des données

Page 23: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des tramesSommaire

Spécifications

Sécurité > 802.15.4

Développement

Conclusion

23

•Permet de mettre en place le genre de clé qui doit être utilisé

Page 24: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des tramesSommaire

Spécifications

Sécurité > 802.15.4

Développement

Conclusion

24

• AES-CCM▫ "Frame Counter": éviter les attaques par réplications▫ "Key Control": utilisé par la couche application si la

valeur maximale de "Frame Counter" est atteinte▫ Authentification pour le MAC sur 4,6 ou 8 octets

Page 25: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des noeuds• Chaque émetteur-récepteur possède

une liste de contrôle d’accès

Sommaire

Spécifications

Sécurité > 802.15.4

Développement

Conclusion

25

Champ Utilité"Address" Adresse du nœud voisin

en communication "Security Suite" Niveau de sécurité associé

pour l’échange des messages

"Key" Clé de 128 bits utilisé pour l’algorithme AES

"Last Initial Vector (IV) and Replay Counter"

Identification de message

Page 26: Etude du protocole, de la sécurité et création d’une application ZigBee

Les clés de sécurité• Chiffrement symétrique avec AES• 3 types de clés• Link Key

• Partagés par 2 équipements• Protègent les communications entre les 2

• Network Key• Partagés par tous les équipements du

réseau• Protègent les communications broadcast

• Master Key• Partagées par 2 entitées• Utilisées pour la génération des clés

(SKKE)

Sommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

26

Page 27: Etude du protocole, de la sécurité et création d’une application ZigBee

Les clés de sécurité• 3 méthodes de distribution des clés

La préinstallation

Le transport

L’établissement▫SKKE (Symmetric-Key Key Establishment)▫…

Sommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

27

Page 28: Etude du protocole, de la sécurité et création d’une application ZigBee

Le protocole d’établissement des clés symétriques (SKKE)

Sommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

28

Challenge Challen

ge

U V

U||QEU

U||V||QEU||QEV

MACData = U||V || QEU|| QEV

Z = MAC(Mkey,MACData)

KKeyData = kdf(Z, 256) = MacKey ||KeyData

KeyData= H(Z||0x02)MacKey = H(Z||0x01)

Partage d’une clé commune

Mkey

Page 29: Etude du protocole, de la sécurité et création d’une application ZigBee

Le protocole d’établissement des clés symétriques (SKKE)

Sommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

29

U V

MACData1 =0x02||V ||U||QEU||QEV

MACData2 = 0x03||V||U||QEU||QEV

MacT ag1 = MAC(MacKey,MacData1)

MacT ag2 = MAC(MacKey,MacData2)

MacTag1ACK + MacTag2

ACK

Confirmation de la clé

Page 30: Etude du protocole, de la sécurité et création d’une application ZigBee

Le Centre de Confiance• Distribue les clés et contrôle les accès• 1 par réseau

Sommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

30

FonctionsIdentifier et authentifier des équipements qui rejoignent le réseauGarder et distribuer les clés réseaux aux équipements qu’il gèreRelier deux nœuds et activer la sécurité entre les équipements qu’il gère du début à la fin

Page 31: Etude du protocole, de la sécurité et création d’une application ZigBee

Le Centre de ConfianceSommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

31

2 modes de fonctionnementCommercial: niveau élevé de sécurité• tous les équipements sont listés avec leurs clés. • Etablit et maintient les clés et compteurs avec tous les éléments.• Applique les politiques pour la mise à jour des clés et du contrôle d’accèsRésidentiel: niveau bas de sécurité. • Maintien possible de la liste de tous les équipements et partage seulement la network key qui peut être préconfigurée ou envoyée par transport non sécurisé.

Page 32: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des messages• La couche NWK

▫ Donner des fonctionnalités pour assurer les opérations de la couche MAC et de donner un service correct pour la couche APL

▫ Utilise la cryptographie AES comme la couche MAC

▫ utilise le Message Integrity Code pour déterminer le niveau de sécurité

▫ Les couches supérieures s’occupent d’installer les clés de sécurité, les compteurs de paquets et les niveaux de sécurité

Sommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

32

Page 33: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des messages

• Frame Counter: n° de trame pour éviter les duplications

• Chaque nœud va garder un compteur de paquets reçus avec chaque autre nœud dans la Network Information Base

• Lors de la réception, si le Frame Counter reçu est inférieur au Frame Count alors on abandonne. Sinon on met à jour le Frame Count avec "Frame Counter reçu+1"

Sommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

33

Page 34: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des messagesSommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

34

• La sous-couche APS▫ Donne l’interface entre la couche NWK et

APL▫ Traite les paquets entrants et sortants pour

les envoyer et les recevoir de façon sécurisée

▫ Etablit et gère les clés▫ Utilise les fonctions de sécurité basées sur

la "link key " ou la "network key" pour sécuriser les trames émises par la couche APL

▫ Utilise aussi le MIC pour déterminer le niveau de sécurité

Page 35: Etude du protocole, de la sécurité et création d’une application ZigBee

La sécurité des messagesSommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

35

Services fournisEtablissement des clés: 2 équipements partagent une "master key" qui sera utilisée pour la génération de la "link key"Transport des clés: échange (un minimum sécurisé ou non) des clésMise à jour des équipements: un premier équipement prévient un deuxième qu’un troisième change de statutSuppression d’équipement: un équipement informe un autre équipement pour supprimer un équipement connecté au réseau qui ne respecte pas les principes de sécurité du réseauChangement de clé: un équipement informe un autre équipement qu’il devrait passer à un autre réseau actifDemande de clé: demande la "clé réseau" courante ou la "clé maître" à un autre équipementTable de configuration des permissions: stockage des autorisations de chaque équipement pour réaliser certaines commandes

Page 36: Etude du protocole, de la sécurité et création d’une application ZigBee

Réseau B

Réseau A

Rejoindre un réseau ZigBeeSommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

36

XRa Rb

Joint mais non -authentifié

• La jointure non sécurisée via un routeur

Page 37: Etude du protocole, de la sécurité et création d’une application ZigBee

Rejoindre un réseau ZigBeeSommaire

Spécifications

Sécurité > Couches supérieures

Développement

Conclusion

37

Réseau A

X

RaC

• L’authentification via le Centre de Confiance

Authentifié

Page 38: Etude du protocole, de la sécurité et création d’une application ZigBee

Le développement du projet

• Contexte• Vision globale

38

Page 39: Etude du protocole, de la sécurité et création d’une application ZigBee

La domotique•L’ensemble des techniques visant

à intégrer à l’habitat tous les automatismes en matière de sécurité, de gestion de l’énergie, de communication...

•Fonctions permettant d’automatiser sa maison selon ses besoins et ses envies

Sommaire

Spécifications

Sécurité

Développement > Contexte

Conclusion

39

Page 40: Etude du protocole, de la sécurité et création d’une application ZigBee

La domotiqueSommaire

Spécifications

Sécurité

Développement > Contexte

Conclusion

40

Page 41: Etude du protocole, de la sécurité et création d’une application ZigBee

L’économie d’énergie• Enjeu actuel• Augmentation de la consommation• Audio-visuel• Informatique

• Systèmes en veille : • 10% de la consommation• ~ 1 à 2 tranches nucléaires

Sommaire

Spécifications

Sécurité

Développement > Contexte

Conclusion

41

Page 42: Etude du protocole, de la sécurité et création d’une application ZigBee

Présentation de ZigBeecolo• Pas encore un réel un succès,

considéré comme un luxe• Investissement

▫Système complet, peu cher, facile d’utilisation, utile et auquel l’utilisateur peut avoir confiance

• Automatiser les tâches quotidiennes

▫Equipements sans fil, sécurisés, standardisés, à faible coût…

Sommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

42

Page 43: Etude du protocole, de la sécurité et création d’une application ZigBee

Démarches effectuéesSommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

43

Page 44: Etude du protocole, de la sécurité et création d’une application ZigBee

Démarches effectuées• Première recherche: Choix de

l’API

Sommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

44

API FonctionnalitésTexas Instruments Connexion via USB. 2 types

d’interfacesEmber Connexion via Ethernet.

Améliorations des fonctionnalités existantes. Prix généralement plus élevés

Integration Associates

Connexion via USB. MAC placé directement dans le matériel.

Freescale Outil de configuration pour construire facilement un réseau. Gamme de protocoles ZigBee ainsi que d’autres

Page 45: Etude du protocole, de la sécurité et création d’une application ZigBee

Démarches effectuées• Deuxième recherche: Choix des

composants logiciels et matériels• Produits Texas Instruments

• CC_DEBUGGER 2530 et IAR EW805• Produits Cleosys

• Kit de développement: Un coodinateur central + une télécommande + une prise + logiciel de programmation

Sommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

45

Page 46: Etude du protocole, de la sécurité et création d’une application ZigBee

Démarches effectuéesSommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

46

Page 47: Etude du protocole, de la sécurité et création d’une application ZigBee

Design réseau Clé USB Prise

Interrupteur

Sommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

47

Coordinateur = FFD

Centre de confiance

= Routeur FFD

= Disp. Terminal RFD

Réseau de type maillé▫Coordinateur portatif▫Connections dynamiques entre les routeurs

(prises et clés)▫Capacités des connections étendues dans

tout le bâtiment

Page 48: Etude du protocole, de la sécurité et création d’une application ZigBee

Design réseau• Sécurité forte requise• La domotique ne doit pas être

vulnérable• Mode commercial• Réseau surveillé, Jointures

contrôlées, Authentifications mutuelles, Mise à jour des clés réseaux

• Messages sécurisés à plusieurs couches

Sommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

48

Page 49: Etude du protocole, de la sécurité et création d’une application ZigBee

Design applicatif• Application intéragissant avec la clé• Menu• Consulter le plan• Changer les modes

• Sommeil, Absence, Désactivation, …• Afficher les rapports de

consommation• Changer les paramètres

• Date/Heure, Accès, Luminosité, Alarmes, …• Gérer le réseau

• Ajouter/Supprimer équipement, …

Sommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

49

Page 50: Etude du protocole, de la sécurité et création d’une application ZigBee

Design applicatif• L’interface : point faible du réseau• Ne doit pas être compromise

• Mot de passe administrateur • Dès la première configuration• Pas de mot de passe par défaut

• Restrictions sur les utilisateurs• Ne disposer que certains accès• Ne modifier que certains équipements• Désignées par l’administrateur

Sommaire

Spécifications

Sécurité

Développement > Vision Globale

Conclusion

50

Page 51: Etude du protocole, de la sécurité et création d’une application ZigBee

Conclusion

• Une technologie d’avenir• Bilan personnel• Perspectives futures

51

Page 52: Etude du protocole, de la sécurité et création d’une application ZigBee

Une technologie complète

• Technologie modulable• Très faible consommation d’énergie• Parfaitement adaptée à la domotique• Confort pour l’utilisateur• Sécurité complète pour chaque

couche

Sommaire

Spécifications

Sécurité

Développement

Conclusion > Technologie d’avenir

52

Page 53: Etude du protocole, de la sécurité et création d’une application ZigBee

Un bilan mitigé

• Pas de mise en place possible• Pas de réception des équipements ZigBee• Aucune pratique

Sommaire

Spécifications

Sécurité

Développement

Conclusion > Bilan personnel

53

• Travail théorique enrichissant• Etude de document et

technologie• Développement de l’oeil critique• Naissance et étude d’un projet• Domaines vastes et intéressants

Page 54: Etude du protocole, de la sécurité et création d’une application ZigBee

Des ouvertures possibles• Esquisse

• Etude assez riche

• Conception de l’application, de la phase de tests, de l’extensibilité à faire

Sommaire

Spécifications

Sécurité

Développement

Conclusion > Perspectives futures

54

Page 55: Etude du protocole, de la sécurité et création d’une application ZigBee

Merci de votre attention

Questions

55