Revenir
Revenir

Prolongements

Les protocoles de base tels que IP et TCP ne fournissent pas de mécanismes de sécurité intégrés nativement...

Sommaire

Les DHCP, ports de communication et FirewallComprendre le DHCP en 3 minutes - VidéoPorts et protocoles : comprendre l'essentiel en 5 minutes - VidéoFirewall : comprendre l'essentiel en 7 minutes - Vidéo
Les VPNPourquoi utiliser un VPN ?Les caractéristiques d'un VPN
Le chiffrement des donnéesQu'est-ce que la cryptographie ?Les principales méthodes de chiffrement
Les blockchainsDéfinition d'une blockchainQu'est-ce que le minage ?
Les principaux types de blockchains
Les attaques de DNSLe DNS cache poisoningLe DNS spoofingLe DNS Reflection/AmplificationComprendre l'attaque DDOS en 4 minutes - Vidéo

Les DHCP, ports de communication et Firewall

Comprendre le DHCP en 3 minutes - Vidéo

https://www.youtube.com/watch?v=yH9UvkeAz-I

https://www.youtube.com/watch?v=yH9UvkeAz-I

Ports et protocoles : comprendre l'essentiel en 5 minutes - Vidéo

https://www.youtube.com/watch?v=YSl6bordSh8

https://www.youtube.com/watch?v=YSl6bordSh8

Firewall : comprendre l'essentiel en 7 minutes - Vidéo

https://www.youtube.com/watch?v=6Swt51w3EjY

https://www.youtube.com/watch?v=6Swt51w3EjY

Les VPN

Pourquoi utiliser un VPN ?

Les protocoles de base tels que IP et TCP ne fournissent pas de mécanismes de sécurité intégrés nativement. Les trames de données des utilisateurs circulent en clair sur les réseaux et peuvent donc être interceptées et lues par un pirate informatique.
Un VPN (Virtual Private Network) est un moyen sécurisé et privé de connecter des réseaux ou des hôtes distants sur Internet. Il utilise le protocole TCP/IP comme fondement pour établir des connexions sécurisées. Il permet de masquer votre adresse IP c'est-à-dire votre localisation géographique et chiffre vos données. Même si un pirate informatique intercepte vos données via un VPN, celles-ci ayant fait l'objet d'un chiffrement fort (AES 256 bits par exemple), il ne pourra pas accéder à leur contenu c'est-à-dire aux informations transportées.

Les caractéristiques d'un VPN

Tunneling 
  • Le tunneling permet d'encapsuler et de chiffrer les paquets de données à travers un réseau public, comme Internet.
  • Le protocole TCP/IP est utilisé pour transporter les paquets de données à travers le réseau sous-jacent, tandis que les protocoles de tunneling, tels que IPsec (Internet Protocol Security) ou SSL/TLS (Secure Sockets Layer/Transport Layer Security), sont utilisés pour encapsuler ces paquets dans des paquets supplémentaires, appelés paquets de tunnel.
  • Les paquets de tunnel sont chiffrés pour assurer la confidentialité des données pendant leur transmission.
Sécurité et confidentialité
  • L'un des principaux objectifs du VPN est de garantir la sécurité et la confidentialité des données lors de leur transmission sur un réseau public.
  • Les protocoles de sécurité utilisés dans les VPN, comme IPsec et SSL/TLS, fournissent des mécanismes de chiffrement pour protéger les données contre les interceptions et les attaques malveillantes.
  • Les données sont encapsulées dans des paquets chiffrés, ce qui signifie que même si elles sont interceptées, elles ne peuvent pas être comprises sans la clé de chiffrement appropriée.
Authentification et intégrité des données
  • Les VPN utilisent également des mécanismes d'authentification pour s'assurer que les utilisateurs et les appareils se connectant au réseau VPN sont légitimes.
  • Des protocoles tels que IKE (Internet Key Exchange) dans IPsec permettent l'établissement d'une connexion sécurisée entre les points de terminaison VPN en s'authentifiant mutuellement.
  • De plus, les protocoles de sécurité utilisés dans les VPN assurent l'intégrité des données en fournissant des mécanismes de vérification de l'intégrité des paquets, garantissant ainsi que les données ne sont pas altérées en transit.
