Le passage de Google à la programmation Rust réduit les vulnérabilités de la mémoire Android de 52 %


25 septembre 2024Ravie LakshmananCodage sécurisé / Sécurité mobile

Google a révélé que sa transition vers des langages sécurisés en mémoire tels que Rust dans le cadre de son approche sécurisée par conception a conduit le pourcentage de vulnérabilités sécurisées en mémoire découvertes dans Android à chuter de 76 % à 24 % sur une période de six ans.

Le géant de la technologie a déclaré se concentrer sur Codage sécurisé pour les nouvelles fonctionnalités réduit non seulement le risque de sécurité global d’une base de code, mais rend également le changement plus « évolutif et rentable ».

Finalement, cela conduit à une diminution des vulnérabilités de sécurité de la mémoire à mesure que le développement de nouvelles vulnérabilités de mémoire non sécurisées ralentit après une certaine période de temps, et que le développement de nouvelles vulnérabilités de mémoire sécurisées prend le relais, Jeff Vander Stoep et Alex Rebert de Google dit dans un article partagé avec The Hacker News.

Ce qui est peut-être encore plus intéressant, c’est que le nombre de vulnérabilités en matière de sécurité de la mémoire peut également diminuer malgré une augmentation de la quantité de nouveau code non sécurisé en mémoire.

Cybersécurité

Le paradoxe s’explique par le fait que les vulnérabilités diminuent de manière exponentielle, une étude révélant qu’un grand nombre de vulnérabilités résident souvent dans du code nouveau ou récemment modifié.

« Le problème se pose essentiellement avec le nouveau code, ce qui nécessite un changement fondamental dans la manière dont nous développons le code », ont noté Vander Stoep et Rebert. « Le code mûrit et devient plus sûr avec le temps, de manière exponentielle, ce qui fait que les retours sur investissement comme les réécritures diminuent au fil du temps à mesure que le code vieillit. »

Google, qui a officiellement annoncé son intention de prendre en charge le langage de programmation Rust dans Android en avril 2021, a déclaré avoir commencé à donner la priorité à la transition du nouveau développement vers des langages à mémoire sécurisée vers 2019.

En conséquence, le nombre de vulnérabilités de sécurité de la mémoire découvertes dans le système d’exploitation a diminué de 223 en 2019 à moins de 50 en 2024.

Programmation Rust

Il va également sans dire qu’une grande partie de la diminution de ces failles est due aux progrès réalisés dans les méthodes conçues pour les combattre, passant des correctifs réactifs à l’atténuation proactive et à la découverte proactive des vulnérabilités à l’aide d’outils tels que les assainisseurs Clang.

Le géant de la technologie a également noté que les stratégies de sécurité de la mémoire devraient évoluer encore plus pour donner la priorité à la « prévention à haute assurance » en intégrant principes de sécurité dès la conception qui consacrent la sécurité dans les fondements mêmes.

« Au lieu de se concentrer sur les interventions appliquées (atténuations, fuzzing) ou de tenter d’utiliser les performances passées pour prédire la sécurité future, Safe Coding nous permet de faire des affirmations fortes sur les propriétés du code et sur ce qui peut ou ne peut pas se produire en fonction de ces propriétés », ont déclaré Vander Stoep et Rebert.

Ce n’est pas tout. Google a déclaré qu’il se concentrait également sur l’offre d’interopérabilité entre Rust, C++ et Kotlin, au lieu de réécrire le code, comme une « approche pratique et progressive » pour adopter des langages sûrs en mémoire et éliminer à terme des classes de vulnérabilité entières.

« L’adoption du codage sécurisé dans le nouveau code offre un changement de paradigme, nous permettant de tirer parti de la dégradation inhérente des vulnérabilités à notre avantage, même dans les grands systèmes existants », a-t-il déclaré.

Cybersécurité

« Le concept est simple : une fois que nous fermons le robinet des nouvelles vulnérabilités, elles diminuent de manière exponentielle, ce qui rend l’ensemble de notre code plus sûr, augmente l’efficacité de la conception de la sécurité et atténue les défis d’évolutivité associés aux stratégies de sécurité de la mémoire existantes, de sorte qu’elles peuvent être appliquées plus efficacement de manière ciblée. »

Cette évolution intervient alors que Google a vanté une collaboration accrue avec les équipes d’ingénierie de sécurité des produits et de traitement graphique (GPU) d’Arm pour signaler de multiples lacunes et améliorer la sécurité globale de la pile de logiciels/micrologiciels GPU dans l’ensemble de l’écosystème Android.

Cela inclut la découverte de deux problèmes de mémoire dans la personnalisation du code du pilote de Pixel (CVE-2023-48409 et CVE-2023-48421) et un autre dans le firmware du GPU Arm Valhall et le firmware de l’architecture GPU de 5e génération (CVE-2024-0153).

« Les tests proactifs sont une bonne hygiène car ils peuvent conduire à la détection et à la résolution de nouvelles vulnérabilités avant qu’elles ne soient exploitées », déclarent Google et Arm dit.

Vous avez trouvé cet article intéressant ? Suivez-nous sur Gazouillement et LinkedIn pour lire davantage de contenu exclusif que nous publions.





ttn-fr-57