DEV Community ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ‘จโ€๐Ÿ’ป

nabbisen
nabbisen

Posted on • Updated on • Originally published at scqr.net

Log4j 2: New vulnerability on DoS in 2.16.0 and below

Log4j 2.17.0 was released due to security reason. It fixes DoS vulnerability in 2.16.0 and below on v2.

As to the new vulnerability on DoS (denial-of-service), it's safe with a default Pattern Layout where a Context Lookup such as $${ctx:loginId} are NOT used in logging configuration.
Otherwise, the CVSS score is 7.5 and the severity is high.

On Log4j 2 with custom Pattern Layout with Context Lookups such as $${ctx:loginId}, updating its version to 2.17.0 is recommended to fix the vulnerability called CVE-2021-45105. It can cause service down.

Alternatively, it can be mitigated to replace Log4j 2 non-default Context Lookups with Thread Context Map patterns (%X, %mdc, or %MDC) or to reduce references to them in configuration,
thanks to The Apache Software Foundation effort and information:
https://logging.apache.org/log4j/2.x/security.html


This post is based on the tweets by my company.

Top comments (3)

Collapse
 
cubikca profile image
Brian Richardson

Unfortunately there's no way of knowing if a third-party vendor has a weird logging configuration and a vulnerable version of Log4j. This makes update #3 now. My company's approach was to block the payload protocols to external hosts first, then focus on finding and patching. This has worked well for us: all logged attempts were blocked and would have used LDAP anyway, which was blocked.

Collapse
 
nabbisen profile image
nabbisen

Exactly. It's available to detect Log4j version and configuration and also update it only when you are able to own it or at least customize.

Thank you for sharing knowledge and effort of your company๐Ÿ˜ƒ

Collapse
 
Sloan, the sloth mascot
Comment deleted

An Animated Guide to Node.js Event Lop

Node.js doesnโ€™t stop from running other operations because of Libuv, a C++ library responsible for the event loop and asynchronously handling tasks such as network requests, DNS resolution, file system operations, data encryption, etc.

What happens under the hood when Node.js works on tasks such as database queries? We will explore it by following this piece of code step by step.