Blog

Les codeurs conquièrent la sécurité : Share & Learn Series - Protection insuffisante de la couche transport

Jaap Karan Singh
Publié le 27 juin 2019

Même si vous avez complètement sécurisé un serveur d'application et les systèmes dorsaux qu'il utilise, les communications peuvent toujours être vulnérables à l'espionnage si la protection de la couche transport est insuffisante. Dans le monde physique, la raison pour laquelle les devises fortes sont déplacées à l'aide de véhicules blindés est qu'elles sont protégées pendant leur transit. La sécurité d'un magasin ou d'une banque importe peu si l'argent qu'il génère est chargé dans une voiturette de golf pour être transporté à l'autre bout de la ville.

Il en va de même pour les couches de transport dans le domaine cybernétique. Même si une application est sécurisée, il existe toujours une vulnérabilité critique si les informations qui lui parviennent sont envoyées sans protection. Certaines applications présentent une deuxième vulnérabilité si elles envoient en outre des informations à d'autres serveurs ou à une base de données. Ces informations peuvent être exposées à des initiés qui n'ont rien à faire pour espionner ces transactions.

Pour protéger pleinement les utilisateurs et les données, il faut protéger la couche de transport. Ce n'est qu'à cette condition que vous pourrez sécuriser l'ensemble d'une transaction de bout en bout.

Dans cet épisode, vous apprendrez

  • Comment les pirates peuvent exploiter une protection insuffisante de la couche transport
  • Pourquoi le fait de ne pas protéger la couche transport est si dangereux
  • Ce qui peut être fait pour sécuriser le transport de toutes les données qui entrent et sortent d'une application ou d'un serveur.

Comment les attaquants exploitent-ils une protection insuffisante de la couche transport ?

Une protection insuffisante de la couche transport peut permettre des attaques en deux points de votre flux de données. Le point le plus couramment exploité se situe entre un utilisateur et le serveur d'application. Si des informations sont envoyées en clair, ou avec un faible cryptage, les pirates pourront surveiller, voler et éventuellement modifier ces informations. Les pirates peuvent ainsi voler la carte de crédit d'un utilisateur, ses identifiants de connexion ou tout autre élément envoyé au serveur d'application. Même si le serveur lui-même est sécurisé, un pirate informatique surveillant le canal non sécurisé entre le serveur et les utilisateurs pourrait obtenir un accès presque illimité à de nombreuses informations.

Le deuxième point qui n'est souvent pas protégé est la couche de transport entre une application et le reste du réseau. Par exemple, un serveur d'application peut traiter des commandes d'achats en ligne et les envoyer ensuite à un système d'exécution, ou des données peuvent simplement être transférées vers une base de données pour y être stockées. Si ces canaux internes ne sont pas protégés, les utilisateurs internes pourraient être en mesure de voir ces informations.

S'il est agréable de croire que tous les utilisateurs internes sont de bonnes personnes, il n'en reste pas moins que les menaces internes sont en augmentation dans de nombreux secteurs d'activité. Des initiés ont été surpris en train d'accepter des pots-de-vin en échange de la collecte d'informations sensibles pour des attaquants ou des concurrents. Et avoir accès à des milliers de cartes de crédit valides peut être tout simplement trop tentant pour certaines personnes.

En termes de techniques d'attaque, il n'est pas très difficile d'intercepter des communications non protégées. Même les pirates de bas niveau savent comment effectuer des attaques de type "man-in-the-middle" contre des flux de données non chiffrés. S'ils ne le savent pas, il existe des vidéos en ligne qui leur permettent de se former en moins d'une demi-heure.

Pourquoi les vulnérabilités liées à une protection insuffisante de la couche transport sont-elles si dangereuses ?

