ZeroHour

CVE-2022-24816

KEVlarge

Jiffle Script Code Injection RCE in JAI-EXT (Used by GeoServer)

CISA: OSGeo GeoServer JAI-EXT Code Injection Vulnerability

CVSS 3.1
10.0 critical
EPSS
99%p100
Published
()
KEV added
AI analysis

CVE-2022-24816 is a critical (CVSS 3.1: 10.0) code injection flaw (CWE-94) in JAI-EXT, the open-source library that extends the Java Advanced Imaging (JAI) API. When an application allows Jiffle scripts to be submitted over a network request — most notably the downstream OSGeo GeoServer GIS server — the script is compiled into Java code using Janino and then executed, letting an attacker inject malicious code into the compiled script. Because the attack requires no privileges or user interaction and crosses security scopes, an unauthenticated attacker gains remote code execution on the server with the application's privileges. Any deployment of JAI-EXT prior to version 1.2.22 that accepts Jiffle scripts from network requests is affected, with GeoServer instances being the primary exposure. The flaw was added to CISA's Known Exploited Vulnerabilities catalog on 2024-06-26 and carries a 98.5% EPSS score (100th percentile), indicating active exploitation in the wild, though no public proof-of-concept is known.

What to do: Upgrade JAI-EXT to version 1.2.22 or later, which disables the ability to inject code into the compiled Jiffle script — for GeoServer operators this means moving to a GeoServer release that ships the patched JAI-EXT. If upgrading is not immediately possible, remove janino-x.y.z.jar from the application classpath so Jiffle scripts cannot be compiled at all. Per the CISA KEV listing (added 2024-06-26), apply these mitigations per vendor instructions or discontinue use, and check internet-facing GeoServer/WPS endpoints for signs of Jiffle-based code injection.

Affected
GeoSolutions Group JAI-EXTprior to 1.2.22 (1.2.22 contains the patch)
OSGeo GeoServer (downstream consumer of JAI-EXT)deployments bundling JAI-EXT versions prior to 1.2.22 (specific GeoServer version ranges not specified in the data)
Estimated exposure
largetens of thousands of internet-exposed GeoServer instances (order of magnitude ~10k-100k deployments) — GeoServer is one of the most widely deployed open-source GIS servers, and public internet-wide scans consistently show tens of thousands of exposed GeoServer instances, many of which expose WPS/rendering endpoints that can accept Jiffle…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

JAI-EXT is an open-source project which aims to extend the Java Advanced Imaging (JAI) API. Programs allowing Jiffle script to be provided via network request can lead to a Remote Code Execution as the Jiffle script is compiled into Java code via Janino, and executed. In particular, this affects the downstream GeoServer project. Version 1.2.22 will contain a patch that disables the ability to inject malicious code into the resulting script. Users unable to upgrade may negate the ability to compile Jiffle scripts from the final application, by removing janino-x.y.z.jar from the classpath.

CISA Known Exploited Vulnerability
Affected
OSGeo JAI-EXT
Required action
Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.
Due date
Ransomware use
Unknown
Vendors
geosolutionsgroup
Products
jai-ext
Weakness
CWE-94
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

In the news