Présentation du développement de la sécurité de myViewBoard

Revision as of 11:33, 3 September 2021 by Marina.Maternovskaya (talk | contribs)

(diff) ← Older revision | Approved revision (diff) | Latest revision (diff) | Newer revision → (diff)

Ce document est fourni en réponse à une requête faite à ViewSonic à propos du développement de la sécurité et de l'architecture de déploiement pour le projet myViewBoard. La sécurité et la confidentialité sont des éléments essentiels de myViewBoard TM pour la conception, le développement et la prestation de ce service.

Nous allons décrire au sein de ce document comment nous avons intégré Github, Docker et Circle CI, et comment nous déployons une architecture sécurisée et évolutive sur la plateforme Amazon Web Services Cloud, un protocole WebRTC pour sécuriser notre service de diffusion, et comment PGP (Pretty GoodPrivacy) est intégré au sein de nos partages de fichiers et nos cas de transmissions. Cette approche est conçue pour équilibrer les besoins des clients en matière de sécurité et de confidentialité avec les informations publiques concernant les technologies et les solutions tierces que myViewboard intègre.



Cycle de développement sécurisé

Le cycle de développement de la sécurité est un ensemble d'activités et d'étapes essentielles qui mène à des résultats de haute sécurité au sein du développement de produits ou de services. Ce cycle peut être divisé en 4 sections différentes : Architecture et Conception, Implémentation, Validation et Sortie. Une révision est menée lorsque chaque étape est terminée. Vous trouverez ci-dessous les activités à prendre en compte pour chaque étape du processus du cycle de développement de la sécurité :


 

Intégration continue et teste avec les services Cloud

 


Service de diffusion sécurisée

WebRTC est un standard créé par le World Wide Web Consortium (W3C) et Internet Engineering Task Force (IETF) pour surmonter les obstacles liés à l'adoption des pratiques. La cadre de travail de standard ouvert élimine la nécessité de faire appel à d'autres logiciels clients, plug-ins ou téléchargements. A la place, voix interactive, vidéo et fonction de partage de données sont délivrées comme un composant web standard. Des développeurs web ordinaires, qui ne sont pas forcément initiés à la téléphonie, peuvent créer des applications de communications multimédia en utilisant simplement les API HTML et JavaScript. Les utilisateurs finaux peuvent alors bénéficier d'une meilleure expérience sans interruption des téléchargements, d'un fonctionnement cohérent entre les appareils et les navigateurs, et de capacités de communication immersives.


Les communications basées sur un navigateur suppriment coûts et complexité

En supprimant les dépendances à des vendeurs ou des plateformes, WebRTC transforme la communication. Jusqu'à présent, les entreprises avaient été limitées par des téléphones de bureau coûteux et par les clients de logiciels propriétaires. Tandis que les vendeurs soutiennent des standards ouverts tels que SIP (Session Initiation Protocol), beaucoup d'entre eux maximisent les marges des produits en fournissant une assistance uniquement pour les points de terminaisons propriétaires et pour les clients de logiciels sous licence séparée. De plus en plus de travailleurs utilisent leur smartphone comme téléphone principal, et il est désormais difficile de justifier l'achat de téléphones de bureau onéreux. Ce dont les entreprises ont besoin, c'est un moyen concret pour utiliser smartphones et tablettes comme une alternative fiable aux téléphones traditionnels. Les solutions traditionnelles pour étendre les services de communication d'entreprise aux appareils mobiles sont coûteuses et inefficaces.

La plupart des vendeurs de CU (Communications unifiées) proposent des clients logiciels spécifiques au système d'exploitation qui demandent du temps et de l'argent pour être qualifiés, déployés et soutenus. WebRTC surmonte ces limitations en proposant des communications en temps réel directement sur le navigateur. Cela élimine les usages spécifiques et les clients avec des OS spécifiques. Avec WebRTC, les départements IT peuvent accélérer le temps de mise en marché d'un produit et éviter des coûts en prolongeant les services de communication à tout appareil doté d'un navigateur web (smartphone, tablette, PC...).

Les utilisateurs peuvent accéder à un service WebRTC depuis un réseau internet (public ou privé), le Wi-Fi, une bande passante mobile, ou un câble LAN. WebRTC réduit les dépenses initiales des IT en contenant les frais de licence client, les efforts de qualification et les coûts des déploiements. Il n'y a pas de clients propriétaires à acheter, déployer, mettre à jour ou à prendre en charge. L'application client fonctionne sur les navigateurs web standards et gratuits. Les coûts de qualification, de déploiement et de maintenance sont compris sur le site web. De nouvelles options et solutions sont implémentées directement sur la page web.

Source [1]

Options de la sécurité intégrée WebRTC

Par principe, télécharger un logiciel depuis Internet comporte le risque inhérent que votre PC devienne infecté par un virus, un logiciel malveillant, un logiciel espion ou bien d'autres "bugs" qui menacent la sécurité de vos données. De sorte, la solution principale pour combattre les virus est d'installer des pare-feux et des logiciels anti-malware qui travaillent à la défense de votre ordinateur contre toute menace potentielle.

Cependant avec WebRTC, vous n'avez pas à vous inquiéter de tout cela puisque, comme WebRTC fonctionne de navigateur à navigateur, vous n'avez pas à télécharger de logiciel ou de plugin pour programmer une visioconférence ou un appel VOIP. Toute la sécurité dont vous avez besoin est déjà incluse au sein de votre navigateur et de la plateforme WebRTC. La plateforme WebRTC contient en partie ces options suivantes de sécurité intégrée :


  • Chiffrement de bout en bout entre les pairs
  • Datagram Transport Layer Security (DTLS)
  • Secure Real-Time Protocol (SRTP)


Chiffrement de bout en bout

Le chiffrement est intégré comme option permanente de WebRTC et aborde efficacement toutes les préoccupations sur la sécurité. Quelque soit le serveur ou le navigateur compatible que vous utilisez, la communication pair-à-pair est sécurisée grâce aux options avancées de chiffrement de bout en bout du protocole WebRTC.


Data Transport Layer Security (DTLS)

Les données qui sont transférées à travers le système WebRTC sont chiffrées grâce à la méthode Datagram Transport Layer Security (en français : sécurité de la couche transport en datagrammes). Ce chiffrement est déjà intégré dans les navigateurs compatibles (Firefox, Chrome, Opera), ce qui empêche les écoutes clandestines et la manipulation des données.


Secure Real-Time Protocol (SRTP)

En plus du chiffrement DTLS, WebRTC chiffre aussi les données à travers le Secure Real-Time Protocol, qui protège les communications IP des attaques afin que vos données vidéos et audios restent confidentielles.


Serveur de signalisation

 


Cas par défaut WebRTC - P2P

Voici un vrai chiffrement de bout en bout (E2E)

 


Cas par défaut WebRTC - TURN

Un serveur TURN NE met PAS fin au chiffrement. Dans ce cas, c'est un vrai chiffrement de bout en bout (E2E)

 


Cas par défaut WebRTC - Chiffrement

 


Annexe

Changer pour l'environnement du système :

Ce document explique uniquement les détails du produit ou du projet évoqué ci-dessus. Cette section est conçue pour fournir les détails requis sur la manière dont le produit interagit avec l'environnement du système en question.

Ce produit contient des composants logiciel qui sont installés selon les répertoires des standards utilisateurs. Toute exception à cela est listée ci-dessous :

  • Crossmatch Fingerprint SDK
  • SQLCipher


Ce composant logiciel fait des ajouts ou des modifications aux attributs systèmes et configurations suivants (entrées de registres, paramètres des pare-feux, certificats électroniques, des pilotes en mode noyau, des plug-ins pour le navigateur):


  • Clé de registre :
HKEY_LOCAL_MACHINE\SOFTWARE\DigitalPersona\Products\U.are.U RTE 


Services : Les service suivants sont des utilisations de la cryptographie :

  • Hashing Algorithms : SHA25
  • Public-Key Algorithms : RSA-204
  • Dispositifs SSL : TLS 1.2


La liste ci-dessous contient tous les composants tierces utilisés dans ce produit :

  • WebRTC
  • mqtt
- MQTT 3.1 and 3.1.1 compliant
- QoS 0 and QoS 1