L'utilisation de GitHub est-elle sûre ?
GitHub est peut-être le site d'hébergement et de partage de référentiels le plus populaire, et c'est l'un des outils de développement les plus connus. C'est principalement gratuit, et n'importe qui peut y héberger gratuitement un dépôt privé ou public.
Une question courante que beaucoup de gens se posent est : « Est-ce que GitHub est sûr ? » Cette question comporte deux volets : les développeurs et les entreprises veulent savoir si GitHub est sûr pour stocker du code, tandis que les utilisateurs souhaitent savoir si GitHub est sûr pour télécharger des programmes.
Au fur et à mesure que la prise de conscience de la nécessité de bonnes pratiques de cybersécurité se répand, les gens deviennent naturellement plus prudents quant à ce qu'ils téléchargent et aux outils qu'ils utilisent.
Les rapports de fuites impliquant GitHub sont devenus au premier plan ces dernières années. Il y a également eu un certain émoi concernant le tristement célèbre malware Octopus Scanner attaquant la chaîne d'approvisionnement open source GitHub.
Cela pourrait rendre GitHub plus dangereux qu'il ne l'est vraiment.
Néanmoins, sans comprendre comment ces fuites et problèmes ont pu se produire, il est impossible de porter un jugement sur la sécurité de GitHub en soi. La vérité est que GitHub est sûr à utiliser, mais il n'est sûr que si vous le permettez.
Je vais expliquer dans une minute. Cependant, GitHub n'est pas intrinsèquement dangereux ; ce sont les mauvaises pratiques des utilisateurs qui peuvent rendre l'utilisation de GitHub, que ce soit en tant que développeur ou téléchargeur, dangereuse.
Aujourd'hui, je vais me concentrer sur plusieurs aspects liés à la sécurité de GitHub, notamment :
- Si GitHub est sûr pour les développeurs et les entreprises
- Comment sauvegarder votre projet sur GitHub
- Comment éviter les fuites de données d'entreprise sur GitHub
- Qu'était le malware Octopus Scanner
- Si GitHub est sûr pour les téléchargeurs
- Comment télécharger en toute sécurité sur GitHub
Entrons-y.
GitHub est-il sûr ?
GitHub est simplement un site Web où les gens peuvent héberger des scripts et des programmes. Tout le monde peut héberger ce qu'il veut sur GitHub - et c'est là que réside le danger pour les utilisateurs.
Les logiciels malveillants peuvent être cachés dans certains programmes que vous téléchargez. C'est pourquoi il est crucial de ne télécharger qu'à partir de référentiels de confiance.
Du côté du développeur, il y a des risques supplémentaires dont il faut être conscient. GitHub est assez sûr et il existe de nombreuses fonctionnalités de sécurité que vous pouvez utiliser pour scanner votre code et assurer la sécurité - j'en parlerai plus tard.
Cependant, si vous ne faites pas attention, votre référentiel est sujet aux fuites et au mauvais code.
Risque de GitHub pour les développeurs : fuites de données sensibles sur les entreprises et les clients
Comment les données de votre entreprise peuvent-elles être divulguées sur GitHub ? Explorons plusieurs possibilités.
GitHub est piraté ou piraté
Ce n'est pas un vrai risque. GitHub lui-même est assez sûr et sécurisé, et vous pouvez lui faire confiance avec les référentiels que vous hébergez dessus.
Si vous avez un référentiel privé sur GitHub, je ne m'inquiéterais pas que GitHub lui-même soit piraté et que vos données soient divulguées de cette façon.
Même si quelqu'un, ou un groupe de pirates, pouvait pirater GitHub, il existe d'innombrables référentiels plus précieux qu'ils recherchent probablement. Ils partiront pour une course folle, profitant de leur gratuité pour tous, et votre référentiel ne recevra probablement pas un second regard.
Cependant, bien que GitHub lui-même dispose de fonctionnalités de sécurité de premier ordre, votre référentiel peut ne pas en avoir.
Quelqu'un vole votre mot de passe ou pirate votre compte
Maintenant, c'est un vrai risque. Bien que GitHub lui-même soit sécurisé, si vous ne protégez pas votre compte, les gens peuvent le pirater – en raison des vulnérabilités que vous avez créées, et non de GitHub.
La nécessité d'un mot de passe fort doit être comprise de soi. N'utilisez aucun mot de passe que vous avez utilisé ailleurs pour protéger votre référentiel et modifiez votre mot de passe de temps en temps.
Il en va de même pour tout employé ou développeur que vous embauchez. Vous devez les renseigner sur ces mesures de sécurité simples.
Il devrait être interdit aux employés de réutiliser les identifiants de connexion d'ailleurs sur GitHub. Sinon, une fuite ailleurs peut ouvrir la voie aux pirates pour accéder aux identifiants de connexion GitHub.
Cependant, vous devez également activer l'authentification à deux facteurs si vous voulez vraiment protéger votre référentiel. De nombreux piratages se sont produits en raison du manque de mesures de sécurité appropriées comme 2FA.
Vous ne savez pas comment protéger votre compte GitHub avec 2FA ? Lisez ce guide.
Développeur et négligence des employés
Les problèmes vont au-delà. De nombreux piratages et fuites se sont produits en raison de la négligence des développeurs.
Cela peut être quelque chose d'aussi simple que d'intégrer les informations de connexion dans le code ou de les stocker dans un fichier de configuration, les rendant ainsi publiques et disponibles pour tout pirate informatique qui a la volonté de les trouver.
Jelle Ursem, chercheuse aux Pays-Bas, se décrit comme la « pire hacker que vous rencontrerez ». Cependant, elle a pu découvrir rapidement les identifiants de connexion codés en dur dans les référentiels GitHub, auprès de centaines d'entreprises de tous types de secteurs, selon un rapport DataBreaches.
Ces secteurs comprenaient les soins de santé, la finance, etc., et ces sociétés comprenaient des sociétés Fortune 500.
En utilisant des expressions de recherche simples, comme le montre la capture d'écran ci-dessous, Jelle Ursem a pu découvrir les identifiants de connexion des clients en quelques minutes. Elle a pu utiliser ces informations d'identification pour se connecter à des comptes et révéler des données médicales hautement sensibles, des centaines de milliers d'utilisateurs ayant vu leurs données divulguées.


