JDK

Disponibles JavaSE 8u40, JavaSE 7u79/80 y EOL de la rama 7

Logo de Java

Logo de Java

Siguiendo el calendario previsto, ya tenemos aquí April 2015 Critical Patch Update de Oracle. Esta vez tenemos 14 problemas de seguridad en Java de los cuales 3 son explotables en instalaciones en servidor. Ademas, las tres vulnerabilidades (CVE-2015-0469, CVE-2015-0459 y CVE-2015-0491) tienen un CVSS Base Score de 10. Peligrosas a mas no poder. Si no quieres estar expuesto a estas vulnerabilidades (ni a las descubiertas anteriormente) solo tienes que actualizar a la ultima versión de la rama del JDK que estés utilizando. Para la versión 7 tienes la 7u79/80 y para la 8 la 8u45.

Como avise hace un tiempo, coincidiendo con este CPU de Abril, llega la ultima de las actualizaciones publicas del JDK7. Esta rama ha llegado a su EOL y a partir de ahora tienes tres opciones.

  • Arriesgarte y seguir usando el JDK7 sin soporte: seguirán apareciendo bugs, pero no podrás parchear tu instalación. Dependerás de la suerte.
  • Pagar el soporte de Oracle: en este caso tendrás soporte extendido hasta 2022.
  • Migrar al JDK8: si optas por esta opción, tendrás actualizaciones gratuitas hasta Marzo de 2017

Para mas detalles, puedes consultar el roadmap aquí. Lógicamente, yo te recomiendo las dos ultimas opciones. La primera es arriesgada, y lo digo desde la experiencia. Si el proveedor de la aplicación no te la certifica para el JDK8 y no hay dinero para soporte, no hay mucho mas que tu puedas hacer. Bueno, si puedes hacer algo mas. Redacta un informe alertado a tus responsables del riesgo y de las posibles soluciones. Solo por si acaso.

Tienes mas información en las releases notes del JDK8 .

Y si estas buscando esta versión en concreto, pero ya no la ves en la página de descarga, prueba en el archivo de Oracle.

Los servidores mas usados en 2015 segun Plumbr

Hace un par de años ya te hablé de Plumbr, la herramienta de detección de memory leaks para aplicaciones java, y de sus estadísticas. Los resultados han cambiado bastante con respecto a años anteriores, pero puede deberse al cambio de rol de la herramienta. Si hace dos años se trataba de una herramienta de desarrollo, ahora es mas una solución de motorización, así que cada vez refleja mas lo que nos podemos encontrar en entornos de producción.

Han analizado 758 instalaciones y han conseguido identificar el proveedor de 554 de ellas. Cosas destacables: Tomcat pasa del 40% al 60% de las instalaciones, Jetty se queda a un tercio de los resultados anteriores y WebLogic dobla su presencia.

La situación actual es esta (pulsa para agrandarla):

 

Utilización de servidores de aplicaciones en 2015. Fuente: Plumbr

Utilización de servidores de aplicaciones en 2015. Fuente: Plumbr

 

Y la evolución temporal esta:

 

Evolución de los servidores de aplicaciones hasta 2015. Fuente: Plumbr

Evolución de los servidores de aplicaciones hasta 2015. Fuente: Plumbr

 

Con respecto a la versión del JDK utilizado, nos encontramos la evolución esperada en términos de adopción de nuevas versiones, y alguna cosa que directamente da miedo. Para empezar, Java7 domina domina el mercado, habiendo tocado techo. Java8 va subiendo y Java6 camino de desaparecer. Como te decía, lo esperado.

La situación actual es esta:

 

Utilización de las versiones del JDK en 2015. Fuente: Plumbr

Utilización de las versiones del JDK en 2015. Fuente: Plumbr

 

Y la evolución temporal esta:

 

Evolución de las versiones del JDK hasta 2015. Fuente: Plumbr

Evolución de las versiones del JDK hasta 2015. Fuente: Plumbr

 

Ya hora lo que me ha dado miedo: mira las versiones de Java7 que se están usando:

 

Utilización de las diferentes versiones de Java7 en 2015. Fuente: Plumbr

Utilización de las diferentes versiones de Java7 en 2015. Fuente: Plumbr

 

Prácticamente nadie utiliza la ultima versión y el 20% de los servidores están utilizando versiones anteriores a la 1.7.0_45, que contienen mas de 100 bugs de seguridad que son perfectamente conocidos y explotables. Por favor, actualiza tu base de servidores siempre que sea posible. Ganaras en tranquilidad. Si no quieres o no puedes mirar continuamente la página de Oracle, puedes suscribirte al blog y yo te avisaré.