Une protection insuffisante ou inexistante des couches de transport est dangereuse car elle permet aux pirates de recueillir très facilement des informations sensibles. Ils n'ont pas besoin de s'introduire dans votre serveur d'applications ou de pirater votre réseau. Il leur suffit de mettre en place une attaque de type "man in the middle" et de lire tout ce que les utilisateurs envoient à un serveur. Il peut s'agir de noms d'utilisateur et de mots de passe qui peuvent être utilisés pour contourner la sécurité à l'avenir en utilisant des informations d'identification valides. Selon l'application, il peut également s'agir d'informations relatives aux cartes de crédit ou d'autres données personnelles concernant les utilisateurs.

Il est important de noter que tous ces espionnages ont lieu en dehors de votre réseau. Si vous utilisez des canaux de transport non sécurisés, il n'y a aucun moyen de savoir si quelqu'un capture ces informations. Normalement, le premier signe est lorsque de nombreux utilisateurs commencent à signaler des comptes compromis ou des achats par carte de crédit, et le facteur commun est que votre application " n'est pas un bon endroit où se trouver ". Les pirates peuvent également modifier les informations une fois qu'ils les ont, en changeant l'adresse de livraison par exemple, ou même en insérant des scripts malveillants dans la réponse du serveur avant de la transmettre aux utilisateurs.

Au niveau du backend, le fait de ne pas sécuriser la couche de transport expose les données à des initiés. Il est probablement beaucoup moins probable qu'un initié espionne la couche de transport que des pirates de l'extérieur qui font la même chose. Mais c'est aussi plus dangereux si cela se produit, parce que la menace interne pourra voir non seulement les données de l'utilisateur, mais aussi toute information propriétaire ajoutée par le serveur d'application avant d'envoyer ces paquets.

Élimination des vulnérabilités liées à une protection insuffisante de la couche transport

Aussi dangereuse que puisse être une protection insuffisante de la couche de transport, il n'est pas incroyablement difficile de sécuriser correctement tous vos canaux de transport. Cela commence par l'infrastructure dorsale. Celle-ci doit être exclusivement HTTPS, veillez à ne pas mélanger HTTPS et HTTP sur un site. Enfin, maintenez un certificat SSL valide avec une taille de clé minimale de 2048 bits tout en forçant tous les utilisateurs à interagir avec des navigateurs sécurisés avec HTTP Strict Transport Security (HSTS).

Une fois l'infrastructure en place, les développeurs doivent utiliser un protocole solide pour protéger la couche de transport. L'idéal est d'utiliser TLS 1.2, bien que TLS 1.1 et 1.0 soient également acceptables en cas d'absolue nécessité. Une fois ce protocole en place, les protocoles faibles comme SSLv2 doivent être complètement désactivés et ne jamais être pris en charge.

Il convient également de veiller à ce que les algorithmes de chiffrement soient suffisamment puissants au niveau du backend. Idéalement, la taille minimale de la clé de session devrait être de 128 bits. Comme pour les protocoles, la prise en charge d'algorithmes cryptographiques faibles tels que DES et RC4-40 doit être désactivée. Enfin, ne considérez pas une application comme réellement sûre tant que le serveur lui-même et tous les chemins de données qui y mènent et qui en partent ne sont pas suffisamment protégés.

Plus d'informations sur les vulnérabilités de la protection de la couche de transport insuffisante

Pour en savoir plus, vous pouvez consulter le guide de l'OWASP sur la protection des couches de transport. Vous pouvez également mettre à l'épreuve vos nouvelles connaissances en matière de défense grâce à la démo gratuite de la plateforme Secure Code Warrior , qui forme les équipes de cybersécurité à devenir les meilleurs cyber-guerriers. Pour en savoir plus sur la manière de vaincre cette vulnérabilité et d'autres menaces, visitez le blogSecure Code Warrior .

Voir la ressource
Voir la ressource

Même si vous avez entièrement sécurisé un serveur d'application et les systèmes dorsaux qu'il utilise, les communications peuvent encore être espionnées si la protection de la couche transport est insuffisante.

