Requiem For A Vuln: What We Learned From Log4Shell and What Comes Next
Requiem For A Vuln: What We Learned From Log4Shell and What Comes Next
Agenda
• Timeline
• What is Log4Shell/Log4j
• How is it exploited?
4
“The Log4j vulnerability is the most serious
vulnerability that I’ve seen in my decades
long career.”
7 Source: https://www.lunasec.io/docs/blog/log4j-zero-day/
Timeline
Best. Weekend. Ever.
8 Source: https://blog.wiz.io/10-days-later-enterprises-halfway-through-patching-log4shell/
Timeline
But wait there’s more!
• What’s more fun than one Log4j vulnerability? Three Log4j vulnerabilities:
9 Source: nist.gov
Internet scanning
10 Source: https://www.greynoise.io/blog/log4j-vulnerability-analysis-next-steps
We’re no strangers to vulns
• Heartbleed (CVE-2014-0160):
• WannaCry and NotPetya malware used the Eternal Blue exploit to attack
vulnerable servers
Log4j background
• Log4j’s roots go back 25 years ( rst o cial release in 1999); Log4j 1.x went
end of life in August 2015.
• Log4j sat at version 2.14.1 for most of 2021, 2.15 released on December 6,
2021 to address the vulnerability
Sources: https://logging.apache.org/log4j/2.x/changes-report.html
12 https://logging.apache.org/log4j/2.x/manual/index.html
fi
ffi
How the vulnerability works
13
Abusing JNDI
• API that provides name and directory functionality to applications written in Java
• Will work with past, present, and future directory standards, including LDAP
14 Source: https://en.wikipedia.org/wiki/Java_Naming_and_Directory_Interface
fi
Live Demo!! 🙏
15
Attack chain
${jndi:ldap://localhost:1389/a}
Vulnerable
site
16
Compensating measures
• Input validation
17
fi
Compensating controls
18
fi
Input validation
• In our demo, the attacker should not have been able to enter the attack string
in the username eld. That value in that format would never be a valid
username.
19 Source: https://cheatsheetseries.owasp.org/cheatsheets/Input_Validation_Cheat_Sheet.html
ff
fl
fi
IOCs
• An IOC helps the organization recognize an attack that has taken place.
20 Source: https://www.crowdstrike.com/cybersecurity-101/indicators-of-compromise/
21
Source: https://www.greynoise.io/blog/apache-log4j-vulnerability-CVE-2021-44228
Software Composition Analysis
22
fi
23
“By understanding and contextualizing 1st and 3rd party
SBOMs, organizations can be positioned to rapidly
determine whether or not they are impacted by zero
and highly significant critical vulnerabilities like Log4J.
In absence of this, organizations are left relying often on
manual inspection and deep disruption to their teams.”
Dan Walsh, Traxiom CEO
24
25
What is a SBOM?
• “If defects are found in a speci c part, the BOM makes it easy to locate the
a ected products.”
26 Source: https://www.ntia.gov/SBOM
https://github.com/awesomeSBOM/awesome-sbom
ff
fi
SBOM Specifications
• Supported by OWASP
• https://cyclonedx.org/
28 Source: https://github.com/opensbom-generator/spdx-sbom-generator
Other SBOM tools
Not endorsed or recommended, just sharing
• Adolus
• Traxiom
• Veracode
29
ff
Evaluating 3rd party service providers
• How did we learn about Log4Shell? How long did it take to learn about it
determine if we were impacted by it?
• Do we have the right controls in place to detect and prevent successful exploit
attempts even if we cannot immediately upgrade to non-vulnerable versions of
system software?
31
Summary
• The lessons we’ve learned from Log4Shell mirror those that we learned from
Heartbleed in 2014 and Eternal Blue in 2017.
• New vulnerabilities of this severity will happen again. Next time, will we be ready?
32
Thank you!!
[email protected] // @maru37