| CVE ID | CVE-2021-44228 |
| Affected software | Apache Log4j 2, versions 2.0-beta9 through 2.14.1 |
| Severity | CVSS 10.0 (Critical) — the maximum possible score |
| Fixed in | Log4j 2.15.0, then fully hardened in 2.17.1 |
| Disclosed | December 9, 2021 |
What Happened
Log4j is a logging library used inside an enormous share of Java applications — from enterprise software to Minecraft servers to cloud platforms. One of its features let log messages trigger a "JNDI lookup," which could reach out to a remote server and load code from it. Attackers realized that if they could get any attacker-controlled string into a log message — a username field, an HTTP header, a chat message — they could make the server fetch and run their own code.
Because Log4j is buried so deep inside so many products, almost nobody knew they were exposed until security researchers started publishing proof-of-concept attacks, and exploitation attempts began within hours of disclosure.
What This Means
This was a Remote Code Execution (RCE) vulnerability — the most dangerous category there is, because it lets an attacker run arbitrary commands on a server they've never touched before, just by sending it the right text. No stolen credentials needed, no phishing required.
Why You Should Care
Log4Shell mattered because of scale, not novelty — JNDI injection bugs were already known. What made it historic was that Log4j sat inside thousands of products from hundreds of vendors, many of which didn't even know they shipped it (a "dependency of a dependency"). It became the textbook example of why knowing your software supply chain — not just your own code — is part of security.
What You Can Do
- Upgrade Log4j to 2.17.1 or later in anything you maintain — don't rely on older mitigation flags alone.
- Use a Software Bill of Materials (SBOM) or dependency scanner so you actually know which third-party libraries are running inside your applications.
- Treat any input that ends up in a log line as untrusted, the same way you'd treat user input in a database query.
- Subscribe to vendor security advisories for every major framework/library you depend on, not just your direct code.
Within days of disclosure, scanning and exploitation attempts were detected against cloud providers, gaming platforms, and enterprise software worldwide — making Log4Shell one of the most widely exploited vulnerabilities in the history of the internet.
A single overlooked feature in a logging library, buried inside thousands of unrelated products, became a critical remote-code-execution hole — proof that your dependencies are part of your attack surface.
Explore More CVEs