Vous souhaitez en savoir plus ?

Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Réservez une démonstration
Partager sur :
Auteur
Jaap Karan Singh
Publié le 27 juin 2019

Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Partager sur :

Même si vous avez complètement sécurisé un serveur d'application et les systèmes dorsaux qu'il utilise, les communications peuvent toujours être vulnérables à l'espionnage si la protection de la couche transport est insuffisante. Dans le monde physique, la raison pour laquelle les devises fortes sont déplacées à l'aide de véhicules blindés est qu'elles sont protégées pendant leur transit. La sécurité d'un magasin ou d'une banque importe peu si l'argent qu'il génère est chargé dans une voiturette de golf pour être transporté à l'autre bout de la ville.

Il en va de même pour les couches de transport dans le domaine cybernétique. Même si une application est sécurisée, il existe toujours une vulnérabilité critique si les informations qui lui parviennent sont envoyées sans protection. Certaines applications présentent une deuxième vulnérabilité si elles envoient en outre des informations à d'autres serveurs ou à une base de données. Ces informations peuvent être exposées à des initiés qui n'ont rien à faire pour espionner ces transactions.

Pour protéger pleinement les utilisateurs et les données, il faut protéger la couche de transport. Ce n'est qu'à cette condition que vous pourrez sécuriser l'ensemble d'une transaction de bout en bout.

Dans cet épisode, vous apprendrez

  • Comment les pirates peuvent exploiter une protection insuffisante de la couche transport
  • Pourquoi le fait de ne pas protéger la couche transport est si dangereux
  • Ce qui peut être fait pour sécuriser le transport de toutes les données qui entrent et sortent d'une application ou d'un serveur.

Comment les attaquants exploitent-ils une protection insuffisante de la couche transport ?

Une protection insuffisante de la couche transport peut permettre des attaques en deux points de votre flux de données. Le point le plus couramment exploité se situe entre un utilisateur et le serveur d'application. Si des informations sont envoyées en clair, ou avec un faible cryptage, les pirates pourront surveiller, voler et éventuellement modifier ces informations. Les pirates peuvent ainsi voler la carte de crédit d'un utilisateur, ses identifiants de connexion ou tout autre élément envoyé au serveur d'application. Même si le serveur lui-même est sécurisé, un pirate informatique surveillant le canal non sécurisé entre le serveur et les utilisateurs pourrait obtenir un accès presque illimité à de nombreuses informations.

Le deuxième point qui n'est souvent pas protégé est la couche de transport entre une application et le reste du réseau. Par exemple, un serveur d'application peut traiter des commandes d'achats en ligne et les envoyer ensuite à un système d'exécution, ou des données peuvent simplement être transférées vers une base de données pour y être stockées. Si ces canaux internes ne sont pas protégés, les utilisateurs internes pourraient être en mesure de voir ces informations.

S'il est agréable de croire que tous les utilisateurs internes sont de bonnes personnes, il n'en reste pas moins que les menaces internes sont en augmentation dans de nombreux secteurs d'activité. Des initiés ont été surpris en train d'accepter des pots-de-vin en échange de la collecte d'informations sensibles pour des attaquants ou des concurrents. Et avoir accès à des milliers de cartes de crédit valides peut être tout simplement trop tentant pour certaines personnes.

En termes de techniques d'attaque, il n'est pas très difficile d'intercepter des communications non protégées. Même les pirates de bas niveau savent comment effectuer des attaques de type "man-in-the-middle" contre des flux de données non chiffrés. S'ils ne le savent pas, il existe des vidéos en ligne qui leur permettent de se former en moins d'une demi-heure.

Pourquoi les vulnérabilités liées à une protection insuffisante de la couche transport sont-elles si dangereuses ?

