Tenemos una aplicación web Java contenida en una instancia de apache tomcat. La versión de JRE es 7.0.51 y la versión de Tomcat es 7.0.42.
Los usuarios han expresado su preocupación por el hecho de que Oracle 7 haya suspendido el soporte / las actualizaciones en abril de 2015 y han solicitado que la versión de Java del entorno se actualice a la versión 8. Sin embargo, al hacerlo, tememos que el comportamiento de la aplicación pueda cambio, como hemos observado durante la codificación y las pruebas cuando uno de los desarrolladores estaba usando JRE 8 en lugar de 7. Esto también podría significar que necesitaríamos actualizar las bibliotecas de terceros que usamos, como OJDBC e incluso actualizar la versión de Tomcat. / p>
Mi pregunta es:
- ¿Cuáles son los problemas de seguridad si queremos mantener una versión antigua de JRE?
- ¿Qué podemos hacer para mitigar los problemas de seguridad?
- ¿No es responsabilidad de las funciones de seguridad del servidor web, del equilibrador de carga (y de esas características) evitar problemas de seguridad para las versiones de Java que supuestamente admiten?
Editar
Todos ustedes sugirieron que es necesario actualizar la versión de Java de un servidor. Sin embargo, esta es una aplicación grande y muy compleja con muchas dependencias; la actualización significaría realizar pruebas de regresión costosas en todo el sistema. Mis preguntas adicionales son:
- ¿El riesgo supera los costos incurridos? ¿Son tan buenos los riesgos para justificar pruebas adicionales y la posible recodificación?
- ¿Cómo puede un atacante malintencionado explotar una versión obsoleta de Java? Según entiendo, los servicios / puertos que se comunican directamente con usuarios externos son el único punto de entrada a un ataque desde Internet (suponga que no hay ataques internos). Entonces, ¿no es el trabajo del sistema operativo y los servicios garantizar que no haya errores explotables?