GuardRails - L'application Github qui veille à la sécurité de vos pull requests

Publié initialement à : https://korben.info/guardrails-lapplication-github-qui-veille-a-la-securite-de-vos-pull-requests.html

Parce que la sécurité est un processus et pas une fin en soi, il est important de l'intégrer à tous les niveaux de son applicatif, de manière continue et pas simplement quand on y pense ou à la fin, quand c'est l'heure de releaser.

Évidemment en phase de production / pre-prod / test cela se fait avec des outils comme le Bug Bounty. Et en amont, durant les phases de développement, cela peut se faire en formant les développeurs à coder de manière sécurisée et aussi avec des outils d'analyse de code comme ce que propose GuardRails dont je vais vous parler dans cet article.

GuardRails est une application Github gratuite capable d'analyser automatiquement les pull requests de tous vos dépôts publics ou privé. Lorsqu'il détecte un problème liés à la sécurité dans le code, il vous avertit et charge à vous de le corriger ensuite.

Évidemment, ça ne remplacera jamais une recherche de vulnérabilités faites par des experts (Bug Bounty FTW) mais cette approche est intéressante, car elle est un complément, permettant de surveiller son code à chaque fois qu'on le pousse sur le serveur Git. Cela évite de se faire embourber en cumulant les petites négligences.

GuardRails s'installe en un clic sur Github en passant par ici.

1 « J'aime »

Bonjour,
En quoi est-ce meilleur qu’une validation sonar des failles de secu ?

1 « J'aime »

La même chose sur un Gitlab auto hébergé serait parfait

1 « J'aime »

Bonjour @Korben, dans le principe c’est intéressant.
Néanmoins, on n’a aucune info sur ce(s) développeur(s), ni sur le code qui traite les PR.
https://github.com/guardrailsio indique par ex. comme localisation “Bangkok, Thailand”…

1 « J'aime »

c’est exactement ce que j’allais dire.

1 « J'aime »

Bonjour Maxxyme :wave: Nous ne nous attendions pas à être mentionné sur Korben pour être honnête, cette semaine a été un peu “sport”, désolé de ne revenir vers toi que maintenant :sweat_smile:Pour toutes questions, nous sommes normalement super réactif si contacté via support at guardrails dot io ou via Twitter (@guardrailsio). En ce qui concerne notre équipe, nous sommes pour le moment une toute petite start-up, évoluant sous le leadership de Stefan Streichsbier. La liste exhaustive de notre équipe est disponible sur notre page LinkedIn si besoin. Nous avons notre siège social à Singapore, ainsi qu’une autre entitée en Thailande (sous le programme BOI, Board of Investment of Thailand). Pour ce qui est du code qui traite les pull requests, c’est un code propriétaire, donc non-opensource, mais nous sommes transparent sur les outils que nous utilisons pour détecter les failles de sécurités (voir la page Tools&Licenses). Nous avons aussi mis en place une page expliquant comment nous gérons les données en interne (voir la page Security). J’espere que cela réponds à tes questions :smile: N’hésites pas à me contacter directement sur amine at guardrails dot io si tu as d’autre questions!

1 « J'aime »

Bonjour Salamafet! :wave: Bien que nous ne supportons que GitHub pour le moment, nous avons pour objectif de supporter GitLab très prochainement (avant la fin de l’année). Nous l’annoncerons via notre newsletter et sur notre Twitter ! :pray:

1 « J'aime »

Yes, nous y travaillons ! :man_technologist: Supporter GitHub en premier était pour nous une manière de recueillir un maximum de retours, mais nous allons prochainement supporter GitLab (avant la fin de l’année) et BitBucket. N’hésitez pas à nous suivre sur Twitter pour être tenu au courant ! :pray:

Bonjour @cyrille :wave:

SonarQube est une solution mature et solide, mais vient avec ses propres limites. Pour citer leur documentation:

“To be clear, the standard for most rules implemented in SonarQube language plugins is very strict: no false positives. […] But for security-related rules, the story is a little different. […]
That’s why security-related rules cast a wider net than you may be used to seeing.
The idea is that the rule will flag anything suspicious, and leave it to the human security auditor to cull the false positives and sent the real issues for remediation.”

Avec GuardRails, nous souhaitons remplir le rôle de cet “human security auditor” en filtrant en amont les faux positifs et autres résultats irrélevants. Nous avons dans notre équipe des experts en sécurité avec des dizaines d’années d’expériences au contact de ces outils, qui nous aident à écrire des règles de filtrage etc.

Outre le filtrage des faux positifs, GuardRails se focalise sur l’expérience des développeurs et se veut simple a installé et utilisé.

D’autre part, GuardRails supporte un arsenal d’outils plus large. En deça des outils d’analyse statique, nous utilisons des outils permettant de détecter les secrets (clefs privées, tokens, etc) malencontreusement stockés dans le code, l’utilisation de librairies tierces vulnérables etc.

Pour finir, GuardRails, contrairement a SonarQube, ne store pas le code source des applications protégés.Le code source est recuperé, analysé, puis directement supprimé après analyse.

2 « J'aime »

Bonsoir,

Votre outil m’intéresse, j’ai voulu le tester en l’installant sur mon repo Git. J’ai remarqué une demande de droits particulière concernant les datas dans le repo (cf copy d’écran joint)


Pourquoi votre outil a t’il besoin de droits d’écritures ?

Cordialement

Merci de nous avoir fait remarquer cela! Notre OAuth app n’était pas correctement configurée et demandais en effet des permissions dont nous n’avions pas besoin. Cela a été rectifié.

2 « J'aime »