Une protection insuffisante ou inexistante des couches de transport est dangereuse car elle permet aux pirates de recueillir très facilement des informations sensibles. Ils n'ont pas besoin de s'introduire dans votre serveur d'applications ou de pirater votre réseau. Il leur suffit de mettre en place une attaque de type "man in the middle" et de lire tout ce que les utilisateurs envoient à un serveur. Il peut s'agir de noms d'utilisateur et de mots de passe qui peuvent être utilisés pour contourner la sécurité à l'avenir en utilisant des informations d'identification valides. Selon l'application, il peut également s'agir d'informations relatives aux cartes de crédit ou d'autres données personnelles concernant les utilisateurs.

Il est important de noter que tous ces espionnages ont lieu en dehors de votre réseau. Si vous utilisez des canaux de transport non sécurisés, il n'y a aucun moyen de savoir si quelqu'un capture ces informations. Normalement, le premier signe est lorsque de nombreux utilisateurs commencent à signaler des comptes compromis ou des achats par carte de crédit, et le facteur commun est que votre application " n'est pas un bon endroit où se trouver ". Les pirates peuvent également modifier les informations une fois qu'ils les ont, en changeant l'adresse de livraison par exemple, ou même en insérant des scripts malveillants dans la réponse du serveur avant de la transmettre aux utilisateurs.

Au niveau du backend, le fait de ne pas sécuriser la couche de transport expose les données à des initiés. Il est probablement beaucoup moins probable qu'un initié espionne la couche de transport que des pirates de l'extérieur qui font la même chose. Mais c'est aussi plus dangereux si cela se produit, parce que la menace interne pourra voir non seulement les données de l'utilisateur, mais aussi toute information propriétaire ajoutée par le serveur d'application avant d'envoyer ces paquets.

Élimination des vulnérabilités liées à une protection insuffisante de la couche transport

Aussi dangereuse que puisse être une protection insuffisante de la couche de transport, il n'est pas incroyablement difficile de sécuriser correctement tous vos canaux de transport. Cela commence par l'infrastructure dorsale. Celle-ci doit être exclusivement HTTPS, veillez à ne pas mélanger HTTPS et HTTP sur un site. Enfin, maintenez un certificat SSL valide avec une taille de clé minimale de 2048 bits tout en forçant tous les utilisateurs à interagir avec des navigateurs sécurisés avec HTTP Strict Transport Security (HSTS).

Une fois l'infrastructure en place, les développeurs doivent utiliser un protocole solide pour protéger la couche de transport. L'idéal est d'utiliser TLS 1.2, bien que TLS 1.1 et 1.0 soient également acceptables en cas d'absolue nécessité. Une fois ce protocole en place, les protocoles faibles comme SSLv2 doivent être complètement désactivés et ne jamais être pris en charge.

Il convient également de veiller à ce que les algorithmes de chiffrement soient suffisamment puissants au niveau du backend. Idéalement, la taille minimale de la clé de session devrait être de 128 bits. Comme pour les protocoles, la prise en charge d'algorithmes cryptographiques faibles tels que DES et RC4-40 doit être désactivée. Enfin, ne considérez pas une application comme réellement sûre tant que le serveur lui-même et tous les chemins de données qui y mènent et qui en partent ne sont pas suffisamment protégés.

Plus d'informations sur les vulnérabilités de la protection de la couche de transport insuffisante

Pour en savoir plus, vous pouvez consulter le guide de l'OWASP sur la protection des couches de transport. Vous pouvez également mettre à l'épreuve vos nouvelles connaissances en matière de défense grâce à la démo gratuite de la plateforme Secure Code Warrior , qui forme les équipes de cybersécurité à devenir les meilleurs cyber-guerriers. Pour en savoir plus sur la manière de vaincre cette vulnérabilité et d'autres menaces, visitez le blogSecure Code Warrior .

Voir la ressource
Voir la ressource

Remplissez le formulaire ci-dessous pour télécharger le rapport

Nous aimerions que vous nous autorisiez à vous envoyer des informations sur nos produits et/ou sur des sujets liés au codage sécurisé. Nous traiterons toujours vos données personnelles avec le plus grand soin et ne les vendrons jamais à d'autres entreprises à des fins de marketing.