Source : DataBreaches.net
L'utilisation abusive des référentiels publics par des employés ou des entrepreneurs
Des employés négligents peuvent exposer par inadvertance des informations de connexion sensibles ou d'autres données utilisateur dans des référentiels publics qui ne sont pas correctement protégés. Tout ce dont vous avez besoin, ce sont les identifiants de connexion d'un seul utilisateur exposés dans un référentiel public pour faire des ravages sur votre marque.
Dans le rapport mentionné ci-dessus, il est décrit comment Ursem a découvert des données sensibles sur les patients provenant d'innombrables entreprises de soins de santé.
Un fil conducteur est l'incapacité à protéger correctement les référentiels, laissant les données vulnérables dans les référentiels publics, les développeurs utilisant des référentiels personnels pour les mauvaises choses et les identifiants de connexion codés en dur dans le code public.


Source : DataBreaches.net
Recommandations : Comment les entreprises peuvent empêcher les fuites
Prévenir les fuites est généralement simplement une question d'employer les bonnes pratiques de sécurité. Heureusement, il existe des choses simples que vous pouvez faire pour protéger instantanément vos données.
Utiliser uniquement des référentiels privés
Les dépôts publics sont des recettes pour le désastre. Tout ce qu'il faut, c'est un entrepreneur pour ne pas savoir ce qu'il fait et divulguer des données critiques pour que le monde les voie.
Utilisez des mots de passe forts et 2FA
Ne laissez pas les employés réutiliser les mots de passe. Tous les mots de passe doivent être forts et vous devez les changer fréquemment.
De plus, utilisez une authentification à deux facteurs. Même si vous disposez d'un référentiel privé, un pirate informatique pourrait utiliser la force brute pour accéder à votre compte.
Bien que l'authentification par SMS soit une possibilité, je ne la recommande pas. Cela vous rend vulnérable à l'échange de sim, surtout si vous vous trouvez dans des pays où l'échange de sim est plus facile.
Utilisez plutôt une application TOTP. Si vous connaissez Google Authenticator, vous saurez comment cela fonctionne.


