El uso continuo de Python 2 aumentará los riesgos de seguridad



Con el soporte para el lenguaje de programación que ya no está disponible, las organizaciones deberían migrar a Python 3, dicen las investigaciones de seguridad.

Casi cinco meses después de que Python Computer software Foundation finalmente terminara el soporte para el lenguaje de programación Python 2, muchos desarrolladores continúan usándolo, lo que aumenta los riesgos de seguridad para sus organizaciones en el proceso.

El soporte para Python 2 finalizó el 1 de enero de 2020. Python Software package Basis ha dejado de realizar actualizaciones de mejoras o arreglos de seguridad y ha instado a todos los que usan Python 2 a pasar a Python 3.

La decisión significa que las organizaciones que usan Python 2 probablemente estarán solas si surgen problemas de seguridad importantes, nuevos y heredados, en el program. Los problemas de seguridad que se descubren en Python 3 no se comprobarán en Python 2, lo que deja a las organizaciones vulnerables a posibles ataques.

«Si las personas encuentran problemas de seguridad catastróficos en Python 2 o en un computer software escrito en Python 2, entonces la mayoría de los voluntarios no ayudarán a solucionarlos», señaló Python Application Basis sin rodeos en su Python 2 anuncio de fin de vida.

Python 2. fue lanzado en 2000 y continúa siendo un lenguaje de programación common entre los desarrolladores. Aunque su uso ha disminuido en los últimos años, un porcentaje relativamente alto de aplicaciones Python en empresas se basan en Python 2.

De hecho, en junio de 2019, y mucho después de que Python Application Foundation anunciara el fin de la vida útil de Python 2, los paquetes Python más populares que se descargaron del Índice de paquetes Python todavía eran versiones de Python 2.

«Incluso si solo una parte de estas descargas se utilizan en proyectos en vivo, la EOL de Python 2 podría afectar la seguridad de millones de sistemas», dijo el Instituto Nacional de Seguridad Cibernética del Reino Unido. prevenido en un weblog el pasado agosto.

Una encuesta de 1.200 individuos realizada por ActiveState entre octubre pasado y noviembre mostró que el 31% de las organizaciones no tenía un program para migrar a Python 3. El 37% de los encuestados dijo que más de la mitad de todas las aplicaciones de Python en sus organizaciones estaban basadas en Python 2. Alrededor del 48% de Las organizaciones que lo utilizaban eran pequeñas, con menos de 100 empleados. Pero casi una de cada tres (29%) organizaciones que usan Python tenía 1,000 o más empleados.

«Python 2 se united states of america ampliamente en entornos empresariales», dice Thomas Hatch, CTO y cofundador de SaltStack, un proveedor de software package de automatización de TI. «No se united states of america para crear código nuevo con tanta frecuencia como Python 3 hoy en día, pero todavía está ampliamente desarrollado y desplegado».

Una razón tiene que ver con un «si no está roto, no arregles la mentalidad», dicen los analistas de seguridad. En muchos casos, las organizaciones han utilizado con éxito Python 2 durante años sin incidentes. También ha tenido muy pocos problemas de seguridad.

Desde 2008, Python 2 y Python 3 juntos solo han tenido 49 vulnerabilidades, con 20 etiquetadas como corrupción de memoria, ejecución de código o desbordamientos, dice Shane Fry, vicepresidente de ingeniería de seguridad de RunSafe Safety. «(Eso) es un número súper bajo de CVE en comparación con otros paquetes de software package populares», dice.

Hatch estuvo de acuerdo. «Python2 ha sido sólido como una roca», dice. Los investigadores han auditado Python 2 por problemas de seguridad muchas veces a lo largo de los años y no han encontrado una vulnerabilidad crítica en mucho tiempo. Entonces, «aunque se recomienda encarecidamente actualizar todo el código activo a Python3, no es una situación de disaster», dice Hatch.

Código de inercia
La estabilidad de la seguridad y la inercia del código no son las únicas razones por las que algunas organizaciones han tardado en migrar de Python 2 a Python 3. Otra razón importante es que muchas organizaciones están luchando por encontrar paquetes de Python 3 que ofrezcan la misma funcionalidad en la que han llegado a confiar. de los homólogos de Python 2, dice Jeff Rouse, vicepresidente de producto en ActiveState.

«Además, para grandes bases de código, el cambio puede ser muy largo y requiere una inversión sustancial», dice Rouse.

Otras razones que los clientes de ActiveState han ofrecido para la migración lenta o retrasada a Python 3 incluyen desafíos asociados con la necesidad de admitir aplicaciones de Python 2 al mismo tiempo que migran a Python 3, aprenden a codificar en Python 3 y administran las expectativas, dice.

«Python 2 está demostrando ser un hábito particularmente difícil de patear», dice Rouse. Hasta hace poco, muchos sistemas operativos populares, incluido MacOS, continuaron incorporando Python 2 como instalación predeterminada. Otros sistemas operativos, como Debian y SUSE, admitían Python 2 y 3 listos para usar. De hecho, no fue hasta junio de 2017 que los usuarios de Python 3 comenzaron a superar en número a los usuarios de Python 2, señala Rouse.

Jonn Callahan, consultor principal de seguridad en el proveedor de seguridad de aplicaciones nVisium, dice que aunque una organización puede no tener problemas con Python 2, todavía es una buena strategy portar a Python 3. No actualizar una tecnología solo porque funciona es lo que resulta en organizaciones que acumulan cantidades insalvables de deuda técnica, señala Callahan.

«La verdad es que las aplicaciones requieren un mantenimiento normal, incluso si no se introduce nada &#39nuevo&#39», dice.

Es importante destacar que, aunque no hay datos que respalden el mayor interés de los investigadores o atacantes en apuntar a Python 2, Python es uno de los lenguajes más utilizados en la creación de programas de malware y herramientas de seguridad, dice Rouse. Entonces, a medida que la tecnología avanza y las técnicas de ataque evolucionan, también debe hacerlo el código para repelerlas.

«Un lenguaje de programación central necesita mantenimiento continuo para mantenerse seguro», señala. Es importante destacar que el uso de código no admitido podría generar problemas de cumplimiento tanto interna como externamente con respecto a mandatos como PCI DSS, señaló ActiveState.

Si bien muchas organizaciones pueden tener buenas razones para no querer migrar a Python 3, la tarea de mudarse de Python 2 también se ha vuelto mucho más fácil con los años, dice SaltStack&#39s Hatch.

«El problema principal en el pasado era tener que esperar a que las bibliotecas de soporte se trasladaran a Python 3, pero esto se ha hecho con prácticamente todas las bibliotecas de Python mantenidas en este momento», dice Hatch. Además, actualmente hay muchas herramientas disponibles que permiten a las organizaciones escanear y actualizar grandes porciones de código Python 2 para ellos, dice.

Contenido relacionado:

Jai Vijayan es un experimentado reportero de tecnología con más de 20 años de experiencia en periodismo comercial de TI. Recientemente fue editor sénior en Computerworld, donde cubrió temas de seguridad de la información y privacidad de datos para la publicación. En el transcurso de sus 20 años … Ver biografía completa

Más tips





Enlace a la noticia initial