Extension des réseaux privés
  • L'un des avantages clés du VPN est la possibilité d'étendre un réseau privé sur un réseau public, permettant ainsi aux utilisateurs distants de se connecter au réseau de l'entreprise de manière sécurisée.
  • Le protocole TCP/IP est utilisé pour acheminer les paquets de données entre le client VPN et le serveur VPN via Internet.
  • Les paquets de données encapsulés et chiffrés sont transmis via des connexions VPN sécurisées, ce qui permet aux utilisateurs distants d'accéder aux ressources du réseau privé comme s'ils étaient localement connectés.

Le chiffrement des données

Qu'est-ce que la cryptographie ?

Il existe différentes méthodes permettant de chiffrer les données échangées entre des machines connectées sur un réseau. Chacune d'entre elles présente des avantages et des inconvénients. Les techniques utilisées font appel à des algorithmes de cryptographie. La cryptographie est l'art de sécuriser les communications et les données en utilisant des techniques de chiffrement et de déchiffrement afin de garantir les points suivants.
  • La confidentialité des données
    La cryptographie permet de rendre les données illisibles pour toute personne non autorisée. Les techniques de chiffrement sont utilisées pour transformer les données en un format illisible appelé "texte chiffré". Seules les personnes disposant de la clé de déchiffrement appropriée peuvent revenir au format d'origine, appelé "texte en clair".
  • L'intégrité des données 
    La cryptographie assure l'intégrité des données en veillant à ce qu'elles ne soient pas altérées pendant le transfert ou le stockage. Les fonctions de hachage sont utilisées pour générer des empreintes numériques uniques à partir des données. Toute modification apportée aux données entraînera une modification de l'empreinte, ce qui permet de détecter toute altération.
  • L'authenticité des données
    La cryptographie permet de vérifier l'authenticité des informations et des parties impliquées dans une communication. Les signatures numériques sont utilisées pour lier les données à l'identité d'une entité spécifique. Elles sont générées en utilisant une clé privée, et leur vérification est effectuée à l'aide de la clé publique correspondante. Cela permet de s'assurer que les données proviennent bien de l'expéditeur attendu et n'ont pas été modifiées en transit.
  • La non-répudiation des données 
    La cryptographie garantit la non-répudiation, c'est-à-dire qu'une fois qu'une personne a signé numériquement un document, elle ne peut pas nier l'avoir fait. Cela permet de résoudre les problèmes de confiance et d'assurer la responsabilité des parties impliquées dans une communication.
  • L'échange sécurisé des données
    La cryptographie garantit que les clés de chiffrement sont partagées entre les parties de manière sécurisée, afin qu'elles puissent communiquer de manière confidentielle. Des protocoles d'échange de clés, tels que Diffie-Hellman, sont utilisés pour établir des clés de session secrètes sans les divulguer à des tiers.

Les principales méthodes de chiffrement

Chiffrement symétrique
  • Le chiffrement symétrique utilise la même clé pour le chiffrement et le déchiffrement des données.
  • Il est rapide et efficace pour chiffrer de grandes quantités de données.
  • Les algorithmes couramment utilisés s'appuient sur l'AES (Advanced Encryption Standard) et le 3DES (Triple Data Encryption Standard).
Exemple : Sarah souhaite envoyer un message confidentiel à Hugo. Ils décident d'utiliser l'algorithme AES avec une clé partagée secrète.
  • Sarah chiffre le message en utilisant la clé partagée, créant ainsi un texte chiffré.
  • Elle envoie le texte chiffré à Hugo.
  • Hugo utilise la même clé partagée pour déchiffrer le texte et récupérer le message d'origine.