Dans les deux cas, vous pouvez utiliser des codes de sécurité spéciaux comme méthode de sauvegarde, mais conservez-les en lieu sûr.
Supprimer les anciens comptes
Ne laissez pas d'anciens dépôts sur GitHub. Supprimez-les et supprimez les anciens référentiels et comptes des personnes qui ont quitté votre entreprise.


Des secrets et des informations d'identification peuvent être divulgués sur les référentiels d'anciens développeurs, qui ont laissé les informations d'identification là-bas, ont quitté l'entreprise et ont rapidement oublié le tout. Vous les avez peut-être également oubliés jusqu'à ce que quelqu'un découvre les données sensibles laissées là des mois ou des années plus tard.
Protégez vos informations d'identification
N'intégrez pas les informations d'identification des utilisateurs dans le code même des référentiels privés. Conservez-les en tant qu'options de configuration sur le serveur sur lequel le code s'exécute.
Vétérinaire qui vous embauchez
Souvent, les entreprises sous-traitent des tâches importantes à des entrepreneurs et des développeurs qui ne savent pas vraiment ce qu'ils font ou qui ne se soucient tout simplement pas assez de la confidentialité de votre entreprise pour prendre les mesures de sécurité appropriées. Soyez prudent avec les personnes que vous embauchez et examinez correctement leur expertise et leurs antécédents.
Accès restreint
De même, soyez prudent avec vos paramètres d'accessibilité. Si quelqu'un quitte votre équipe, révoquez son accès.
Vous pouvez bloquer des utilisateurs à tout moment et les empêcher de créer de nouveaux référentiels publics.
Sécurisez vos ordinateurs portables
Vous devrez sécuriser les ordinateurs portables et les ordinateurs qui ont accès au code source. Installez un antivirus et limitez l'accès physique aux employés approuvés.
Sauvegardez votre référentiel


C'est plus un conseil général, mais c'est essentiel. Utilisez un outil comme BackHub pour sauvegarder quotidiennement votre référentiel GitHub, afin de ne pas perdre vos données.
Octopus Scanner et autres logiciels malveillants : le risque pour les développeurs et comment le prévenir
Les logiciels malveillants peuvent s'infiltrer dans les logiciels, y compris les logiciels que vous téléchargez sur GitHub ou même créer, sans que vous le sachiez. Bien sûr, vous n'importeriez jamais intentionnellement des logiciels malveillants dans votre code, mais si vous ne faites pas attention, cela pourrait facilement arriver.
Un exemple en est le tristement célèbre malware Octopus Scanner, qui a infecté la chaîne d'approvisionnement open source, s'intégrant dans plusieurs programmes logiciels open source.
Voici comment cela a fonctionné.
Octopus Scanner était un malware qui était intégré dans les référentiels sur GitHub. Les développeurs ont téléchargé du code à partir de ces référentiels pour créer des projets logiciels à l'aide de ce code.
Comment exactement Octopus Scanner a vu le jour est encore inconnu.
La plupart des référentiels hébergeant du code infecté par Octopus Scanner ne savaient pas qu'ils contenaient des logiciels malveillants intégrés dans leurs référentiels. Cependant, GitHub Security Lab a analysé les référentiels sur GitHub et a trouvé Octopus dans plus de deux douzaines de référentiels, mais avec un faible taux de détection de seulement 4/60, ce qui le rend difficile à détecter.


