Vulnerabilities > CVE-2019-1003049 - Insufficient Session Expiration vulnerability in multiple products

047910
CVSS 8.1 - HIGH
Attack vector
NETWORK
Attack complexity
HIGH
Privileges required
NONE
Confidentiality impact
HIGH
Integrity impact
HIGH
Availability impact
HIGH
network
high complexity
jenkins
redhat
oracle
CWE-613
nessus

Summary

Users who cached their CLI authentication before Jenkins was updated to 2.150.2 and newer, or 2.160 and newer, would remain authenticated in Jenkins 2.171 and earlier and Jenkins LTS 2.164.1 and earlier, because the fix for CVE-2019-1003004 in these releases did not reject existing remoting-based CLI authentication caches.

Vulnerable Configurations

Part Description Count
Application
Jenkins
1879
Application
Redhat
1
Application
Oracle
1

Common Weakness Enumeration (CWE)

Nessus

NASL familyCGI abuses
NASL idJENKINS_2_172.NASL
descriptionThe version of Jenkins running on the remote web server is prior to 2.172 or is a version of Jenkins LTS prior to 2.164.2. It is, therefore, affected by multiple vulnerabilities: - An authentication bypass condition exists due to an incomplete fix for SECURITY-901, in which existing remote-based CLI authentication caches. An unauthenticated, remote attacker can exploit this to bypass existing Access Control Limitations and appear as an authenticated user. (CVE-2019-1003049) - A cross-site scripting (XSS) vulnerability exists due to improper validation of user-supplied input before returning it to users. An unauthenticated, remote attacker can exploit this, by convincing a user to click a specially crafted URL, to execute arbitrary script code in a user
last seen2020-06-01
modified2020-06-02
plugin id124168
published2019-04-18
reporterThis script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof.
sourcehttps://www.tenable.com/plugins/nessus/124168
titleJenkins < 2.164.2 LTS / 2.172 Multiple Vulnerabilities
code
#
# (C) Tenable Network Security, Inc.
#

include("compat.inc");

if (description)
{
  script_id(124168);
  script_version("1.3");
  script_cvs_date("Date: 2019/10/30 13:24:46");

  script_cve_id(
    "CVE-2019-1003049",
    "CVE-2019-1003050"
  );
  script_bugtraq_id(
    107889,
    107901
  );

  script_name(english:"Jenkins < 2.164.2 LTS / 2.172 Multiple Vulnerabilities");
  script_summary(english:"Checks the Jenkins version.");

  script_set_attribute(attribute:"synopsis", value:
"A job scheduling and management system hosted on the remote web server is affected by multiple vulnerabilities.");
  script_set_attribute(attribute:"description", value:
"The version of Jenkins running on the remote web server is prior to 2.172 or is a version of Jenkins LTS prior to
2.164.2. It is, therefore, affected by multiple vulnerabilities:

  - An authentication bypass condition exists due to an incomplete fix for SECURITY-901, in which existing
    remote-based CLI authentication caches. An unauthenticated, remote attacker can exploit this to bypass
    existing Access Control Limitations and appear as an authenticated user. (CVE-2019-1003049)

  - A cross-site scripting (XSS) vulnerability exists due to improper validation of user-supplied input before
    returning it to users. An unauthenticated, remote attacker can exploit this, by convincing a user to click
    a specially crafted URL, to execute arbitrary script code in a user's browser session. (CVE-2019-1003050)
    
Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version
number.");
  script_set_attribute(attribute:"see_also", value:"https://jenkins.io/security/advisory/2019-04-10/");
  script_set_attribute(attribute:"solution", value:
"Upgrade Jenkins to version 2.172 or later, Jenkins LTS to version 2.164.2 or later.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-1003049");
  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");

  script_set_attribute(attribute:"vuln_publication_date", value:"2019/04/10");
  script_set_attribute(attribute:"patch_publication_date", value:"2019/04/10");
  script_set_attribute(attribute:"plugin_publication_date", value:"2019/04/18");

  script_set_attribute(attribute:"plugin_type", value:"remote");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:cloudbees:jenkins");
  script_end_attributes();

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

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

  script_dependencies("jenkins_detect.nasl");
  script_require_ports("Services/www", 8080);
  script_require_keys("www/Jenkins");

  exit(0);
}

include('audit.inc');
include('global_settings.inc');
include('misc_func.inc');
include('http.inc');
include('vcf.inc');

port = get_http_port(default:8080);
app = vcf::get_app_info(app:'Jenkins', webapp:TRUE, port:port);

if(app['LTS'])
  constraints = [{'fixed_version' : '2.164.2', 'fixed_display' : '2.164.2 LTS / 2.172'}];
else
  constraints = [{'fixed_version' : '2.172', 'fixed_display' : '2.164.2 LTS / 2.172'}];

vcf::check_version_and_report(app_info:app, constraints:constraints, severity:SECURITY_WARNING, strict:FALSE);

Redhat

advisories
rhsa
idRHBA-2019:1605
rpms
  • atomic-enterprise-service-catalog-1:3.11.117-1.git.1.376e432.el7
  • atomic-enterprise-service-catalog-svcat-1:3.11.117-1.git.1.376e432.el7
  • atomic-openshift-cluster-autoscaler-0:3.11.117-1.git.1.caa79fa.el7
  • atomic-openshift-descheduler-0:3.11.117-1.git.1.1635b0a.el7
  • atomic-openshift-dockerregistry-0:3.11.117-1.git.1.6a42b08.el7
  • atomic-openshift-metrics-server-0:3.11.117-1.git.1.319d58e.el7
  • atomic-openshift-node-problem-detector-0:3.11.117-1.git.1.0345fe3.el7
  • atomic-openshift-service-idler-0:3.11.117-1.git.1.887bb82.el7
  • atomic-openshift-web-console-0:3.11.117-1.git.1.be7a05c.el7
  • cri-o-0:1.11.14-1.rhaos3.11.gitd56660e.el7
  • cri-o-debuginfo-0:1.11.14-1.rhaos3.11.gitd56660e.el7
  • golang-github-openshift-oauth-proxy-0:3.11.117-1.git.1.2b006d2.el7
  • jenkins-0:2.164.2.1555422716-1.el7
  • jenkins-2-plugins-0:3.11.1559667994-1.el7
  • openshift-ansible-0:3.11.123-1.git.0.db681ba.el7
  • openshift-ansible-docs-0:3.11.123-1.git.0.db681ba.el7
  • openshift-ansible-playbooks-0:3.11.123-1.git.0.db681ba.el7
  • openshift-ansible-roles-0:3.11.123-1.git.0.db681ba.el7
  • openshift-ansible-test-0:3.11.123-1.git.0.db681ba.el7
  • openshift-enterprise-autoheal-0:3.11.117-1.git.1.ef32a58.el7
  • openshift-enterprise-cluster-capacity-0:3.11.117-1.git.1.6593fce.el7
  • prometheus-0:3.11.117-1.git.1.f52d417.el7
  • prometheus-alertmanager-0:3.11.117-1.git.1.207ef35.el7
  • prometheus-node-exporter-0:3.11.117-1.git.1.dcee33f.el7