Soumettre
Pour soumettre le formulaire, veuillez activer les cookies "Analytics". N'hésitez pas à les désactiver à nouveau une fois que vous aurez terminé.

Même si vous avez complètement sécurisé un serveur d'application et les systèmes dorsaux qu'il utilise, les communications peuvent toujours être vulnérables à l'espionnage si la protection de la couche transport est insuffisante. Dans le monde physique, la raison pour laquelle les devises fortes sont déplacées à l'aide de véhicules blindés est qu'elles sont protégées pendant leur transit. La sécurité d'un magasin ou d'une banque importe peu si l'argent qu'il génère est chargé dans une voiturette de golf pour être transporté à l'autre bout de la ville.

Il en va de même pour les couches de transport dans le domaine cybernétique. Même si une application est sécurisée, il existe toujours une vulnérabilité critique si les informations qui lui parviennent sont envoyées sans protection. Certaines applications présentent une deuxième vulnérabilité si elles envoient en outre des informations à d'autres serveurs ou à une base de données. Ces informations peuvent être exposées à des initiés qui n'ont rien à faire pour espionner ces transactions.

Pour protéger pleinement les utilisateurs et les données, il faut protéger la couche de transport. Ce n'est qu'à cette condition que vous pourrez sécuriser l'ensemble d'une transaction de bout en bout.

Dans cet épisode, vous apprendrez

  • Comment les pirates peuvent exploiter une protection insuffisante de la couche transport
  • Pourquoi le fait de ne pas protéger la couche transport est si dangereux
  • Ce qui peut être fait pour sécuriser le transport de toutes les données qui entrent et sortent d'une application ou d'un serveur.

Comment les attaquants exploitent-ils une protection insuffisante de la couche transport ?

Une protection insuffisante de la couche transport peut permettre des attaques en deux points de votre flux de données. Le point le plus couramment exploité se situe entre un utilisateur et le serveur d'application. Si des informations sont envoyées en clair, ou avec un faible cryptage, les pirates pourront surveiller, voler et éventuellement modifier ces informations. Les pirates peuvent ainsi voler la carte de crédit d'un utilisateur, ses identifiants de connexion ou tout autre élément envoyé au serveur d'application. Même si le serveur lui-même est sécurisé, un pirate informatique surveillant le canal non sécurisé entre le serveur et les utilisateurs pourrait obtenir un accès presque illimité à de nombreuses informations.

Le deuxième point qui n'est souvent pas protégé est la couche de transport entre une application et le reste du réseau. Par exemple, un serveur d'application peut traiter des commandes d'achats en ligne et les envoyer ensuite à un système d'exécution, ou des données peuvent simplement être transférées vers une base de données pour y être stockées. Si ces canaux internes ne sont pas protégés, les utilisateurs internes pourraient être en mesure de voir ces informations.

S'il est agréable de croire que tous les utilisateurs internes sont de bonnes personnes, il n'en reste pas moins que les menaces internes sont en augmentation dans de nombreux secteurs d'activité. Des initiés ont été surpris en train d'accepter des pots-de-vin en échange de la collecte d'informations sensibles pour des attaquants ou des concurrents. Et avoir accès à des milliers de cartes de crédit valides peut être tout simplement trop tentant pour certaines personnes.

En termes de techniques d'attaque, il n'est pas très difficile d'intercepter des communications non protégées. Même les pirates de bas niveau savent comment effectuer des attaques de type "man-in-the-middle" contre des flux de données non chiffrés. S'ils ne le savent pas, il existe des vidéos en ligne qui leur permettent de se former en moins d'une demi-heure.

Pourquoi les vulnérabilités liées à une protection insuffisante de la couche transport sont-elles si dangereuses ?