Puedes ver los artículos completos aquí y aquí.

Nueva versión del JDK: disponible JavaSE 8u40

Logo de Java

Logo de Java

Tenemos nueva versión del JDK: la 8u40. Con esta nueva versión del JDK se ha añadido una nueva feature comercial que denominan gestión de memoria cooperativa. Utilizan el concepto de “presión de memoria”. La presión de memoria es una propiedad que representa el uso total RAM en el sistema. Cuanto mayor sea la presión de memoria, mayor es la probabilidad de que el sistema se quede sin memoria.

Cuando la presión de la memoria aumenta, el JDK tratará de reducir su uso de memoria, básicamente mediante la reducción del Heap. Conseguiremos que el sistema no se cuelgue, pero el rendimiento del servidor disminuirá. No se puede tener todo.

Como decía al principio, se trata de una característica comercial y solo la podrán usar (legalmente) aquellos que paguen. Puedes ver mas detalles de esto y el resto de mejoras en las releases notes.

Y como en otras ocasiones, si has entrado en este post buscando esta versión en concreto, pero ya no la ves en la página de descarga, prueba en el archivo de Oracle.

Oracle publica Java SE 8u31 y Java SE 7u75/76

Logo de Java

Logo de Java

Enmarcados dentro del January 2015 Critial Patch Update, Oracle ha publicado nuevas versiones del JDK. Se trata de las versiones 8u31, CPU 7u75 y PSU 7u76. En anteriores distribuciones vimos en que consistía la diferencia entre CPU y PSU. En la Pagina de Oracle puedes ver la explicación completa.

También es importante que recuerdes que Java SE 7 se esta acercando al final de su ciclo de vida. En Abril esta previsto que se acaben las distribuciones publicas. Lo ideal es, como no, actualizar tus servidores java a la versión 8. Pero como el mundo no es perfecto, si no resulta posible siempre puedes pagar a Oracle por soporte ampliado. Tienes el roadmap aquí.

Volviendo al tema del Critical Patch Update, esta versión corrige 19 problemas de seguridad, de los cuales solo dos afectan a una instalación en modo server y no son muy serios. Pero esto es lo de menos. Lo importante es que por defecto se desactiva uso de SSL3, que como hemos visto anteriormente en otras entradas, es un protocolo obsoleto y bastante vulnerable. Aquí puedes ver el detalle de los problemas de seguridad corregidos.

Como en otras ocasiones, si has entrado en este post buscando esta versión en concreto, pero ya no la ves en la página de descarga, prueba en el archivo de Oracle.

Actualizacion del JVM: disponibles Java SE JDK 7u71 (CPU), 7u72 (PSU) y 8u25

Logo de Java

Logo de Java

Dentro del October 2014 Critical Patch Update, Oracle pone disponibles para descarga nuevas versiones de Java SE con el fin de corregir varias vulnerabilidades y corregir algunos errores. Dado que algunas de las vulnerabilidades son explotables en remoto en modo servidor, te recomiendo encarecidamente que actualices en cuanto te sea posible las maquinas virtuales de los servidores de aplicaciones que administres. La lista de vulnerabilidades es larga y de categoría. Particularmente me ha preocupado la CVE-2014-6457.

Te habrás dado cuenta por el titulo del post que esta vez se han publicado dos versiones de Java7. Por un lado tenemos la 7u71 (CPU). Esta versión corrige todas las vulnerabilidades que hemos mencionado antes. CPU quiere decir Critical Patch Update. Por otro lado tenemos la 7u72 (PSU) que contiene los mismos parches de seguridad que la u71, pero ademas añade correcciones de bugs menores. Es decir, que si no te afecta alguno de ellos es mejor quedarse en la u71. PSU quiere decir Patch Set Update. Si tienes dudas puedes ver eso con mas detalles en la pagina de Oracle.

Otros enlaces de interes:

Java SE 1.7.x Update Release Notes
JDK 7u71 release – Bug Fixes
JDK 7u72 release – Bug Fixes
Java Development Kit 8 Update Release Notes

Si por algún motivo has entrado en este post buscando esta versión en concreto, pero ya no es la última y no la ves en la página de descarga, prueba en el archivo de Oracle. Y puedes consultar la End of Life de cada rama en el Roadmap.

Ir arriba