-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace log4j2 with tinylog2 + slf4j bridge #8007
Comments
Historic remark: In 2017, I replaced our hole logging by jcabi framework at #3015. Two concerns:
In last devcall we discussed that we want to keep slf4j. - For me, it would be OK to even go away from slf4j for logging our things in case this increases startup time. |
This will probably fix #5475 (refs #5475 (comment)). |
log4j seems to have a critical software issue. Germany's federal ministry for information security put it on code red: |
JabRef uses version 3.x snapshot. Gets automatically updated. And JabRef does not really log user input and is not running on a server. |
Ah nice, this critical security issue seems to affect versions 2 .0 - 2.14 only. Not relevant for Jabref then :) Edit: But what about Jabref 5.3? :O
This would mean that Jabref 5.4 should be dropped soon, no? |
We expect to be able to release 5.4 in the next few days / two weeks. |
It does not have to run on a server to be targeted, a compromised BibTeX/BibLaTeX database distributed by mail or downloaded could've been enough if JabRef was vulnerable. The file format is commonly exchanged by various means and is not generally suspected of malicious content, so if it were possible to load executable code through this with a well-placed string, it's not hard to imagine it being used as a delivery method for worms or ransomware targeting researchers. It at least appeared to me as if there might be some candidates too, e.g. from bibfile directly, from PDF annotations and presumably user input, but I did not look into it further after finding the log4j version string. |
Does that really mean it's not vulnerable though? Isn't the "3.0.0-SNAPSHOT" version of log4j just whatever is currently on the master branch? At least I can't find any actual released versions with that version number anywhere, and nobody seems to mention it when talking about the log4shell vulnerability. If that is the case, then anyone building JabRef before 12th December would have a vulnerable version (including the 5.3 binaries distributed on the release page that were built on 5th July). |
No idea though, but seems possible. There might be more differences between 2.x and 3.x. However, we are preparing a release in the next days which will then include the latest available version. |
Just for the record:
|
Could you please comment on where on the Windows distribution one would replace the log4j2 or mitigate it? |
You would need to put the agent into the folder runtime\bin and modify the jabref.bat start script and add it to the command line arguments before the "-m" e
|
Good news, we just merged #8226 into the main branch, so in 5.4 Tinylog will be used instead of log4j. |
We always get this Logger error messages on startup and we use a snapshot version of log4j2 which will probably take a long time until it's stable.
We already use slf4j as a Logger interface, so switching to another underlying logger should not be that complicated. Most stuff should be compatible.
We currently use slf4j-2.0.0. This requires at least tinylog 2.4
https://tinylog.org/v2/download/#slf4j
What needs to be changed?
The text was updated successfully, but these errors were encountered: