Vulnerabilities > CVE-2017-3005 - Unquoted Search Path or Element vulnerability in Adobe Photoshop CC

047910
CVSS 7.8 - HIGH
Attack vector
LOCAL
Attack complexity
LOW
Privileges required
LOW
Confidentiality impact
HIGH
Integrity impact
HIGH
Availability impact
HIGH
local
low complexity
adobe
CWE-428
nessus

Summary

Adobe Photoshop versions CC 2017 (18.0.1) and earlier, CC 2015.5.1 (17.0.1) and earlier have an unquoted search path vulnerability.

Common Weakness Enumeration (CWE)

Common Attack Pattern Enumeration and Classification (CAPEC)

  • Leveraging/Manipulating Configuration File Search Paths
    This attack loads a malicious resource into a program's standard path used to bootstrap and/or provide contextual information for a program like a path variable or classpath. J2EE applications and other component based applications that are built from multiple binaries can have very long list of dependencies to execute. If one of these libraries and/or references is controllable by the attacker then application controls can be circumvented by the attacker. A standard UNIX path looks similar to this If the attacker modifies the path variable to point to a locale that includes malicious resources then the user unwittingly can execute commands on the attackers' behalf: This is a form of usurping control of the program and the attack can be done on the classpath, database resources, or any other resources built from compound parts. At runtime detection and blocking of this attack is nearly impossible, because the configuration allows execution.

Nessus

NASL familyWindows
NASL idADOBE_PHOTOSHOP_APSB17-12.NASL
descriptionThe version of Adobe Photoshop CC installed on the remote Windows host is 17.x prior to 17.0.2 (2015.5.2) or 18.x prior to 18.1 (2017.1.0). It is, therefore, affected by multiple vulnerabilities : - A memory corruption issue exists due to improper handling of PCX files. An unauthenticated, remote attacker can exploit this, by convincing a user to open a specially crafted PCX file, to execute arbitrary code. (CVE-2017-3004) - An unquoted search path flaw exists that allows an attacker to elevate privileges via a malicious executable in the root path. (CVE-2017-3005)
last seen2020-06-01
modified2020-06-02
plugin id99369
published2017-04-14
reporterThis script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
sourcehttps://www.tenable.com/plugins/nessus/99369
titleAdobe Photoshop CC 17.x < 17.0.2 / 18.x < 18.1 Multiple Vulnerabilities (APSB17-12)
code
#
# (C) Tenable Network Security, Inc.
#

include("compat.inc");

if (description)
{
  script_id(99369);
  script_version("1.7");
  script_cvs_date("Date: 2019/11/13");

  script_cve_id("CVE-2017-3004", "CVE-2017-3005");
  script_bugtraq_id(97553, 97559);

  script_name(english:"Adobe Photoshop CC 17.x < 17.0.2 / 18.x < 18.1 Multiple Vulnerabilities (APSB17-12)");
  script_summary(english:"Checks the Photoshop version.");

  script_set_attribute(attribute:"synopsis", value:
"The remote host has an application installed that is affected by
multiple vulnerabilities.");
  script_set_attribute(attribute:"description", value:
"The version of Adobe Photoshop CC installed on the remote Windows host
is 17.x prior to 17.0.2 (2015.5.2) or 18.x prior to 18.1 (2017.1.0).
It is, therefore, affected by multiple vulnerabilities :

  - A memory corruption issue exists due to improper
    handling of PCX files. An unauthenticated, remote
    attacker can exploit this, by convincing a user to open
    a specially crafted PCX file, to execute arbitrary code.
    (CVE-2017-3004)

  - An unquoted search path flaw exists that allows an
    attacker to elevate privileges via a malicious
    executable in the root path. (CVE-2017-3005)");
  script_set_attribute(attribute:"see_also", value:"https://helpx.adobe.com/security/products/photoshop/apsb17-12.html");
  script_set_attribute(attribute:"solution", value:
"Upgrade to Adobe Photoshop CC version 17.0.2 (2015.5.2) / 18.1
(2017.1.0) or later.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:L/AC:L/PR:N/UI:R/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-2017-3004");

  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"false");

  script_set_attribute(attribute:"vuln_publication_date", value:"2017/04/11");
  script_set_attribute(attribute:"patch_publication_date", value:"2017/04/11");
  script_set_attribute(attribute:"plugin_publication_date", value:"2017/04/14");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:adobe:photoshop_cc");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Windows");

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

  script_dependencies("adobe_photoshop_installed.nasl");
  script_require_keys("installed_sw/Adobe Photoshop", "SMB/Registry/Enumerated");

  exit(0);
}

include("audit.inc");
include("global_settings.inc");
include("misc_func.inc");
include("install_func.inc");

get_kb_item_or_exit("SMB/Registry/Enumerated");

app_name = "Adobe Photoshop";
install  = get_single_install(app_name: app_name, exit_if_unknown_ver: TRUE);

product_name = install['Product'];
if ("CC" >!< product_name)
  exit(0, "Only Adobe Photoshop CC is affected.");

ver    = install['version'];
path   = install['path'];
ver_ui = install['display_version'];

# version 18.x < 18.1 Vuln
if ( ver =~ "^18\." )
  fix = '18.1';
# 17.x < 17.0.2 Vuln
else if ( ver =~ "^17\." )
  fix = '17.0.2';
else
  audit(AUDIT_NOT_INST, app_name + " 17.x / 18.x");

if (ver_compare(ver: ver, fix: fix, strict:FALSE) < 0)
{
  port = get_kb_item("SMB/transport");
  if (isnull(port)) port = 445;

  report = '\n  Product           : ' + product_name +
           '\n  Path              : ' + path +
           '\n  Installed version : ' + ver_ui +
           '\n  Fixed version     : ' + fix +
           '\n';

  security_report_v4(port:port, extra:report, severity:SECURITY_HOLE);
}
else audit(AUDIT_INST_PATH_NOT_VULN, app_name, ver_ui, path);