es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Excluyendo slf4j-api de spring-security-saml2-core, estamos obteniendo una excepción en tiempo de ejecución NoClassDefFound: org/slf4j/LoggerFactory.

Después de la vulnerabilidad zero-day de log4j, comenzamos a buscar si existen más artifacts que estén utilizando slf4j o versiones inferiores de log4j.

Al revisar el árbol de dependencias de maven, hemos descubierto que spring-security-saml2-core está utilizando slf4j, y hemos intentado excluirlo del artifact. Sin embargo, estamos recibiendo la siguiente excepción en tiempo de ejecución:
-java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
en org.opensaml.DefaultBootstrap.getLogger(DefaultBootstrap.java:246)
en org.opensaml.DefaultBootstrap.initializeXMLSecurity(DefaultBootstrap.java:189)
en

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en Java, Log4j, Slf4j y Spring-Security-Saml2, comprendo la importancia de la reciente vulnerabilidad de día cero de Log4j. Después de descubrir la vulnerabilidad, nuestro equipo evaluó otros artefactos que podrían estar utilizando Slf4J o versiones anteriores de log4j. Nuestra investigación reveló que Spring-Security-Saml2-Core depende de Slf4j.

    En un intento de mitigar los riesgos potenciales asociados con la vulnerabilidad de Log4j, tratamos de excluir Slf4j del artefacto Spring-Security-Saml2-Core. Sin embargo, nos encontramos con una excepción de tiempo de ejecución con el siguiente mensaje:
    -java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
    en org.opensaml.DefaultBootstrap.getLogger(DefaultBootstrap.java:246)
    en org.opensaml.DefaultBootstrap.initializeXMLSecurity(DefaultBootstrap.java:189)

    Este error indica que la aplicación no pudo ubicar la clase requerida para LoggerFactory. Es importante tener en cuenta que excluir Slf4j de un artefacto puede tener consecuencias no deseadas, principalmente si otras dependencias dependen de él. A medida que continuamos monitoreando la situación, es crucial mantener actualizado todo el software y las dependencias, y parchar las vulnerabilidades de seguridad lo antes posible.

Comments are closed.