Une protection insuffisante ou inexistante des couches de transport est dangereuse car elle permet aux pirates de recueillir très facilement des informations sensibles. Ils n'ont pas besoin de s'introduire dans votre serveur d'applications ou de pirater votre réseau. Il leur suffit de mettre en place une attaque de type "man in the middle" et de lire tout ce que les utilisateurs envoient à un serveur. Il peut s'agir de noms d'utilisateur et de mots de passe qui peuvent être utilisés pour contourner la sécurité à l'avenir en utilisant des informations d'identification valides. Selon l'application, il peut également s'agir d'informations relatives aux cartes de crédit ou d'autres données personnelles concernant les utilisateurs.

Il est important de noter que tous ces espionnages ont lieu en dehors de votre réseau. Si vous utilisez des canaux de transport non sécurisés, il n'y a aucun moyen de savoir si quelqu'un capture ces informations. Normalement, le premier signe est lorsque de nombreux utilisateurs commencent à signaler des comptes compromis ou des achats par carte de crédit, et le facteur commun est que votre application " n'est pas un bon endroit où se trouver ". Les pirates peuvent également modifier les informations une fois qu'ils les ont, en changeant l'adresse de livraison par exemple, ou même en insérant des scripts malveillants dans la réponse du serveur avant de la transmettre aux utilisateurs.

Au niveau du backend, le fait de ne pas sécuriser la couche de transport expose les données à des initiés. Il est probablement beaucoup moins probable qu'un initié espionne la couche de transport que des pirates de l'extérieur qui font la même chose. Mais c'est aussi plus dangereux si cela se produit, parce que la menace interne pourra voir non seulement les données de l'utilisateur, mais aussi toute information propriétaire ajoutée par le serveur d'application avant d'envoyer ces paquets.

Élimination des vulnérabilités liées à une protection insuffisante de la couche transport

Aussi dangereuse que puisse être une protection insuffisante de la couche de transport, il n'est pas incroyablement difficile de sécuriser correctement tous vos canaux de transport. Cela commence par l'infrastructure dorsale. Celle-ci doit être exclusivement HTTPS, veillez à ne pas mélanger HTTPS et HTTP sur un site. Enfin, maintenez un certificat SSL valide avec une taille de clé minimale de 2048 bits tout en forçant tous les utilisateurs à interagir avec des navigateurs sécurisés avec HTTP Strict Transport Security (HSTS).

Une fois l'infrastructure en place, les développeurs doivent utiliser un protocole solide pour protéger la couche de transport. L'idéal est d'utiliser TLS 1.2, bien que TLS 1.1 et 1.0 soient également acceptables en cas d'absolue nécessité. Une fois ce protocole en place, les protocoles faibles comme SSLv2 doivent être complètement désactivés et ne jamais être pris en charge.

Il convient également de veiller à ce que les algorithmes de chiffrement soient suffisamment puissants au niveau du backend. Idéalement, la taille minimale de la clé de session devrait être de 128 bits. Comme pour les protocoles, la prise en charge d'algorithmes cryptographiques faibles tels que DES et RC4-40 doit être désactivée. Enfin, ne considérez pas une application comme réellement sûre tant que le serveur lui-même et tous les chemins de données qui y mènent et qui en partent ne sont pas suffisamment protégés.

Plus d'informations sur les vulnérabilités de la protection de la couche de transport insuffisante

Pour en savoir plus, vous pouvez consulter le guide de l'OWASP sur la protection des couches de transport. Vous pouvez également mettre à l'épreuve vos nouvelles connaissances en matière de défense grâce à la démo gratuite de la plateforme Secure Code Warrior , qui forme les équipes de cybersécurité à devenir les meilleurs cyber-guerriers. Pour en savoir plus sur la manière de vaincre cette vulnérabilité et d'autres menaces, visitez le blogSecure Code Warrior .

Accès aux ressources

Cliquez sur le lien ci-dessous et téléchargez le PDF de cette ressource.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Voir le rapportRéservez une démonstration
Partager sur :
Vous souhaitez en savoir plus ?

