Hacker News new | ask | show | jobs
by marginalia_nu 1474 days ago
System.out.println, or some thin wrapper there-around.

Most of what log4j does is stuff that arguably should be done outside of the application, such as log rotation and piping to file and what have you.

1 comments

I mean, dependencies outside of your application are still dependencies. I trust, say, systemd somewhat more than I trust log4j (although both would very much be in my "broadly trustworthy" category), but a few years back there was the shellshock vulnerability, so it's not like system components are somehow immune here.
The difference with external dependencies is that they are in a sense independent from your code. The real devastating aspect with log4shell is that log4j couples and integrates itself with deployed code.

You can't just upgrade log4j without pushing a new release of your applications in the way you can say roll out an updated nginx or logrotate or kibana or whatever.