Snyk Code ajoute l’analyse de sécurité pour C# et .NET
Frank Fischer
29 juillet 2021
0 minutes de lecturePetite précision : j’ai une histoire personnelle avec .NET, notamment parce que j’ai travaillé chez Microsoft comme évangéliste .NET. J’ai aussi rencontré brièvement Anders Jejlsberg, le concepteur de C# et de TypeScript. Cet article a donc une dimension un peu personnelle pour moi.
Nous sommes ravis d’annoncer que Snyk Code détecte les failles de sécurité et propose des correctifs pour un nouveau langage : C#. Cette nouveauté ajoute un langage majeur à notre portefeuille, qui prend déjà en charge Java, JavaScript, TypeScript et Python.

Étroitement lié au framework .NET, C# a beaucoup évolué. La version 9.0 est sortie en 2020 et constitue une norme ECMA (ECMA-334) et ISO (23270). C# est un langage multiparadigme (structuré, impératif, orienté objet, événementiel, piloté par les tâches, fonctionnel, générique, réflexif et concurrent). En bref, c’est un langage mature, doté d’une longue histoire.
C# représente environ 8 % du marché des langages de programmation, ce qui le place en quatrième position derrière Java, JavaScript et Python. D’abord choisi pour Windows et les applications métier, C# a aussi été adopté dans les secteurs du jeu vidéo et de la réalité virtuelle, car il est largement utilisé dans les applications Unity.

Comment ajouter des projets C# à Snyk
Il existe plusieurs façons de faire analyser votre dépôt. Dans l’IDE, vous pouvez analyser le code source indépendamment de votre système de gestion de versions afin de vérifier votre code avant de le valider.
Conseil de pro : vous pouvez faire analyser des dépôts open source sans les dupliquer ni les cloner. Il vous suffit de sélectionner Add project > Monitor public GitHub repos.
En général, Snyk Code prend en charge GitHub, GitLab, Bitbucket Cloud et Azure Repos. Les intégrations se configurent dans Settings. Remarque : Azure Repos ne figure pas directement dans le menu de projet Add. Cliquez sur + Other pour le trouver.
Si vous utilisez déjà Snyk, les projets que vous avez importés doivent être réanalysés pour afficher immédiatement les résultats concernant C#. Sinon, les résultats s’afficheront lors de la prochaine analyse planifiée.
Détecter les vulnérabilités avec Snyk Code
Snyk Code effectue une analyse des flux de données qui peut détecter les attaques par injection courantes, comme les injections SQL, les injections XML, les redirections ouvertes ou les injections LDAP, entre autres. Notre jeu d’entraînement a notamment révélé de nombreux parcours de répertoires. Dans ce type d’attaque, des données externes sont utilisées sans assainissement préalable pour ouvrir des fichiers. Un pirate peut exploiter le chemin d’accès à un fichier pour parcourir les répertoires et lire ou modifier des fichiers que vous souhaitez protéger. De plus, l’extraction de fichiers ZIP et l’utilisation des chemins stockés dans ces archives peuvent entraîner l’écrasement de fichiers importants. (Cette vulnérabilité est appelée Zip Slip, et oui, Snyk Code la détecte également.) Snyk Code repère aussi les problèmes entre fichiers, ce qui est particulièrement utile en C#, où les définitions de classe peuvent être réparties sur plusieurs fichiers.
Snyk Code prend en charge les principaux frameworks .NET : .NET Framework, .NET Core, ASP.NET (4.x) et ASP.NET Core. Comme toujours, Snyk Code prend en charge toutes les bibliothèques C# dès l’installation.
Conseil de pro : Snyk Code analyse les fichiers source dont l’extension est *.cs, mais pas les fichiers de balisage *.cshtml.
Sécurisez vos projets C# dès aujourd’hui
Après six mois sur le marché, Snyk Code prend désormais en charge JavaScript, TypeScript, C#, Python et Java. Et ce n’est pas fini : nous prévoyons d’ajouter de nouveaux langages à un rythme soutenu au cours des prochains mois. Si le vôtre ne figure pas encore dans la liste, revenez régulièrement consulter cette page : nous aurons peut-être des nouvelles pour vous.
Lancez-vous dans les compétitions Capture The Flag
Apprenez à résoudre des défis Capture The Flag en regardant à la demande notre atelier virtuel d’initiation.