Partager sur :
Auteur
Jaap Karan Singh
Publié le 27 juin 2019

Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Partager sur :

Même si vous avez complètement sécurisé un serveur d'application et les systèmes dorsaux qu'il utilise, les communications peuvent toujours être vulnérables à l'espionnage si la protection de la couche transport est insuffisante. Dans le monde physique, la raison pour laquelle les devises fortes sont déplacées à l'aide de véhicules blindés est qu'elles sont protégées pendant leur transit. La sécurité d'un magasin ou d'une banque importe peu si l'argent qu'il génère est chargé dans une voiturette de golf pour être transporté à l'autre bout de la ville.

Il en va de même pour les couches de transport dans le domaine cybernétique. Même si une application est sécurisée, il existe toujours une vulnérabilité critique si les informations qui lui parviennent sont envoyées sans protection. Certaines applications présentent une deuxième vulnérabilité si elles envoient en outre des informations à d'autres serveurs ou à une base de données. Ces informations peuvent être exposées à des initiés qui n'ont rien à faire pour espionner ces transactions.

Pour protéger pleinement les utilisateurs et les données, il faut protéger la couche de transport. Ce n'est qu'à cette condition que vous pourrez sécuriser l'ensemble d'une transaction de bout en bout.

Dans cet épisode, vous apprendrez

  • Comment les pirates peuvent exploiter une protection insuffisante de la couche transport
  • Pourquoi le fait de ne pas protéger la couche transport est si dangereux
  • Ce qui peut être fait pour sécuriser le transport de toutes les données qui entrent et sortent d'une application ou d'un serveur.

Comment les attaquants exploitent-ils une protection insuffisante de la couche transport ?

Une protection insuffisante de la couche transport peut permettre des attaques en deux points de votre flux de données. Le point le plus couramment exploité se situe entre un utilisateur et le serveur d'application. Si des informations sont envoyées en clair, ou avec un faible cryptage, les pirates pourront surveiller, voler et éventuellement modifier ces informations. Les pirates peuvent ainsi voler la carte de crédit d'un utilisateur, ses identifiants de connexion ou tout autre élément envoyé au serveur d'application. Même si le serveur lui-même est sécurisé, un pirate informatique surveillant le canal non sécurisé entre le serveur et les utilisateurs pourrait obtenir un accès presque illimité à de nombreuses informations.

Le deuxième point qui n'est souvent pas protégé est la couche de transport entre une application et le reste du réseau. Par exemple, un serveur d'application peut traiter des commandes d'achats en ligne et les envoyer ensuite à un système d'exécution, ou des données peuvent simplement être transférées vers une base de données pour y être stockées. Si ces canaux internes ne sont pas protégés, les utilisateurs internes pourraient être en mesure de voir ces informations.

S'il est agréable de croire que tous les utilisateurs internes sont de bonnes personnes, il n'en reste pas moins que les menaces internes sont en augmentation dans de nombreux secteurs d'activité. Des initiés ont été surpris en train d'accepter des pots-de-vin en échange de la collecte d'informations sensibles pour des attaquants ou des concurrents. Et avoir accès à des milliers de cartes de crédit valides peut être tout simplement trop tentant pour certaines personnes.

En termes de techniques d'attaque, il n'est pas très difficile d'intercepter des communications non protégées. Même les pirates de bas niveau savent comment effectuer des attaques de type "man-in-the-middle" contre des flux de données non chiffrés. S'ils ne le savent pas, il existe des vidéos en ligne qui leur permettent de se former en moins d'une demi-heure.

Pourquoi les vulnérabilités liées à une protection insuffisante de la couche transport sont-elles si dangereuses ?