Chiffrement asymétrique
  • Le chiffrement asymétrique mobilise une paire de clés : une clé publique pour le chiffrement et une clé secrète privée pour le déchiffrement.
  • Il permet un échange sécurisé de clés et des communications confidentielles entre les parties.
  • Les algorithmes couramment utilisés s'appuient sur RSA, Diffie-Hellman et ECC (Elliptic Curve Cryptography).
Exemple : Hugo souhaite envoyer un message confidentiel à Sarah. Ils décident d'utiliser l'algorithme RSA.
  • Sarah génère une paire de clés : une clé publique et une clé privée. Elle partage la clé publique avec Hugo.
  • Hugo chiffre le message en utilisant la clé publique de Sarah, créant ainsi un texte chiffré.
  • Hugo envoie le texte chiffré à Sarah.
  • Sarah utilise sa clé privée correspondante pour déchiffrer le texte et récupérer le message d'origine.
Fonctions de hachage
  • Les fonctions de hachage convertissent des données de taille variable en une empreinte fixe.
  • Elles sont principalement utilisées pour vérifier l'intégrité des données et pour stocker des mots de passe de manière sécurisée.
  • Les algorithmes couramment utilisés s'appuient sur MD5, SHA-1, SHA-256 et SHA-3.
Signature numérique
  • Les signatures numériques sont utilisées pour vérifier l'authenticité et l'intégrité des données.
  • Elles sont créées en utilisant une clé privée pour chiffrer un hachage des données, et la vérification est effectuée à l'aide de la clé publique correspondante.
  • Les algorithmes couramment utilisés s'appuient sur RSA et DSA (Digital Signature Algorithm).
Échange de clés
  • Les protocoles d'échange de clés sont utilisés pour établir des clés de chiffrement symétriques entre des parties.
Les protocoles couramment utilisés s'appuient sur Diffie-Hellman, ECDH (Elliptic Curve Diffie-Hellman) et IKE (Internet Key Exchange).

Les blockchains

Définition d'une blockchain

Les blockchains sont des technologies permettant de stocker des informations de manière sécurisée et transparente. Elles fonctionnent comme des sortes de registres numériques, où chaque nouvelle information est enregistrée sous forme de "bloc" de données. Ces blocs sont liés les uns aux autres pour former une "chaîne" continue, d'où le terme blockchain.
Les blockchains reposent sur les principes fondamentaux suivants :
  • Décentralisation
    Contrairement aux systèmes traditionnels où une autorité centrale contrôle les données, les blockchains sont décentralisées. Cela signifie que les informations sont partagées et vérifiées par un grand nombre d'utilisateurs (appelés "nœuds") répartis à travers le réseau.
  • Sécurité
    Les blockchains utilisent des techniques de cryptographie pour assurer la sécurité des données. Chaque bloc contient une empreinte numérique unique (appelée "hachage") qui le relie au bloc précédent, formant ainsi une structure résistante à la falsification. Une fois qu'une information est enregistrée dans un bloc, il devient très difficile de la modifier ou de la supprimer.
  • Transparence
    Les blockchains offrent une transparence accrue car toutes les transactions enregistrées sont visibles par tous les participants du réseau. Cela favorise la confiance et la responsabilité, car chacun peut vérifier l'exactitude des informations.
  • Applications variées
    Les blockchains ne sont pas limitées aux cryptomonnaies. Elles peuvent être utilisées dans de nombreux domaines tels que les contrats intelligents, la gestion de la chaîne d'approvisionnement, les votes électroniques, la santé, les assurances, et bien d'autres. Les blockchains offrent des avantages tels que l'automatisation, la traçabilité et la réduction des coûts.
  • Mécanisme de consensus
    Pour garantir la validité des informations enregistrées, les blockchains utilisent des mécanismes de consensus. Cela implique que les utilisateurs du réseau doivent se mettre d'accord sur les nouvelles données à ajouter à la blockchain. Différents mécanismes de consensus existent, tels que la preuve de travail, la preuve d'enjeu et la preuve d'autorité.

Qu'est-ce que le minage ?

