PHP vulnerabilidades blog

Problemas en servidores web por versión de PHP obsoleta

Datos de interés sobre PHP:

El PHP es un lenguaje de scripting, que ayuda a las personas a hacer que las páginas web sean más interactivas, al permitirles poder realizar más acciones. Es un lenguaje del lado del servidor diseñado para el desarrollo web, aunque también es usado como un lenguaje de programación general.

Por ejemplo, con PHP un sitio web puede hacer cosas como tener usuarios y contraseñas. Si un sitio web no está programado con lenguajes como PHP, no puede hacer la mayoría de las cosas a las que estamos acostumbrados aparte de mostrar texto, enlaces e imágenes de forma simple.

Aproximadamente el 78% de todos los sitios web, utilizan alguna versión de PHP como motor principal de funcionamiento, pero la mayoría usa versiones viejas.

Toda la rama actual de las versiones 5.x de PHP son sumamente antiguas, PHP 5.6 se lanzó en agosto de 2014, su soporte activo terminó en 2017, hace casi dos años. Su soporte de seguridad se acaba, como ya dijimos, a finales de 2018. La versión más reciente es PHP 7.2, que fue lanzada en noviembre de 2017 y que tendrá soporte de seguridad hasta noviembre de 2020.

WordPress por ej., es uno de los sistemas de gestión de contenidos más usados y conocidos, que recomienda en su página de requerimientos técnicos el uso de PHP 7.2, pero explican que siguen soportando PHP 5.2.4 y posteriores, a pesar de advertir que son versiones sin soporte y que podrían exponer tu sitio a vulnerabilidades de seguridad.

¿Por qué suele ser tan lento el proceso de actualización de las nuevas versiones de PHP?

Los principales factores pueden ser los siguientes:

  • Gran parte de los clientes o empresas que utilizan este sistema no conocen ni les importa su versión de PHP. Esto, por supuesto, es comprensible en algunos casos, ya que no esperamos que todos lo sepan. Muchas veces esta responsabilidad recae en sus desarrolladores, agencias o empresas de hosting, que quizá no asesoren a las empresas de la manera correcta o cuando es necesario.
  • A los desarrolladores les lleva tiempo actualizar su código, para admitir versiones más nuevas de PHP. Esto incluye también aquellos que desarrollan sitios web, temas, complementos, etc. Por lo tanto se requiere un esfuerzo y cierto tiempo para actualizar el código, así como realizar las diferentes pruebas para garantizar la compatibilidad.
  • El gasto de estos recursos para los desarrolladores o agencias, a veces no es rentable si el cliente final no comprende la importancia de actualizar las diferentes versiones y la importancia que requiere, para asumir estos costes.

Después de analizar estas lineas, ya no hay excusa para utilizar versiones de PHP que están obsoletas, no son compatibles y en realidad podrían estar ralentizando su sitio web o poniendo en riesgo de seguridad a los servidores.

Razones por las que debe actualizar las versiones de PHP:

1. Seguridad

Una de las razones más importantes para actualizar PHP es asegurarse de que esté ejecutando una versión que sea totalmente compatible y que se revise regularmente para detectar vulnerabilidades de seguridad. Por ej. PHP 5.4 no ha sido parcheado desde 2015. Y PHP 5.5 no ha sido parcheado desde 2016. Sin embargo, es importante tener en cuenta que algunos proveedores de sistemas operativos aún actualizan versiones anteriores de PHP si es necesario.

2. Rendimiento

Con las nuevas versiones de PHP 7.2 y PHP 7.3 se han obtenido enormes ganancias en rendimiento. Tan importante, de hecho, que debería ser una prioridad sobre muchas de las pequeñas optimizaciones con las que podríamos trabajar en tu sitio de WordPress por ejemplo.  A partir de PHP 7, nos permite que el sistema ejecute el doble de solicitudes por segundo en comparación con PHP 5.6, a casi la mitad de la latencia.

3. Soporte

El soporte oficial es otra razón por la que deben utilizar las versiones PHP más recientes y compatibles. Para disponer de las garantías de que todas nuestras aplicaciones web y servidores trabajan de la manera correcta. Puede haber serios problemas de seguridad y compatibilidades de los diferentes dispositivos, si no trabajamos con las versiones actuales de PHP.