Les créateurs d'Octopus Scanner ne ciblaient pas des utilisateurs aléatoires téléchargeant des programmes. Au contraire, ils attaquaient la chaîne d'approvisionnement open source, ciblant les développeurs afin qu'ils puissent reprendre les projets que ces développeurs ont créés à l'aide du code infecté.
Octopus ne s'est activé que lorsqu'il a détecté la présence de NetBeans sur l'appareil, un environnement de développement basé sur Java. Ne pas utiliser NetBeans peut vous éviter d'être blessé par Octopus, mais prenons du recul et regardons la situation dans son ensemble pendant un moment.
Que pouvons-nous apprendre de cette histoire? Lorsque vous importez du code que vous téléchargez depuis GitHub ou que vous créez un logiciel avec celui-ci, vous devez vous assurer que le code est digne de confiance.
Ce n'est pas seulement qu'il existe une possibilité d'utiliser du code infecté par des logiciels malveillants. Le code peut être ancien et obsolète, et son utilisation peut entraîner des failles de sécurité qui peuvent être exploitées par des acteurs malveillants.
Même si le code a été maintenu dans un environnement fermé, cela vaut toujours la peine d'auditer complètement le code avant de l'importer. L'audit du code source prendra du temps, mais il vous permettra de détecter les vulnérabilités.
Lorsque vous autorisez une application à accéder à votre référentiel, il est essentiel de s'assurer que l'application est sécurisée. Recherchez le développeur et assurez-vous qu'il est digne de confiance avant d'accorder l'accès.
Assurez-vous également qu'ils utilisent des pratiques de sécurité de premier ordre pour se protéger (et votre projet, en tant qu'extension). Enfin, accordez le moins d'accès possible - plus vous donnez d'accès à chaque application, plus vous augmentez les chances que quelque chose se passe mal.
Outils que tous les développeurs devraient utiliser et connaître
Toutes les pratiques de sécurité ci-dessus sont importantes. Cependant, c'est aussi une bonne idée d'utiliser les outils de sécurité suivants pour détecter les problèmes et vous aider à protéger votre référentiel.
Permettez-moi de passer en revue certains des meilleurs outils que vous devriez utiliser ou au moins connaître.
Sécurité GitHub


Saviez-vous que GitHub offre des fonctionnalités de sécurité aux développeurs ? Voici certaines des choses que vous pouvez et devriez faire :
Numérisation secrète


Les secrets, tels que les jetons et les clés d'authentification pour des services comme Azure et Amazon Web Services, peuvent être divulgués dans des référentiels publics ou privés, tout comme les informations d'identification des utilisateurs.
GitHub analysera automatiquement les référentiels publics à la recherche de secrets et informera l'émetteur de la clé lorsqu'il détectera un secret, qui pourra alors vous informer ou révoquer le jeton.
Si vous activez l'analyse des secrets sur les référentiels privés (il n'est pas activé par défaut), GitHub vous informera par e-mail si un secret est détecté.
Numérisation de code


Vous voulez garder votre code exempt de vulnérabilités, et GitHub peut vous aider à le faire en analysant votre code pour les problèmes que vous devez résoudre. Il affichera une alerte dans le référentiel s'il détecte une vulnérabilité.
Vous pouvez programmer des analyses pour qu'elles aient lieu à des heures spécifiques.
Autres caractéristiques


De la sécurisation de votre chaîne d'approvisionnement en surveillant automatiquement vos dépendances à l'émission d'avis de sécurité à votre équipe, GitHub Security propose de nombreuses autres fonctionnalités, que vous pouvez découvrir ici.
Projet de coffre-fort


Le projet Vault vous permet d'authentifier l'accès des utilisateurs, de chiffrer les données et de stocker et déployer des secrets tout en les gardant en sécurité.
Boulon WhiteSource


