Un guide des meilleures pratiques de sécurité pour les équipes distantes
Publié: 2022-03-11Chaque fois que je dis à mes amis que je travaille à distance pour un client que je n'ai jamais rencontré, ils me demandent : Est-ce sécurisé pour vous de travailler à distance ? Ma réponse est un "Oui... mais cela dépend de la façon dont vous créez votre politique de sécurité pour les télétravailleurs".
Je vis au Pakistan où je produis du code qui a de la valeur pour des clients de l'autre côté de la planète. Mes clients ne m'ont jamais serré la main ni vu où je travaillais. Et pourtant, on attend de moi que je m'assure que les secrets et le code des clients restent protégés. Dans un monde où les membres de votre équipe ne connaissent ni votre visage ni votre voix, comment évitez-vous les failles de sécurité ? La réponse est : En faisant très attention.
Il n'y a pas si longtemps, nous pensions que pour garantir les performances et la sécurité de nos applications, nous devions les exécuter dans notre centre de données privé. Puis le cloud est apparu et nous avons profité des avantages en termes de coût et de performances de l'exécution de nos applications sur une plate-forme évolutive à la demande sans maintenir une flotte de serveurs dans une salle.
Permettez-moi de vous confier un secret bien connu :
C'est juste l'ordinateur de quelqu'un d'autre.
Désormais, des entreprises comme Uber 1 et Stripe 2 stockent et traitent en temps réel les informations de localisation des clients, les cartes de crédit et les paiements sur le serveur d'un fournisseur de cloud, tout en respectant des normes de sécurité strictes telles que la conformité PCI. Pour ce faire, ils adoptent des politiques strictes qui garantissent la sécurité de leurs données de production.
Si les entreprises peuvent garantir la sécurité de l'ensemble de leur environnement de production malgré l'exécution en dehors de leurs centres de données privés, nous pouvons certainement assurer la sécurité de votre développement en utilisant des équipes de développement à distance. Après tout, des entreprises entières sont capables de fonctionner entièrement à distance. Toptal est une entreprise uniquement à distance, et nous recrutons.
Qu'est-ce que la "sécurité" et comment puis-je "être en sécurité"
Tout au long de cet article, lorsque je parle de « sécurité », je veux dire la sécurité de l'information .
Le terme « sécurité de l'information » signifie la protection des informations et des systèmes d'information contre l'accès, l'utilisation, la divulgation, la perturbation, la modification ou la destruction non autorisés. – 44 Code américain § 3542
La sécurité parfaite n'existe pas , mais "être en sécurité" signifie que vous avez pris des mesures raisonnables pour faire respecter la sécurité des informations.
Plus précisément, lorsque vous dites « mon environnement de travail est sécurisé », vous voulez dire que vous avez pris des mesures raisonnables pour protéger les données, le code ou d'autres informations confidentielles dont vous avez la garde, et vous êtes assuré de leur intégrité. Vous avez également pris des mesures pour vous assurer que vos privilèges d'accès aux systèmes d'information sensibles ne seront pas utilisés par vous-même, ou par une personne non autorisée, d'une manière préjudiciable aux objectifs de l'organisation qui détient ces informations et ces systèmes.
Les équipes distantes ont une surface d'attaque beaucoup plus grande que les équipes centralisées. Contrairement à une équipe centralisée où vous pouvez verrouiller physiquement des informations confidentielles derrière des pare-feu et des postes de travail d'entreprise, en tant que travailleur à distance, vous êtes encouragé ou même obligé d'apporter votre propre appareil (BYOD). De plus, comme la plupart de vos communications se font en ligne, vous êtes beaucoup plus sensible à l'ingénierie sociale et au vol d'identité. Cependant, avec le bon ensemble de politiques en place, vous pouvez certainement minimiser le risque de violation.
Il n'y a pas de solution miracle pour la sécurité. Souvent, il y a un compromis entre les nuances de sécurité et de commodité, et c'est à vous de déterminer jusqu'où vous voulez pousser vos pratiques de sécurité, mais rappelez-vous que votre équipe n'est aussi sûre que son membre le plus faible. Jetons un coup d'œil à certaines attaques de sécurité courantes, à des stratégies de défense, et discutons enfin d'un exemple de politique d'agent de sécurité à distance.
Les trois types d'attaques contradictoires les plus courants
Vous n'êtes pas préparé si vous ne savez pas à quoi vous allez faire face. Un adversaire peut utiliser de nombreuses stratégies dans son attaque, mais la plupart se répartissent en trois catégories. Bien que cette liste ne soit pas exhaustive, voici trois types courants de vecteurs d'attaque que les pirates malveillants peuvent utiliser :
- Ingénierie sociale
- Hameçonnage
- Infections par des logiciels malveillants
Ingénierie sociale
Également considérée comme du piratage humain, l'ingénierie sociale est la pratique consistant à manipuler les gens pour qu'ils agissent d'une manière qui n'est pas dans leur meilleur intérêt ; cela peut inclure la divulgation d'informations confidentielles.
Les attaques d'ingénierie sociale peuvent soit essayer d'exploiter votre compassion pour tenter de vous faire contourner les bonnes pratiques, soit créer un sentiment d'urgence où elles vous font contourner les meilleures pratiques en craignant une action négative contre vous si vous ne les respectez pas.
Voici des exemples d'ingénierie sociale :
- Une femme appelle un opérateur de téléphonie mobile et demande à l'agent d'assistance de modifier le compte de quelqu'un tandis qu'un clip YouTube d'un bébé qui pleure passe en arrière-plan.
- Un attaquant envoie un e-mail à un PDG via l'adresse e-mail du directeur financier et autorise un transfert de fonds de 1,8 million de dollars.
Hameçonnage
Le phishing est la méthode la plus courante pour voler vos identifiants. Imaginez un site Web qui ressemble à Facebook, où vous vous connectez en pensant que c'est la vraie chose. L'hameçonnage se produit lorsqu'un attaquant crée un site Web qui semble légitime mais qui ne l'est pas.
Pouvez-vous repérer le faux facebook ? Indice : C'est celui qui n'est pas sur Facebook.com.
Parfois, les pirates peuvent empoisonner votre Internet et injecter leur site Web sur le domaine Facebook, c'est ce qu'on appelle une attaque Man in The Middle, mais ne vous inquiétez pas, votre navigateur peut vous en avertir.
Le spear phishing est une autre forme de phishing où la page de phishing peut être personnalisée pour vous ou votre organisation. Cela vous rend plus susceptible de tomber dans le panneau, en particulier lorsqu'il est combiné à l'ingénierie sociale.
Je vais vous raconter une histoire : lorsque j'étais à l'école, quelqu'un qui avait récemment entendu parler de l'hameçonnage a créé un faux site Web Facebook et changé les pages d'accueil du laboratoire informatique en sa création. La prochaine chose qu'il savait, cette personne avait trois cents mots de passe de compte Facebook. Cette attaque ciblait spécifiquement mon école et s'est avérée être une attaque de spear phishing réussie.
Et dire que tous ces mots de passe seraient restés en sécurité si seulement quelqu'un avait pris la peine de regarder la barre d'adresse.
Infection par des logiciels malveillants
Il existe des centaines de types de logiciels malveillants différents. Certains sont inoffensifs ou simplement ennuyeux, mais certains peuvent être très dangereux. Les types de logiciels malveillants les plus importants à surveiller sont :
- Spyware : installe et enregistre silencieusement vos frappes, écran, audio et vidéo.
- Outils d'administration à distance (RAT) : permettent un contrôle complet sur votre ordinateur.
- Ransomware : chiffre tous vos fichiers importants et vous fait payer la clé de déchiffrement.
Pour vous inciter intentionnellement à installer des logiciels malveillants personnalisés sur votre ordinateur, les attaquants utilisent généralement l'ingénierie sociale :
- L'attaquant plante des clés USB « perdues » autour du parking de l'entreprise pour récupérer les identifiants de connexion des employés.
- Un homme qui a renversé du café sur son CV demande à la réceptionniste de lui imprimer une copie de quelque chose parce qu'il a un entretien, provoquant ainsi l'infection d'un ordinateur de l'entreprise par une charge utile malveillante dans une clé USB. (Exemple tiré de The Art of Human Hacking).
Sept stratégies de cyberdéfense dont vous avez besoin en ce moment
Nous avons discuté des méthodes d'attaque contradictoires les plus courantes, mais comment en rester à l'abri ?
Stratégie n° 1 : bonne gestion des mots de passe
Je déteste les mots de passe. Voilà, je l'ai dit. Je crois fermement que la combinaison nom d'utilisateur et mot de passe est la forme d'authentification la plus faible qui existe. Un mot de passe n'est rien de plus qu'une courte chaîne de caractères générée par le pire générateur de nombres pseudo-aléatoires qui existe : l'esprit humain.
J'ai besoin d'un mot secret, hein ? Que diriez-vous de mon deuxième prénom et de mon année de naissance, personne ne pourra sûrement le deviner ! - Chaque humain jamais
Pire encore, pour des raisons de commodité, les gens ont tendance à réutiliser les mots de passe. Cela permet à quelqu'un d'utiliser le même mot de passe pour son identifiant bancaire et son WiFi domestique, tout en rendant probable que le mot de passe se termine par le nom de son groupe préféré . L'horreur!
Il y a des années, j'ai décidé de faire ce qui suit :
- Utiliser un gestionnaire de mots de passe
- Utilisez des phrases de passe fortes au lieu de mots de passe
Utiliser un gestionnaire de mots de passe
Quand j'ai dit qu'il y a un compromis entre les nuances de sécurité et de commodité, cela ne s'applique pas ici. Soit vous êtes en sécurité et utilisez un gestionnaire de mots de passe, soit vous ne l'êtes pas. Il n'y a pas de solution intermédiaire. Il est obligatoire que vous utilisiez un gestionnaire de mots de passe pour une bonne sécurité des mots de passe. Je vais t'expliquer.
- Tous vos mots de passe sont-ils uniques ?
- Si je découvre certains de vos mots de passe, le reste de vos mots de passe restera-t-il sécurisé ?
- Tous vos mots de passe ont-ils été créés en utilisant au moins 32 bits d'entropie ?
- Vos mots de passe sont-ils stockés uniquement sous forme cryptée ?
- Vous souvenez-vous parfaitement de chaque mot de passe que vous avez utilisé lors de votre inscription ?
- Êtes-vous positif pour une fuite de mot de passe sur ce site ?
Si vous avez répondu "non" à l'une des questions ci-dessus, vous avez besoin d'un gestionnaire de mots de passe. Un bon gestionnaire de mots de passe générera aléatoirement vos mots de passe pour vous et les stockera en toute sécurité. Peu importe le gestionnaire de mots de passe que vous utilisez, tant que vous en utilisez un !
J'utilise LastPass parce que j'aime la transparence de leurs rapports d'incidents, la possibilité de partager mes informations d'identification avec des amis et de révoquer le partage quand je le souhaite, et j'aime le fait que la synchronisation mobile fait partie de leur forfait gratuit.
J'utilise LastPass depuis des années et leur défi de sécurité me dit que je fais partie de leur top 1% des utilisateurs soucieux de la sécurité.
Des phrases de passe fortes au lieu de mots de passe
Cela peut sembler contre-intuitif puisque je vous ai demandé d'utiliser un gestionnaire de mots de passe ci-dessus, mais il y a des cas où les mots de passe sont inévitables : vous aurez besoin d'un mot de passe principal fort pour votre gestionnaire de mots de passe ou pour vous connecter à votre ordinateur. Dans ces cas, utilisez une phrase de passe sécurisée et mémorable avec une entropie élevée.
En parlant d'entropie, parlons-en un peu. Quelle est cette « entropie » dont je parle ?
L'entropie est un paramètre statistique qui mesure dans un certain sens, combien d'information est produite en moyenne pour chaque lettre d'un texte dans la langue. Si la langue est traduite en chiffres binaires (0 ou 1) de la manière la plus efficace, l'entropie H est le nombre moyen de chiffres binaires requis par lettre de la langue d'origine. – Claude Shanon
Ce n'est pas grave si cette citation était difficile à digérer. Fondamentalement, l'entropie d'un mot de passe, choisi au hasard dans un ensemble, est le nombre total d'éléments dans l'ensemble exprimé en base 2. Par exemple : Si vous avez un mot de passe de 4 caractères, qui ne peut contenir qu'un alphabet minuscule, l'entropie pour un mot de passe généré aléatoirement serait de 19 bits car :
- Il y a 26 éléments dans un alphabet minuscule
- Une chaîne de 4 caractères composée de ces lettres est
26^4
= 456 976 - 456 976 exprimé en base 2 est
log(456,976) / log(2)
= 19 bits (arrondi au bit le plus proche)
Le problème avec les mots de passe à haute entropie est qu'ils finissent par être difficiles à retenir, comme c05f$KVB#*6y
. Pour les rendre plus mémorables, et si au lieu d'utiliser des lettres simples, nous utilisions des mots entiers à la place ? Et utilisé un dictionnaire de mille mots ? Soudain, notre alphabet devient long de mille éléments, et nous pouvons atteindre la même entropie en 7 mots que nous aurions avec 11 caractères.
La différence maintenant est qu'au lieu d'utiliser un mot de passe , nous utilisons une phrase de passe , qui est beaucoup plus longue.
La bande dessinée XKCD suivante explique le mieux ce concept :
Le moyen le plus simple de générer une phrase de passe aléatoire sécurisée est d'aller ici.
Stratégie n° 2 : Utiliser l'authentification multifactorielle (MFA)
L'authentification à deux facteurs (2FA) ou la vérification en 2 étapes sont tous des noms pour la même chose. C'est l'une de ces choses auxquelles il faut s'habituer un peu, mais les avantages de sécurité de 2FA dépassent de loin les coûts et m'ont personnellement épargné deux fois des violations de compte !
L'idée derrière MFA est simple. Nous pouvons utiliser trois éléments pour vous authentifier :
- Quelque chose que tu sais (un secret)
- Quelque chose que vous avez (un jeton)
- Quelque chose que vous êtes (votre biologie)
En utiliser deux est plus sûr qu'en utiliser un seul.
La plupart des sites Web prennent en charge le premier facteur d'authentification en exigeant un mot de passe, mais un nombre croissant de services ont également commencé à prendre en charge le deuxième facteur. Le troisième facteur est généralement laissé de côté par les services Web car il nécessite un matériel spécialisé ; comme le capteur d'empreintes digitales de votre téléphone.
Si vous êtes administrateur d'une équipe, envisagez de créer une politique obligatoire pour que les utilisateurs aient une configuration 2FA. Cela garantit qu'un compromis de mot de passe n'entraînera pas un compromis de compte.
Il existe deux formes populaires de « quelque chose que vous avez » :
- Ton téléphone
- Une clé U2F
Utiliser votre téléphone pour 2FA
J'aimerais dire ceci dès le départ : n'utilisez pas de codes SMS pour 2FA. Il est de plus en plus courant que des personnes malveillantes détournent votre numéro de téléphone. L'histoire est presque toujours la même : quelqu'un a incité un opérateur social à transférer votre numéro de téléphone vers un autre opérateur. Je connais au moins une personne qui a été victime de cette attaque.
Au lieu de cela, utilisez des mots de passe à usage unique basés sur le temps (TOTP) également appelés la méthode "Google Authenticator". Cependant, au lieu d'utiliser Google Authenticator, je recommande d'utiliser Authy car il crypte et sauvegarde vos jetons 2FA sur le cloud. Vous pouvez ensuite restaurer vos jetons 2FA même si vous changez d'appareil… en fait, vous pouvez utiliser les mêmes jetons sur plusieurs appareils. C'est très pratique.
Utilisation d'une clé U2F pour 2FA
C'est la méthode 2FA la plus simple et la plus puissante. J'ai un Yubikey Neo que je peux utiliser avec mon téléphone et mon ordinateur. Pour prouver mon identité, je branche simplement mon jeton matériel et j'appuie sur un bouton. Mon jeton est unique et est un jeton physique ; Je peux le porter sur mon porte-clés ou dans mon portefeuille.
Stratégie n°3 : Vigilance constante
Peu importe à quel point vous pensez être en sécurité, une bonne dose de suspicion est une bonne chose. Méfiez-vous des personnes qui vous demandent de faire quelque chose qui sort de l'ordinaire. Avez-vous reçu un SMS de quelqu'un vous demandant de réinitialiser son mot de passe ? Attendez une minute et passez un appel vidéo avec eux. Demandez-leur de prouver leur identité. Personne ne peut vous reprocher d'être prudent.
Ce n'est pas de la paranoïa s'ils veulent vraiment vous avoir. – Harold Finch, personne d'intérêt
Ils sont vraiment là pour vous avoir. Parfois, il n'y a aucune raison pour qu'un utilisateur malveillant fasse ce qu'il fait, à part la volonté de le faire.
Un de mes amis a reçu un jour un message d'une vieille connaissance lui demandant s'il aimerait être son "contact de confiance" sur Facebook. Mon amie a accepté et a été invitée à répondre avec un code qu'elle recevrait sur son téléphone, que mon amie a rapidement donné… et c'est ainsi que mon amie a été organisée par ingénierie sociale pour lui donner le jeton de réinitialisation de son compte Gmail. Si mon amie avait été vigilante dès le début, elle n'aurait jamais perdu ses mails.
Stratégie n°4 : Concevoir des systèmes selon le principe du moindre privilège
Le principe du moindre privilège exige que dans une couche d'abstraction particulière d'un environnement informatique, chaque module (tel qu'un processus, un utilisateur ou un programme, selon le sujet) doit pouvoir accéder uniquement aux informations et aux ressources qui sont nécessaires pour son objectif légitime. - Wikipédia
Si un utilisateur, une application ou un service n'a pas besoin de certains privilèges, ne le lui donnez pas. Vous pouvez déduire de nombreuses règles de ce principe, mais je les garderai pour la section suivante sur les politiques de sécurité.
Laissez-moi vous raconter une histoire : je concevais autrefois une application qui accepterait les paiements Bitcoin des utilisateurs sur des adresses générées uniquement pour eux, puis les transmettrait à une adresse de stockage sécurisée centrale. Si vous n'êtes pas familier avec le fonctionnement de Bitcoin, voici une explication simplifiée : vous avez besoin d'une clé publique pour recevoir Bitcoin (comme un numéro de compte) et d'une clé privée correspondante pour le dépenser (comme un code PIN de compte). Les numéros de compte et les broches de Bitcoin sont liés de manière cryptographique et ne peuvent pas être modifiés.
J'avais plusieurs options pour concevoir ce système, mais j'ai décidé de prendre un itinéraire légèrement plus long. J'ai décidé que pour inviter l'utilisateur à payer, l'application n'avait pas besoin d'accéder aux clés privées. Ainsi, au lieu de concevoir un grand système qui recevrait et transmettrait les paiements Bitcoin, j'ai créé deux systèmes :
- Le système de réception : il recevait des Bitcoins des utilisateurs et était hébergé sur l'Internet public. Il ne contenait que les clés publiques des adresses.
- Un système de transfert : il s'agissait d'un système complètement indépendant et verrouillé dont le seul travail consistait à surveiller le réseau Bitcoin pour les transactions sur les adresses et à les transmettre à l'adresse sécurisée. Il contenait des clés publiques et privées pour les adresses.
Longtemps plus tard, après avoir cessé de maintenir l'application, le système de réception public a été piraté. Je l'ai rapidement fermé, mais l'attaquant n'a jamais réussi à voler le Bitcoin car le système public ne contenait aucune clé privée.
Stratégie n° 5 : Utiliser les meilleures pratiques de bon sens
Certaines pratiques n'ont pas besoin d'explication. Vous savez probablement qu'ils sont importants, mais je suis constamment surpris par le nombre de personnes (y compris moi-même) qui oublient d'actionner quelques interrupteurs. Je laisse cette liste de contrôle ici :
- Activez votre pare-feu
- Chiffrez votre disque
- Activer les sauvegardes chiffrées
- Utiliser les clés SSH
- Utiliser une connexion Internet sécurisée
Activez votre pare-feu
Un pare-feu contrôle le trafic réseau vers et depuis votre ordinateur en fonction d'un ensemble de règles. Il fonctionne en vous demandant explicitement si vous souhaitez autoriser de nouveaux programmes à accéder à votre réseau et constitue votre première ligne de défense.
Votre système d'exploitation est probablement équipé d'un pare-feu intégré. Assurez-vous qu'il est activé.
Chiffrez votre disque
Le chiffrement intégral du disque est cette capacité magique de rendre tout le contenu de votre disque inutile sans votre mot de passe. En cas de perte ou de vol de votre ordinateur portable, vous pouvez être assuré que personne ne pourra accéder à vos données. L'activer peut être aussi simple que d'activer FileVault sur un Mac.
Les téléphones cellulaires modernes ont également un cryptage complet du disque activé par défaut.
Chiffrez vos sauvegardes
Le matériel tombe en panne, c'est une réalité. Votre machine échouera un jour, ou un virus infectera votre PC, ou (frisson) un virus rançongiciel prendra le contrôle de votre PC. Mais en tant que personne pragmatique, vous avez probablement déjà une configuration de flux de sauvegarde, j'en suis sûr… n'est-ce pas ?
Cependant, même avec vos sauvegardes, vous devez rester vigilant. Assurez-vous que vos sauvegardes sont cryptées afin que même en cas de perte ou de vol, vous puissiez être assuré que vous avez pris des mesures raisonnables pour protéger la sécurité des données qui vous ont été confiées.
Si vous avez un Mac, l'application Time Machine sur votre Mac crypte automatiquement les sauvegardes.
Utiliser les clés SSH
Si vous retirez quoi que ce soit de cet article, arrêtez d'utiliser des mots de passe pour vous connecter en SSH aux machines. Les mots de passe sont difficiles à partager, et s'ils sont divulgués, toute votre machine est compromise. Au lieu de cela, créez une clé SSH simplement en exécutant ssh-keygen
.
Pour vous connecter à une machine distante, copiez simplement le contenu de votre ~/.ssh/id_rsa.pub
vers ~/.ssh/authorized_keys
sur la machine distante. Vous devrez peut-être redémarrer le service SSH sur la machine distante, mais c'est tout.
Ajoutez les clés SSH de toute votre équipe à la machine distante et personne n'aura plus jamais à saisir de mot de passe. La révocation de la clé d'un membre de l'équipe est aussi simple que de retirer la clé de la machine distante.
Utiliser une connexion Internet sécurisée
Lorsque vous partagez une connexion Internet avec quelqu'un, vous partagez plus que votre bande passante. Selon la configuration des sites Web et de votre internet, ils peuvent au moins détecter les sites Web que vous visitez, et au pire lire toutes les informations que vous transmettez, y compris les mots de passe, les messages ou les e-mails.
Ceci est très simple à activer et extrêmement facile à gâcher également. Prenez des précautions raisonnables pour vous assurer que votre connexion est privée. Assurez-vous qu'aucune personne non autorisée n'a accès à votre connexion Internet.
Utilisez WPA2 pour protéger par mot de passe votre propre WiFi personnel, et si vous travaillez depuis le café local (ou n'importe quel WiFi public), supposez que vous êtes surveillé et utilisez un proxy VPN.
J'hésite à utiliser des VPN basés sur un abonnement, d'autant plus que lancer le vôtre est si simple. Utilisez cette solution VPN à une ligne pour héberger la vôtre.
Stratégie n° 6 : traitez les secrets avec soin
Les secrets ne sont pas destinés à être divulgués. C'est pourquoi on les appelle des secrets . Malgré cela, combien de fois vous êtes-vous rendu coupable d'avoir envoyé le mot de passe à la base de données de production PostgreSQL via Facebook Messenger ? Assurez-vous de toujours :
- Crypter les secrets en transit
- Faites-les tourner souvent
Crypter les secrets en transit
Si vous devez partager des secrets via des canaux tels que le chat, assurez-vous qu'ils sont cryptés. À titre d'exercice, visitez votre client de chat fréquemment utilisé et le plus ancien. Il peut s'agir de messages Facebook ou Whatsapp. Indépendamment de ce que c'est, ouvrez et recherchez l'expression "mot de passe" dans vos messages.
Si ces secrets avaient été cryptés, ils ne seraient pas accessibles à toute personne ayant accès à vos messages.
Faites souvent tourner les secrets
Plus un secret existe depuis longtemps ou plus il a été partagé, plus il est probable qu'il ait été compromis. Il est considéré comme une bonne pratique d'alterner les secrets et les mots de passe après un certain laps de temps.
Stratégie n° 7 : Établir des identités cryptographiques
C'est certainement une stratégie avancée, mais personnellement, je ne comprends pas pourquoi ce n'est pas une pratique répandue. Considérez ceci : votre collègue pense que vous avez été compromis. Comment font-ils passer un message au vrai vous ? Si quelqu'un sur Internet doit partager des informations importantes sur la vulnérabilité, comment peut-il l'envoyer en toute sécurité ? Comment vous assurez-vous que vos employés partagent des informations en toute sécurité en transit ?
Mon exemple préféré est le profil de base de clés de Coinbase, où ils signent cryptographiquement les clés PGP de leurs employés. Ils sont allés plus loin et ont donné à leur service de conformité une clé PGP. Sérieusement, Coinbase, excellent travail !
Pour moi, personnellement, dans le cas où quelqu'un aurait un doute raisonnable que mon identité en ligne a été compromise, il suffit de me demander de signer un message en utilisant la clé PGP disponible sur mon profil keybase. Je suis la seule personne ayant accès à cette clé PGP, et j'ai pris des précautions raisonnables pour m'assurer que cette clé reste sécurisée même si mes autres identités sont compromises.
En cas de doute sur l'authenticité d'un message, demandez-moi de le signer. Si vous avez besoin de m'envoyer un secret, cryptez-le avec ma clé publique.
Mettre en œuvre une politique de sécurité claire pour les travailleurs à distance
La politique de sécurité est une définition de ce que signifie être sécurisé pour un système, une organisation ou une autre entité. Pour une organisation, il aborde les contraintes de comportement de ses membres ainsi que les contraintes imposées aux adversaires par des mécanismes tels que les portes, les serrures, les clés et les murs. - Wikipédia
Une politique de sécurité est une règle ou un protocole obligatoire qui doit être suivi lors de l'exécution d'actions. Les stratégies ci-dessus sont utiles, mais pour les rendre plus faciles à suivre, donnez à votre équipe un ensemble de règles simples à suivre. Il est plus difficile de gâcher la sécurité lorsque votre équipe sait exactement quoi faire.
Voyons des exemples de politique de sécurité des télétravailleurs à mettre en place.
Politiques à mettre en place pour vos collaborateurs :
- Accords de non-divulgation et contrats : assurez- vous qu'aucun employé n'a accès à des ressources confidentielles sans une base juridique appropriée.
- Coordonnées d'urgence : notez les coordonnées complètes et d'urgence de votre employé au cas où le membre de votre équipe à distance ne répondrait plus.
- Accordez uniquement les privilèges essentiels : si le membre de votre équipe n'a pas besoin d'accéder à certaines zones pour exécuter sa fonction, ne lui accordez pas l'accès. Un membre de l'équipe commerciale n'a pas besoin d'accéder à votre référentiel de code.
- Gestionnaires de mots de passe : assurez-vous que vos employés ont accès à un gestionnaire de mots de passe
- Politiques d'authentification fortes
- Force minimale du mot de passe : Personnellement , je déteste les mots de passe et, pour les organisations où je suis administrateur, j'exige des mots de passe avec un minimum de cinquante caractères alphanumériques. Il est trivial d'adhérer à cette politique si vous utilisez un gestionnaire de mots de passe.
- Réinitialisations obligatoires des mots de passe : assurez- vous que les mots de passe de vos employés expirent fréquemment pour effectuer une rotation fréquente des secrets.
- Authentification à deux facteurs : utilisez 2FA partout
- Clés PGP
- Disques durs cryptés
- Sauvegardes chiffrées
Les employés partent, mais ils ne doivent pas emporter vos informations avec eux. Adaptez ces politiques pour conserver les données même après que vos employés quittent l'entreprise :
- Comptes de messagerie d'entreprise : donner à vos employés des comptes de messagerie sur votre propre domaine vous permet de désactiver et d'auditer leurs communications.
- Communications en temps réel : Même si le courrier électronique est formidable, votre équipe a parfois besoin de parler en temps réel. Assurez-vous que votre équipe dispose d'un canal Slack ou IRC centralisé. Cela vous donne la possibilité de désactiver ou d'auditer leurs communications selon les besoins.
- Référentiels de code centralisés : assurez-vous que tout le code de l'entreprise est stocké dans un référentiel de code de l'entreprise. Les plans de l'entreprise sur les offres SaaS publiques comme GitHub conviennent jusqu'à ce que vous ayez besoin d'un contrôle précis sur tout le code des employés. Dans ce dernier cas, envisagez d'obtenir votre propre instance GitLab.
Politiques pour protéger votre infrastructure :
- Maintenez les systèmes à jour : les vulnérabilités de sécurité sont découvertes et corrigées chaque jour, c'est votre travail de vous assurer que vous appliquez ces correctifs. Il n'y a rien de pire que de découvrir qu'une faille a été causée par une vulnérabilité qui a été corrigée il y a des semaines.
- Verrouillez les environnements de production et de staging : aucun employé ne doit avoir accès aux environnements de production ou de staging. Parfois, ils se trompent.
- Créez un flux CI/CD solide : vous souhaitez toujours déployer du « bon » code, et un processus CI/CD simple le garantit toujours.
- Protégez le référentiel béni : si vous disposez d'un processus CI/CD automatisé, assurez-vous que votre référentiel béni ne peut être modifié que par le chef de projet.
- Définissez un processus de révision : pour vous assurer qu'aucun code "mauvais" ne passe inaperçu, créez un processus de révision. Cela peut être aussi simple que d'exiger au moins un commentaire indépendant "Ça me va bien" (LGTM) avant de fusionner.
- Clés SSH : si votre application nécessite un accès SSH, assurez-vous qu'elle utilise des clés SSH au lieu de mots de passe.
- Envisagez d'abandonner le BYOD : l'équipe budgétaire pourrait penser que le BYOD est la meilleure innovation politique depuis le bureau sans papier, mais si vous pouvez vous le permettre, envisagez de fournir à votre équipe des machines d'entreprise sur lesquelles vous pouvez mettre en œuvre des politiques de sécurité rigoureuses.
- Sauvegardes cryptées : Vos données sont importantes.
Politiques lors de l'écriture de code :
- Aucun secret dans le code : en raison de la nature du contrôle de version, il peut être très difficile de supprimer des données lorsqu'elles sont ajoutées dans le code, où les clés secrètes sont très faciles à trouver.
- Bcrypt lors du stockage des mots de passe : lors de la conception d'un système d'authentification, utilisez bcrypt pour hacher et saler vos mots de passe au lieu de concevoir votre système, ou (avaler) de les stocker en texte brut.
- Filtrez les informations sensibles des journaux : qu'il s'agisse de votre poivre global, de la clé de signature de session de votre application ou de la tentative de connexion d'un utilisateur, assurez-vous qu'elles ne sont pas divulguées dans les fichiers journaux de votre système où toute personne ayant accès peut les lire.
- Accordez le moins de privilèges requis : si votre application n'a besoin que des privilèges
READ
, ne lui accordez pas les privilègesWRITE
. Respectez le principe du moindre privilège.
Créer un plan de réponse
Des failles de sécurité se produisent à l'occasion, et même s'il y aura beaucoup de temps pour apprendre lors d'un post-mortem, ce qui compte, c'est qu'il existe une voie claire pour sécuriser tous les actifs numériques.
Prenez le temps d'élaborer un plan d'urgence en cas de violation de la sécurité. Considérez vos actions dans les scénarios suivants :
- Vous perdez un appareil contenant des données sensibles.
- Votre infrastructure a peut-être été consultée par une partie non autorisée.
- Vous observez quelqu'un de votre équipe se comporter étrangement contrairement à lui-même.
- Une faille de sécurité est découverte.
Éléments à inclure dans votre plan d'intervention :
- Documentation diligente : activez l'enregistrement d'écran, configurez un wiki pour que votre équipe partage tout ce qu'elle rencontre.
- Confinement des violations : selon l'étendue de la violation, cela peut être aussi simple que de désactiver un compte utilisateur, de mettre un serveur hors ligne ou d'arrêter la production et de contacter vos utilisateurs.
- Établissez une communication interne : démarrez un canal Slack dédié ou trouvez un moyen pour quiconque de signaler ce qu'il rencontre.
- Apporter de l'aide : Appelez toutes les équipes concernées par la faille. C'est peut-être aussi le bon moment pour contacter les autorités.
- Enquêter : déterminez ce qui a été violé, dans quelle mesure et ce que nous pouvons faire pour reprendre les opérations normales.
- Remise en ligne : créez, testez et publiez un correctif pour reprendre les opérations normales dès que possible. Vos utilisateurs dépendent de votre service pour fonctionner, et dès que vous pouvez garantir un service stable et sécurisé, revenez en ligne.
- Parlez à vos utilisateurs : Ne laissez pas vos utilisateurs dans l'ignorance. La pire chose que vous puissiez faire est d'arrêter votre service sans expliquer ce qui se passe à vos utilisateurs. Établir un canal de mise à jour en direct ; cela peut être aussi simple que d'utiliser Twitter pour les tenir informés. Une fois l'incident traité, publiez un rapport post-mortem expliquant ce qui s'est passé, comment cela s'est passé et ce que vous avez fait pour empêcher des violations similaires à l'avenir.
Des incidents de sécurité se produisent. Ce qui compte, c'est la façon dont vous gérez votre réponse. L'une de mes réponses préférées était de loin en 2015 lorsque LastPass a émis des réinitialisations obligatoires du mot de passe principal lorsqu'il a détecté une activité réseau anormale. Je suis un utilisateur de longue date de LastPass et, malgré leurs récents problèmes de sécurité, j'aime la façon dont ils répondent à leurs clients en plaçant leurs besoins en premier.
lecture recommandée
Pour réitérer : il n'y a pas de sécurité parfaite. Tout ce qui compte, c'est que vous vous assuriez que vous avez fait un effort raisonnable pour protéger vos données.
Ces pratiques de sécurité devraient vous rendre, vous et votre équipe distante, beaucoup plus difficiles à pirater.
Si vous voulez lire une histoire vraie d'un hacker en fuite qui fuit la loi, je vous recommande Ghost in the Wires de Kevin Mitnick.
Si vous voulez en savoir plus sur la façon dont l'autre côté pense, je vous recommande de lire:
- Ingénierie sociale : l'art du piratage humain par Christopher Hadnagy
- L'art de la tromperie par Kevin Mitnick et William L. Simon
Mon crime est celui de la curiosité.