Une protection insuffisante ou inexistante des couches de transport est dangereuse car elle permet aux pirates de recueillir très facilement des informations sensibles. Ils n'ont pas besoin de s'introduire dans votre serveur d'applications ou de pirater votre réseau. Il leur suffit de mettre en place une attaque de type "man in the middle" et de lire tout ce que les utilisateurs envoient à un serveur. Il peut s'agir de noms d'utilisateur et de mots de passe qui peuvent être utilisés pour contourner la sécurité à l'avenir en utilisant des informations d'identification valides. Selon l'application, il peut également s'agir d'informations relatives aux cartes de crédit ou d'autres données personnelles concernant les utilisateurs.

Il est important de noter que tous ces espionnages ont lieu en dehors de votre réseau. Si vous utilisez des canaux de transport non sécurisés, il n'y a aucun moyen de savoir si quelqu'un capture ces informations. Normalement, le premier signe est lorsque de nombreux utilisateurs commencent à signaler des comptes compromis ou des achats par carte de crédit, et le facteur commun est que votre application " n'est pas un bon endroit où se trouver ". Les pirates peuvent également modifier les informations une fois qu'ils les ont, en changeant l'adresse de livraison par exemple, ou même en insérant des scripts malveillants dans la réponse du serveur avant de la transmettre aux utilisateurs.

Au niveau du backend, le fait de ne pas sécuriser la couche de transport expose les données à des initiés. Il est probablement beaucoup moins probable qu'un initié espionne la couche de transport que des pirates de l'extérieur qui font la même chose. Mais c'est aussi plus dangereux si cela se produit, parce que la menace interne pourra voir non seulement les données de l'utilisateur, mais aussi toute information propriétaire ajoutée par le serveur d'application avant d'envoyer ces paquets.

Élimination des vulnérabilités liées à une protection insuffisante de la couche transport

Aussi dangereuse que puisse être une protection insuffisante de la couche de transport, il n'est pas incroyablement difficile de sécuriser correctement tous vos canaux de transport. Cela commence par l'infrastructure dorsale. Celle-ci doit être exclusivement HTTPS, veillez à ne pas mélanger HTTPS et HTTP sur un site. Enfin, maintenez un certificat SSL valide avec une taille de clé minimale de 2048 bits tout en forçant tous les utilisateurs à interagir avec des navigateurs sécurisés avec HTTP Strict Transport Security (HSTS).

Une fois l'infrastructure en place, les développeurs doivent utiliser un protocole solide pour protéger la couche de transport. L'idéal est d'utiliser TLS 1.2, bien que TLS 1.1 et 1.0 soient également acceptables en cas d'absolue nécessité. Une fois ce protocole en place, les protocoles faibles comme SSLv2 doivent être complètement désactivés et ne jamais être pris en charge.

Il convient également de veiller à ce que les algorithmes de chiffrement soient suffisamment puissants au niveau du backend. Idéalement, la taille minimale de la clé de session devrait être de 128 bits. Comme pour les protocoles, la prise en charge d'algorithmes cryptographiques faibles tels que DES et RC4-40 doit être désactivée. Enfin, ne considérez pas une application comme réellement sûre tant que le serveur lui-même et tous les chemins de données qui y mènent et qui en partent ne sont pas suffisamment protégés.

Plus d'informations sur les vulnérabilités de la protection de la couche de transport insuffisante

Pour en savoir plus, vous pouvez consulter le guide de l'OWASP sur la protection des couches de transport. Vous pouvez également mettre à l'épreuve vos nouvelles connaissances en matière de défense grâce à la démo gratuite de la plateforme Secure Code Warrior , qui forme les équipes de cybersécurité à devenir les meilleurs cyber-guerriers. Pour en savoir plus sur la manière de vaincre cette vulnérabilité et d'autres menaces, visitez le blogSecure Code Warrior .

Table des matières

Voir la ressource
Vous souhaitez en savoir plus ?

Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Réservez une démonstrationTélécharger
Partager sur :
Centre de ressources

Ressources pour vous aider à démarrer

Plus d'articles
Centre de ressources

Ressources pour vous aider à démarrer

Plus d'articles