Bolt, de WhiteSource, est un outil gratuit que vous pouvez utiliser pour analyser votre référentiel à la recherche de failles de sécurité. Il fonctionne à la fois sur les référentiels publics et privés, vous offrant des mises à jour en temps réel qui contribuent à la sécurité de votre communauté.
Snyk


Snyk est une application gratuite pour les projets open source. Il analysera votre référentiel et vous alertera lorsqu'il détectera des vulnérabilités.
Des centaines de milliers de projets open source utilisent Snyk, et la grande majorité d'entre eux ont trouvé des vulnérabilités grâce à Snyk.
Téléchargement et utilisation de programmes logiciels à partir de GitHub : risques et conseils de sécurité
Si vous n'êtes qu'un utilisateur de logiciel et non un développeur, vous devez toujours faire preuve de prudence lorsque vous utilisez GitHub. Ce n'est pas que GitHub est intrinsèquement dangereux, c'est qu'étant une bibliothèque généralement accessible, les gens peuvent télécharger des logiciels fragmentaires dans leurs référentiels.
Si un développeur peu précis cache des virus ou des logiciels malveillants dans son code, il se peut qu'ils ne soient pas détectables au premier coup d'œil.
Alors, comment pouvez-vous vous protéger lors du téléchargement de logiciels depuis GitHub ? Il existe quelques principes simples que vous pouvez respecter et qui vous aideront à éviter la plupart des risques liés à l'utilisation de GitHub pour vos téléchargements de logiciels, que ce soit pour un usage personnel ou pour votre entreprise.
Télécharger uniquement à partir de référentiels de confiance
C'est le conseil le plus important que je puisse vous donner si vous téléchargez souvent des logiciels depuis GitHub. Si vous ne savez pas si vous pouvez faire confiance au développeur d'un programme spécifique, cela peut valoir la peine de chercher une alternative à laquelle vous pouvez faire un peu plus confiance.
Il existe de nombreux projets open source géniaux sur GitHub qui ont de solides communautés derrière eux. Ces communautés s'assurent que le code reste sûr et que les bogues sont corrigés.
Vous pouvez généralement faire confiance à des projets open source solides comme celui-ci.
Plus il y a de contributeurs à un projet, mieux c'est. Il est peu probable qu'il y ait un complot impliquant des centaines de contributeurs, tous essayant de vous faire croire que vous téléchargez un programme légitime qui contient en fait des logiciels malveillants.
Les mauvais acteurs ont tendance à opérer seuls ou en petits groupes. Ainsi, les projets gérés par un seul développeur ou par quelques personnes peuvent ne pas être aussi sûrs.
Vous pouvez également vérifier le nombre de personnes qui ont « vedette » le projet pour l'enregistrer dans leurs favoris, ainsi que le nombre de fourches créées à partir du projet. Vous pouvez voir ces informations dans le coin supérieur droit.


