Oh wow. I didn't realise there has been yet another log4j update because of anew vulnerability. We're now up to 2.17.
This new one is harder to exploit, and is not an RCE so it's not as bad, but still. This is just more proof that log4j s an overengineered mess. I've been of this opinion for years.
I'm not going to claim credit for predicting this, because I never actually saw it as a huge security vulnerability. I just considered it something that people spend far too much effort on. When you're invested in a piece of software, you keep tinkering with it and add new features when none are needed. Logging should be a solved problem, and Java already comes with a logging API. log4j has no real reason to exist other than momentum.
@loke is JUL a good logging API though?
Being also a Python coder, I'm sympathetic to the idea that we'd all be better off if the standard library logging framework was used by everyone. Java developers somehow missed making a particularly good framework. Maybe, eventually slf4j and log4j enter the java.* namespace in the way joda time did...
one developer's journey from JUL: https://stackoverflow.com/questions/11359187/why-not-use-java-util-logging
@loke I'm not saying you're wrong about log4j bring over-engineered, just that it has a reason for being
@loke oh no, don't be angry 😣😁
I'm not going to dig through log4j's history to see whether there was a feature request for the jndi junk, but I'd hope there was a legit reason for it. as I understand, the real f'd up thing is in how variable resolution is designed and implemented. it's wild that resolution of vars like that is even possible in the message string vs the code that handles the format string from logging system configuration.
it's also wild to me that library devs wouldn't take the approach you describe for extensibility if it is possible. I have an idea, then I have to get it out, (and make it useful because I'm a nice guy) but then I'm doing my best to make anything outside of the core very not my problem. no interest in building my own prison