Qui sont les plus précaires langues?

0
247

Python est maintenant l’une des trois meilleurs langage de programmation – et Julia est à la hausse
Le MIT-créé Julia langage de programmation continue son ascension en développeur de popularité.

De haut en bas, de la technologie est truffé d’erreurs de sécurité. Au niveau le plus bas, nous avons erreurs matérielles telles que Intel Effondrement et le Spectre de bugs. Juste au-dessus de ceux-ci, nous avons le langage de programmation des trous de sécurité, et le garçon, nous avons beaucoup de ces!

WhiteSource, un open-source, entreprise de sécurité, a récemment fait une étude de l’open source de failles de sécurité dans les sept langues au cours de la dernière décennie. Pour trouver les bugs, la société a utilisé la langue de la sécurité de la base de données. Il contient des données sur l’open-source de vulnérabilités à partir de plusieurs sources, telles que la National Vulnerability Database (NVD), les alertes de sécurité, GitHub question des suivis, et les projets open-source d’émission de trackers.

Voici ce que la société a trouvé: Ces langages C, Java, JavaScript, Python, Ruby, PHP et C++. Il n’y a pas de surprises.

Il ya aussi pas de surprise quant à la langue qui a eu le plus de bugs de sécurité. C’est C, par une large marge. Près de 50 pour cent de toutes les vulnérabilités signalées étaient en C.

Comme Kees “Cas” Cook, Google noyau Linux ingénieur en sécurité, a récemment déclaré: “C est une fantaisie de l’assembleur. C’est presque du code machine.” En outre, “C est livré avec quelques inquiétant, des bagages, des comportements indéfinis, et d’autres faiblesses qui conduisent à des failles de sécurité et des infrastructures vulnérables.”

Mais, WhiteSource fait valoir, “Ce n’est pas de dire que C est moins sécurisée que les autres langues. Le nombre élevé de open source de vulnérabilités en C peut être expliqué par plusieurs facteurs. Pour commencer, C a été en usage depuis plus longtemps que tous les autres langues que nous avons étudié et a le plus grand volume de code écrit. Il est également l’une des langues à l’origine de grandes infrastructures, comme OpenSSL et le noyau Linux. Cette combinaison gagnante du volume et de la centralité explique le nombre élevé de connu open-source de vulnérabilités dans C.”

Ils ont un point. Mais, après avoir programmé et se sont battus avec C pendant des décennies maintenant, c’est vraiment trop facile de faire de terribles sécurité des gaffes en C. Par exemple, C contient une grande quantité de comportement indéfini, ce qui laisse toutes sortes de mauvaises possibilités ouvertes.

C++, cependant, a “l’honneur” d’avoir la plus haute gravité des vulnérabilités dans les cinq dernières années. De la mémoire tampon d’erreurs, qui ont depuis longtemps en proie à C, sont également maintenant être découvert souvent en C++.

Language Security Bugs

Les chiffres ne disent pas tout quand il s’agit de la langue qui est la moins, ou plus, en sécurité.

(Image: WhiteSource)

×

language-security-bugs.jpg

Cela dit, JavaScript, peut-être le plus populaire de la langue, est aussi le seul qui a vu une “hausse continue du nombre de vulnérabilités dans les 10 dernières années.”

Avant de faire trop de plaisir de JavaScript, de ces résultats, WhiteSource points, sont trompeuses. La plupart de JavaScript Commun de la Faiblesse de l’Énumération (CEMT)s sont Path Traversal et crypto trous de sécurité à partir de JavaScript paquets, qui sont à peine utilisés, entretenus, ou pris en charge.

Alors, pourquoi sont-ils — et d’autres problèmes de langue — montrant? De nouveaux programmes automatiques, telles que le Code Source des Outils d’Analyse, sont repérage des vulnérabilités, qui, autrement, auraient été négligés.

Une langue, qui a été montrant bien sur les trous de sécurité, est-roulement de tambour, s’il vous plait, Python. Oui, le bon vieux — souvent moqué de — Python.

Presque toutes les langues partagent certains CWEs. Deux CWEs a régné et figurent parmi les trois communes les plus de 70 pour cent de langues: Cross-Site-Scripting (XSS), aka CWE-79 et la Validation des Entrées, autrement connu comme CWE-20.

D’autres CWEs qui montrent beaucoup sont: Fuites d’Information/ Communication (CWE-200), Path Traversal (CWE-22), et CWE-264 Autorisations, de Privilèges et de Contrôle d’Accès. Le dernier est déplacé récemment avec ses plus spécifique, d’un proche — Abusive de Contrôle d’Accès (CWE-284).

Mais C est vraiment le pire et le Python le meilleur? WhiteSource pense que c’est beaucoup trop simple à une conclusion: “Alors que le jeu de” mon langage de programmation est plus sûre que la vôtre ” est certainement une façon amusante de passer le temps … de trouver la réponse sera probablement pas vous aider à créer le plus innovant ou de logiciels sécurisés.”

Non, au lieu de cela, vous devriez passer votre temps à “rester sur le dessus de connu open-source de vulnérabilités et de comprendre les points forts et faibles dans les langages de programmation que vous et votre équipe à l’aide.”

En fin de compte, la sécurité n’est pas sur les langues, mais comment vous les utilisez.

Articles Connexes:

Microsoft: 70 pour cent de tous les bogues de sécurité sont la mémoire de la sécurité issuesGoogle open-sources du projet pour le bac à sable bibliothèques C/C++ sur LinuxGitHub: Notre dépendance scan a trouvé quatre millions de failles de sécurité publique de repos

Rubriques Connexes:

Open Source

De sécurité de la TÉLÉVISION

La Gestion Des Données

CXO

Les Centres De Données