Plus il y a de personnes qui ont joué dans un projet, plus il a de chances d'être bon.
Pourquoi tout cela est-il important ? La réalité est que vous ne pouvez jamais vraiment être sûr à 100% que tout logiciel que vous téléchargez est sûr.
Il est beaucoup plus facile de vérifier qu'un logiciel n'est pas sûr que de vérifier qu'il est sûr. Même si vous auditez le code ou l'analysez avec un certain type d'antivirus ou de vérificateur de vulnérabilité, certains logiciels malveillants sont très difficiles à détecter et peuvent rester cachés.
Soyez prudent sur les mises à jour
Les projets open source qui ont beaucoup de contributeurs ont tendance à être plus sûrs. D'un autre côté, il y a un revers, un côté obscur, à connaître.
S'il existe un programme géré par un seul développeur en qui vous avez absolument confiance, vous pouvez télécharger des mises à jour ou des correctifs sans vraiment vous soucier de la sécurité de la nouvelle mise à jour.
D'un autre côté, si beaucoup de personnes contribuent au projet, vous devriez attendre un peu avant de télécharger une mise à jour. Si vous ne pouvez pas inspecter le code vous-même, voyez ce que les autres disent.
De nombreux projets GitHub ont des subreddits qui leur sont dédiés. D'autres peuvent avoir des chaînes Discord, des groupes Telegram, etc.
D'autres utilisateurs plus enclins que vous à la technique pourront vous aider à comprendre s'il faut ou non télécharger une mise à jour.
Si vous téléchargez une mise à jour, analysez-la toujours avec un programme antivirus.
Assurez-vous que le projet est mis à jour et que les problèmes sont résolus
Un bon projet est mis à jour fréquemment. Sur le référentiel, vous pourrez voir l'historique des mises à jour.
Si la dernière mise à jour remonte à plusieurs années, évitez le programme. Il n'y a peut-être rien de malveillant à ce sujet, mais les programmes doivent être mis à jour pour corriger les bogues et les vulnérabilités qui ne manqueront pas de surgir.
De plus, l'utilisation d'anciens logiciels obsolètes n'est jamais une bonne idée, car cela peut exposer votre ordinateur aux attaques.
Vous devriez également vérifier l'onglet « Problèmes ». Il n'est pas anormal d'avoir des problèmes ; en fait, cela pointe vers une communauté qui se soucie de découvrir et de résoudre de tels problèmes.
Ce que vous voulez faire, c'est vous assurer que les problèmes sont résolus et finalement fermés.
Utilisez un antivirus et un pare-feu puissants
Analyser tous les programmes et fichiers que vous téléchargez avec votre logiciel antivirus ou antimalware est toujours une bonne idée. Il est important d'avoir un bon programme antivirus installé de toute façon, qui devrait s'exécuter automatiquement et surveiller constamment votre ordinateur pour les logiciels malveillants et activité malveillante.
Un bon pare-feu ou un bon moniteur réseau sera également capable de détecter lorsque des programmes tentent d'accéder à Internet à votre insu. Ils peuvent faciliter la découverte de programmes louches.
Vaut-il la peine d'utiliser GitHub ?
GitHub peut être un excellent outil pour la collaboration et le développement de logiciels. C'est parfaitement sûr - il vous suffit d'être intelligent avec la façon dont vous l'utilisez.
Si vous téléchargez un logiciel open source à partir de GitHub pour votre entreprise, vous devez avoir un processus de révision de code méticuleux pour vous assurer que vous n'utilisez que des programmes sûrs.
Il y a aussi d'autres options. Par exemple, les développeurs peuvent utiliser Gitea pour auto-héberger un serveur git. GitLab est une autre option, et il est open source, contrairement à GitHub.
Dans le passé, GitLab autorisait les gens à créer des dépôts privés gratuitement, contrairement à GitHub. Cependant, GitHub a également rendu les référentiels privés gratuits, mais la société appartient désormais à Microsoft, ce qui décourage certaines personnes.
Conclusion : GitHub est-il sûr à utiliser ?
Oui, GitHub lui-même est sûr et sécurisé. Cependant, lorsque vous téléchargez des programmes depuis GitHub, vous devez toujours faire preuve de prudence et ne télécharger que ceux créés par des développeurs de confiance.
De même, si vous êtes un développeur ou une entreprise utilisant GitHub, vous devez faire attention aux mesures de sécurité décrites ci-dessus, telles que l'utilisation de mots de passe forts et l'inspection du code avant de l'importer.



Tom Clayton
Tom aime écrire sur la technologie, le commerce électronique et le marketing Internet.
Tom est un spécialiste du marketing Internet à temps plein depuis deux décennies maintenant, gagnant des millions de dollars tout en vivant sa vie selon ses propres conditions. En cours de route, il a également entraîné des milliers d'autres personnes vers le succès.





Laisser un commentaire