@ceki @remkop – it is not exactly true that it doesn’t suffer from lookup issue though. If you look at how jndi works in 1.x you will find that there are two places where lookups are done – that is JMSAppender.java:207 and JMSAppender.java:222 – if you set TopicBindingName or TopicConnectionFactoryBindingName to something that JNDI can handle – for example “ldap://host:port/a” JNDI will do exactly the same thing it does for 2.x – so 1.x is vulnerable, just attack vector is “safer” as it depends on configuration rather than user input Featured Content Adsadd advertising heresun.jndi.ldap.LdapRequest.getReplyBer(LdapRequest.java:133) at java.naming/com.sun.jndi.ldap.Connection.readReply(Connection.java:443) at java.naming/com.sun.jndi.ldap.LdapClient.ldapBind(LdapClient.java:365) at java.naming/com.sun.jndi.ldap.LdapClient.authenticate(LdapClient.java:192) at java.naming/com.sun.jndi.ldap.LdapCtx.connect(LdapCtx.java:2895) at java.naming/com.sun.jndi.ldap.LdapCtx. at java.naming/com.sun.jndi.url.ldap.ldapURLContextFactory.getUsingURLIgnoreRootDN(ldapURLContextFactory.java:60) at java.naming/com.sun.jndi.url.ldap.ldapURLContext.getRootURLContext(ldapURLContext.java:61) at java.naming/com.sun.jndi.toolkit.url.GenericURLContext.lookup(GenericURLContext.java:204) at java.naming/com.sun.jndi.url.ldap.ldapURLContext.lookup(ldapURLContext.java:94) at java.naming/javax.naming.InitialContext.lookup(InitialContext.java:409) **at org.apache.log4j.net.JMSAppender.lookup(JMSAppender.java:245)** **at org.apache.log4j.net.JMSAppender.activateOptions(JMSAppender.java:207)** at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307) at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:172) at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:104) at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:842) at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:768) at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:648) at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:514) at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:580) at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:526) at org.apache.log4j.LogManager. at org.apache.log4j.Logger.getLogger(Logger.java:104) at testexploit1. log4j: Parsed “jms” options. log4j: Parsing for [org.apache.activemq] with value=[INFO, stdout]. log4j: Level token is [INFO]. log4j: Category org.apache.activemq set to INFO log4j: Parsing appender named “stdout”. log4j: Appender “stdout” was already parsed. log4j: Handling log4j.additivity.org.apache.activemq=[null] log4j: Finished configuring. “>
|
