NCSC warns organisations to ditch Python 2 before it hits end of life

The National Cyber Security Centre (NCSC) has advised organisations still using Python 2 code to port it to Python 3 as soon as possible before it goes end of life at the turn of the new year.
The cyber security arm of GCHQ said that because Python's core developers will stop working on updates, vulnerabilities in the code will go unpatched and leave organisations vulnerable to cyber attacks.
Moreover, if an organisation is maintaining a library written in Python 2 that other people depend on, then those dependencies are being delayed in their own upgrades which, in turn, adversely affects their cyber security resilience.
"If you continue to use unsupported modules, you are risking the security of your organisation and data, as vulnerabilities will sooner or later appear which nobody is fixing," said the NCSC in a blog post.
Outlining the scale of the problem, the NCSC showed data from June 2019 of the ten most popular Python packages downloaded by millions every month. It showed the majority of the packages were still written predominantly in Python 2 and the ones like Flask which were written mainly in Python 3, still had around a third of their content in the soon-to-be EOL version.
"Even if only a portion of these downloads are being used in live projects, the Python 2 EOL could potentially affect the security of millions of systems," said the security body.
It's important for organisations to fully migrate over to Python 3 as the way to the two languages are structured could create code incompatibilities in their libraries.
For example, text strings are stored differently in the two languages as Python 2 stores in ASCII which uses 8-bit encoding whereas Python 3's Unicode uses variable bit encoding so it will support most written languages while ASCII won't.
"The impending end-of-life of Python 2 illustrates both the importance of managing a complex software supply chain of third-party components and platforms, as well as the critical need for updates," said Jonathan Knudsen, senior security strategist at Synopsys. "Customers will avoid or ignore updates that are not drop-dead simple, or automatic, which can result in stale deployments that are plagued by bugs that have already been fixed."
Python 3 is essentially a more intelligent language that comes bundled with lots of new features that makes coding easier and less convoluted. It irons out some annoying features of Python 2 such as integer division which would previously round down to the nearest whole number.
The NCSC recognises that porting all of an organisation's code to a new language can be a daunting task, but there are tools out there to help make it easier.
'Can I Use Python 3' is a program which will scan projects for dependencies that will prevent porting to Python 3, while '2to3' is a tool which will attempt to port Python 2 source code into 3.
The official Python website will also have documentation that organisations will find helpful and links to free resources to help further with the process.
source itpro
Industry: Cyber Security

Latest Jobs
-
- CIAM Architect Azure B2C
- N/A
- N/A
-
We are seeking a highly skilled and experienced Azure B2C CIAM Architect for a contract starting on Jan 2024. As an Azure B2C CIAM Architect, you will be responsible for designing, implementing, and deploying an new Azure B2C Solution . Responsibilities: Design and implement an Azure B2C-based CIAM solution that meets the needs of our clients organization. Maintain and support the Azure B2C-based CIAM solution. Provide training and support to our employees on the use of the CIAM solution. Background designing, implementing, and maintaining CIAM solutions. Experience with cloud-based identity and access management (IAM) solutions. Experience with OAuth, OpenID Connect,and SAML. Excellent written and verbal communication skills
-
- Senior IAM Consultant
- Germany
- Upto €110,000 depending on level of position
-
Senior IAM Consultant is needed to help lead and deploy IAM Projects for this expand IAM Consultancy The ideal candidate will have a deep understanding of IAM concepts and technologies, as well as experience in deploying and managing complex IAM solutions. Responsibilities Lead the deployment of IAM solutions for our clients Work with clients to understand their IAM requirements and design solutions that meet their needs Configure and implement IAM solutions using best practices Integrate IAM solutions with other enterprise systems Provide training and support to clients on the use of IAM solutions Stay up-to-date on the latest IAM technologies and trends We are looking for an experieneced IAM Consutlatn with: Strong understanding of IAM concepts and technologies,including identity lifecycle management,access control,and authentication Experience in deploying and managing complex IAM solutions Experience with IAM products and solutions,such as SailPoint,One Identity Manager,and Azure Active Directory Excellent communication and interpersonal skills Ability to work independently and as part of a team Fluent in German Candidates witll need to live and have the right to work within Germany to be considered.
-
- Security Architect - SOC Design - Outside IR35 London. SC / DV cleared
- London
- Outside IR35
-
Security Architect - With in-depth SOC Design experience needed for Outside IR35 London. SC / DV cleared. 6 month rolling Immediate Experience delivering technical Security Architecture design / assurance of security design with mobile network experience. HLD / LLD Current SC Clearance a must. Willingness to undertake DV. London 3 days a week Immediately interviewing.
-
- Cyber Security Risk Consultant. UK. Hybrid. Home | Work balance
- United Kingdom
- N/A
-
Cyber Security Consultancy - done the right way. Seeking a passionate Cyber Security Risk Consultant who enjoys helping clients make a different to their business. Warning- if you want a large, slow moving, high politics, high travel security consultancy that demands their a pound of flesh this is NOT for you. A successful individual will have experience working with clients to identify business cyber security risk. This is a remote first opportunity which means you will spend the majority of your time working remotely. You will however spend some time meeting clients as well as meeting up with the team on a monthly basis.. Some of the nice to have certifications. CRISC, ISO27001 Lead implementer, CISA, CISM, CISSP Along with dedicated training budgets, unlimited holiday and a structured career path, this opportunity will give a much needed work life balance. Unable to offer Visa sponsorship now or in the future. Apply and book a call in my diary with the below