Le minage consiste à valider et à ajouter de manière cohérente de nouveaux blocs à la blockchain afin de maintenir la sécurité et la robustesse du réseau en garantissant que les transactions sont vérifiées. Cependant, le minage peut être énergivore et nécessiter des ressources informatiques considérables. Le processus de minage fait intervenir quatre étapes.
  • Création d'un nouveau bloc
    Lorsqu'une transaction est effectuée sur la blockchain, elle est regroupée avec d'autres transactions en attente pour former un bloc. Le mineur doit créer un nouveau bloc en regroupant ces transactions et en y ajoutant un en-tête contenant des informations importantes, comme un identifiant unique et un hachage du bloc précédent.
  • Résolution d'un problème mathématique
    Une fois le bloc créé, le mineur doit résoudre un problème mathématique complexe, appelé "énigme cryptographique" ou "preuve de travail". Ce problème nécessite beaucoup de puissance de calcul et est conçu pour être difficile à résoudre, mais facile à vérifier. Les mineurs utilisent leurs ressources informatiques (comme des ordinateurs puissants ou des cartes graphiques spécialisées) pour trouver la solution. Cette étape est particulièrement énergivore.
  • Validation et ajout du bloc
    Lorsqu'un mineur trouve la solution au problème mathématique, il le publie sur le réseau. Les autres mineurs vérifient la solution pour s'assurer de sa validité. Une fois validé, le nouveau bloc est ajouté à la blockchain, et les transactions qu'il contient deviennent permanentes et immuables.
  • Récompenses
    En récompense de leurs efforts de minage et de la fourniture de la puissance de calcul nécessaire, les mineurs peuvent recevoir des récompenses. Dans de nombreuses blockchains, ces récompenses prennent la forme de nouvelles cryptomonnaies créées lors de l'ajout d'un nouveau bloc (ce qu'on appelle "l'exploitation minière" de cryptomonnaie). Les mineurs peuvent également recevoir des frais de transaction payés par les utilisateurs pour inclure leurs transactions dans le bloc.

Les principaux types de blockchains

Les blockchains publiques
  • Bitcoin
    C'est la première et la plus célèbre blockchain publique. Elle a été créée pour soutenir la cryptomonnaie Bitcoin et permettre des transactions peer-to-peer décentralisées sans tiers de confiance. Toutes les transactions sont enregistrées de manière transparente et immuable sur la blockchain Bitcoin. La sécurité de Bitcoin repose sur le mécanisme de consensus de preuve de travail (Proof of Work - PoW).
  • Ethereum
    C'est une plateforme de blockchain publique conçue pour prendre en charge les contrats intelligents et les applications décentralisées (dApps). Ethereum utilise une cryptomonnaie appelée Ether (ETH) et offre un langage de programmation Turing-complet permettant aux développeurs de créer des applications décentralisées sur la blockchain. Ethereum utilise également un mécanisme de consensus de preuve de travail (PoW), bien que la transition vers un mécanisme de consensus de preuve d'enjeu (Proof of Stake - PoS) soit en cours.
Les blockchains privées et consortiums
  • Les blockchains privées
    Elles sont utilisées au sein des entreprises ou des organisations pour des cas d'utilisations spécifiques. Contrairement aux blockchains publiques, elles sont limitées à un groupe restreint de participants autorisés. Les blockchains privées offrent un plus grand contrôle et une plus grande confidentialité des données, ce qui peut être crucial dans certaines applications commerciales.
  • Les blockchains consortiums
    Ellessont similaires aux blockchains privées, mais elles sont partagées entre plusieurs organisations. Elles permettent à plusieurs entités de collaborer et de partager des informations tout en maintenant une certaine confiance grâce à la technologie de la blockchain. Les blockchains consortiums sont souvent utilisées dans des secteurs tels que la finance, la logistique ou la santé, où plusieurs parties doivent travailler ensemble tout en maintenant une certaine autonomie.

Les attaques de DNS

Le DNS cache poisoning

Lorsqu'un appareil tente d'accéder à un site Web, il envoie une requête DNS pour résoudre le nom de domaine en une adresse IP correspondante. Les serveurs DNS utilisent la mise en cache pour stocker les résultats des requêtes précédentes afin d'améliorer les performances et de réduire le temps de résolution des requêtes suivantes.
Une attaque d'empoisonnement du cache DNS (DNS cache poisoning) compromet un cache DNS en injectant de fausses informations. Un attaquant envoie une réponse DNS usurpée à un serveur DNS cible pour lui faire croire qu'il l'obtient d'un serveur DNS de confiance. Après une attaque réussie, le serveur DNS met à jour son cache avec les informations malveillantes fournies par l'attaquant. Les demandes futures adressées à ce domaine sont ensuite redirigées vers l'adresse IP malveillante, permettant aux attaquants d'intercepter le trafic ou d'effectuer d'autres types d'attaques. 

Le DNS spoofing

L'usurpation de DNS (DNS spoofing) est une attaque dans laquelle un pirate informatique manipule les réponses DNS pour rediriger le trafic vers des adresses IP contrôlées par lui. Contrairement aux attaques d'empoisonnement du cache, l'usurpation de DNS ne nécessite pas que le cache DNS soit compromis. Au lieu de cela, l'attaquant envoie des réponses DNS usurpées directement à l'appareil ciblé.
Les attaques d'usurpation de DNS envoient généralement des réponses DNS falsifiées avant que les serveurs DNS légitimes ne répondent. Si l'attaquant réussit à envoyer la réponse usurpée avant la réponse légitime, l'appareil cible ignorera la réponse réelle du serveur DNS et utilisera les informations usurpées pour accéder au site web souhaité. Le but ultime de ces attaques est d'inciter les appareils et les utilisateurs à accéder à des adresses IP malveillantes afin que les attaquants puissent contrôler le trafic réseau, voler des informations sensibles ou mener d'autres types d'attaques.
Pour réduire le risque de telles attaques, il est important de mettre en place des mesures de sécurité telles que des pare-feux, des solutions de filtrage DNS et des mises à jour régulières du logiciel DNS. 

Le DNS Reflection/Amplification

Une attaque par réflexion/amplification DNS est une technique utilisée par les attaquants pour amplifier le volume de leur trafic d'attaque et submerger leurs cibles avec un flot de réponses DNS. Le principe de cette attaque est le suivant.
Réflexion
Les attaquants exploitent des serveurs DNS ouverts ou mal configurés pour envoyer des réponses DNS volumineuses aux cibles. Un serveur DNS ouvert est un serveur qui répond aux requêtes DNS de n'importe quelle source sans validation appropriée. L'attaquant envoie des requêtes DNS usurpées à ces serveurs en utilisant l'adresse IP de la victime comme adresse source, et renvoie les réponses DNS à leur destination.
Amplification
Les attaquants utilisent des requêtes DNS spécialement conçues pour générer des réponses DNS beaucoup plus volumineuses que la requête d'origine. Cela permet à l'attaquant de doubler la quantité de trafic d'attaque par rapport au trafic d'origine. Par exemple, une requête DNS de plusieurs dizaines d'octets peut générer une réponse de plusieurs kilo-octets.
Le principe de cette attaque est que l'attaquant envoie de petites requêtes aux serveurs DNS distribuées sur Internet, usurpe l'adresse IP source et renvoie la réponse à la victime ciblée. Cela augmente le trafic car la grande réponse générée par le serveur DNS est beaucoup plus grande que la requête initiale envoyée par l'attaquant.
Par conséquent, la cible peut être inondée de réponses DNS, surchargeant les ressources réseau telles que la bande passante, les pare-feux et les serveurs. Cela peut entraîner un déni de service (DoS) ou une grave dégradation des performances sur le réseau cible. 

Comprendre l'attaque DDOS en 4 minutes - Vidéo

https://www.youtube.com/watch?v=n4Zs0qcgjXI

https://www.youtube.com/watch?v=n4Zs0qcgjXI