Lucene search

K
nessusThis script is Copyright (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.OSGEO_GEOSERVER_CVE-2024-36401.NASL
HistoryAug 02, 2024 - 12:00 a.m.

OSGeo GeoServer RCE (CVE-2024-36401)

2024-08-0200:00:00
This script is Copyright (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.
www.tenable.com
15
osgeo geoserver
remote code execution
unauthenticated users
geotools library
xpath expressions
nessus scanner

CVSS3

9.8

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

AI Score

8.7

Confidence

Low

EPSS

0.959

Percentile

99.5%

The version of OSGeo GeoServer installed on the remote host is affected by a remote code executionvulnerability, as follows:

  • Multiple OGC request parameters allow Remote Code Execution (RCE) by unauthenticated users through specially crafted input against a default GeoServer installation due to unsafely evaluating property names as XPath expressions. The GeoTools library API that GeoServer calls evaluates property/attribute names for feature types in a way that unsafely passes them to the commons-jxpath library which can execute arbitrary code when evaluating XPath expressions.

Note that Nessus has not tested for this issue but has instead relied only on the application’s self-reported version number.

#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##

include('compat.inc');

if (description)
{
  script_id(204972);
  script_version("1.2");
  script_set_attribute(attribute:"plugin_modification_date", value:"2024/08/03");

  script_cve_id("CVE-2024-36401");
  script_xref(name:"CISA-KNOWN-EXPLOITED", value:"2024/08/05");

  script_name(english:"OSGeo GeoServer RCE (CVE-2024-36401)");

  script_set_attribute(attribute:"synopsis", value:
"The version of OSGEo GeoServer installed on the remote host is affected by a remote code execution vulnerability.");
  script_set_attribute(attribute:"description", value:
"The version of OSGeo GeoServer installed on the remote host is affected by a remote code executionvulnerability, as 
follows:

  - Multiple OGC request parameters allow Remote Code Execution (RCE) by unauthenticated users through specially 
    crafted input against a default GeoServer installation due to unsafely evaluating property names as XPath 
    expressions. The GeoTools library API that GeoServer calls evaluates property/attribute names for feature types 
    in a way that unsafely passes them to the commons-jxpath library which can execute arbitrary code when evaluating 
    XPath expressions.

Note that Nessus has not tested for this issue but has instead relied only on the application's self-reported version
number.");
  # https://github.com/geoserver/geoserver/security/advisories/GHSA-6jj6-gm7p-fcvv
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?65847187");
  script_set_attribute(attribute:"solution", value:
"See vendor advisory.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:F/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:F/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2024-36401");

  script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"true");
  script_set_attribute(attribute:"metasploit_name", value:'Geoserver unauthenticated Remote Code Execution');
  script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");

  script_set_attribute(attribute:"vuln_publication_date", value:"2024/07/01");
  script_set_attribute(attribute:"patch_publication_date", value:"2024/07/01");
  script_set_attribute(attribute:"plugin_publication_date", value:"2024/08/02");

  script_set_attribute(attribute:"plugin_type", value:"combined");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:geoserver:geoserver");
  script_set_attribute(attribute:"thorough_tests", value:"true");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"CGI abuses");

  script_copyright(english:"This script is Copyright (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("osgeo_geoserver_service_detect.nbin", "osgeo_geoserver_nix_installed.nbin");
  script_require_keys("installed_sw/OSGeo GeoServer");

  exit(0);
}

include('vcf.inc');

var app = 'OSGeo GeoServer';
var app_info = vcf::combined_get_app_info(app:app);

var constraints = [
  { 'fixed_version' : '2.23.6' },
  { 'min_version' : '2.24.0', 'fixed_version' : '2.24.4' },
  { 'min_version' : '2.25.0', 'fixed_version' : '2.25.2' },
];

vcf::check_version_and_report(
    app_info:app_info,
    constraints:constraints,
    severity:SECURITY_HOLE
);

CVSS3

9.8

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

AI Score

8.7

Confidence

Low

EPSS

0.959

Percentile

99.5%