Pour gérer vos consentements :

Python 2 : le clap de fin à haut risque

Publié par La rédaction le | Mis à jour le

La version 2.x du langage de programmation Python ne sera plus supportée au 1er janvier 2020. La sécurité de millions de systèmes est en jeu.

Python figure au top 10 des langages de programmation les plus populaires.

Son écosystème négocie une transition annoncée dès mars 2018.

Après le 1er janvier 2020, aucune mise à jour ou correctif de sécurité du code source ne sera officiellement proposée pour Python 2.x (la v2.7 étant la dernière de la série 2).

Dans un billet de blog, l'agence britannique de cybersécurité (National Cyber Security Centre ou NCSC) exhorte les développeurs à migrer leur base de code vers Python 3.

« Si vous continuez à utiliser des modules non pris en charge, vous exposez au risque la sécurité de votre organisation et de vos données, car des vulnérabilités que personne ne sera en mesure de corriger apparaîtront tôt ou tard », a alerté l'institution.

De sucroît, « si vous maintenez une bibliothèque [en Python 2.x] dont dépendent d'autres développeurs [.] vous augmentez indirectement et probablement involontairement les risques de sécurité d'autres personnes », a ajouté le NCSC, équivalent de l'Anssi en France.

La solution consiste donc à migrer vers Python 3, lancé en décembre dernier.

Migration vers Python 3.7 et au-delà

« Si vous souhaitez utiliser les dernières fonctionnalités de vos modules favoris, vous devez utiliser Python 3. Plus vous tardez, plus les versions Python 3 de vos dépendances auront changé, et plus la mise à jour sera difficile », a ajouté l'organisation.

Le NCSC n'est pas le seul à promouvoir la migration vers la v3.x.

Plus de 100 projets de l'écosystème Python, dont TensorFlow, Requests, Scikit-learn et Apache Spark, ont annoncé abandonner Python 2.x, dans le but d'intégrer Python 3.

La communauté suit, à son rythme.

Selon la Python Software Foundation (PSF), Python 3 (v3.6 et 3.7) était utilisé par 84% des développeurs de l'écosystème début 2019, contre 16% pour Python 2.x.

C'est là où le bât blesse.

Malgré les inquiétudes concernant la sécurité, des paquets en 2.x seraient encore téléchargés « des millions de fois par mois » (données de juin 2019). « Même si une partie seulement de ces téléchargements sont utilisés dans des projets live, la fin de vie de Python 2 pourrait potentiellement affecter la sécurité de millions de systèmes », a prévenu le NCSC.

La rédaction vous recommande