Firefox < 37.0 Multiple Vulnerabilities (Mac OS X) - Nessus

High   Plugin ID: 82500

This page contains detailed information about the Firefox < 37.0 Multiple Vulnerabilities (Mac OS X) Nessus plugin including available exploits and PoCs found on GitHub, in Metasploit or Exploit-DB for verifying of this vulnerability.

Plugin Overview


ID: 82500
Name: Firefox < 37.0 Multiple Vulnerabilities (Mac OS X)
Filename: macosx_firefox_37.nasl
Vulnerability Published: 2014-12-09
This Plugin Published: 2015-04-01
Last Modification Time: 2018-07-14
Plugin Version: 1.10
Plugin Type: local
Plugin Family: MacOS X Local Security Checks
Dependencies: macosx_firefox_installed.nasl
Required KB Items [?]: MacOSX/Firefox/Installed

Vulnerability Information


Severity: High
Vulnerability Published: 2014-12-09
Patch Published: 2015-03-31
CVE [?]: CVE-2015-0801, CVE-2015-0802, CVE-2015-0803, CVE-2015-0804, CVE-2015-0805, CVE-2015-0806, CVE-2015-0807, CVE-2015-0808, CVE-2015-0810, CVE-2015-0811, CVE-2015-0812, CVE-2015-0814, CVE-2015-0815, CVE-2015-0816
CPE [?]: cpe:/a:mozilla:firefox
Exploited by Malware: True

Synopsis

The remote Mac OS X host contains a web browser that is affected by multiple vulnerabilities.

Description

The version of Firefox installed on the remote Mac OS X host is prior to 37.0. It is, therefore, affected by the following vulnerabilities :

- A privilege escalation vulnerability exists which relates to anchor navigation. A remote attacker can exploit this to bypass same-origin policy protections, allowing a possible execution of arbitrary scripts in a privileged context. Note that this is a variant of CVE-2015-0818 that was fixed in Firefox 36.0.4. (CVE-2015-0801)

- Access to certain privileged internal methods is retained when navigating from windows created to contain privileged UI content to unprivileged pages. An attacker can exploit this to execute arbitrary JavaScript with elevated privileges. (CVE-2015-0802)

- Multiple type confusion issues exist that can lead to use-after-free errors, which a remote attacker can exploit to execute arbitrary code or cause a denial of service. (CVE-2015-0803, CVE-2015-0804)

- Multiple memory corruption issues exist related to Off Main Thread Compositing when rendering 2D graphics, which a remote attacker can exploit to execute arbitrary code or cause a denial of service. (CVE-2015-0805, CVE-2015-0806)

- A cross-site request forgery (XSRF) vulnerability exists in the sendBeacon() function due to cross-origin resource sharing (CORS) requests following 30x redirections. (CVE-2015-0807)

- An issue exists in WebRTC related to memory management for simple-style arrays, which may be used by a remote attacker to cause a denial of service. (CVE-2015-0808)

- An issue exists that allows a remote attacker to make the user's cursor invisible, possibly resulting in a successful clickjacking attack. (CVE-2015-0810)

- An out-of-bounds read issue exists in the QCMS color management library that could lead to an information disclosure. (CVE-2015-0811)

- An issue exists that can allow a man-in-the-middle attacker to bypass user-confirmation and install a Firefox lightweight theme by spoofing a Mozilla sub-domain. (CVE-2015-0812)

- Multiple memory safety issues exist within the browser engine. A remote attacker can exploit these to corrupt memory and possibly execute arbitrary code. (CVE-2015-0814, CVE-2015-0815)

- A privilege escalation vulnerability exists related to documents loaded through a 'resource:' URL. An attacker can exploit this to load pages and execute JavaScript with elevated privileges. (CVE-2015-0816)

Solution

Upgrade to Firefox 37.0 or later.

Public Exploits


Target Network Port(s): N/A
Target Asset(s): N/A
Exploit Available: True (Metasploit Framework, Exploit-DB, GitHub)
Exploit Ease: Exploits are available

Here's the list of publicly known exploits and PoCs for verifying the Firefox < 37.0 Multiple Vulnerabilities (Mac OS X) vulnerability:

  1. Metasploit: exploit/multi/browser/firefox_pdfjs_privilege_escalation
    [Firefox PDF.js Privileged Javascript Injection]
  2. Metasploit: exploit/multi/browser/firefox_proxy_prototype
    [Firefox Proxy Prototype Privileged Javascript Injection]
  3. Exploit-DB: exploits/multiple/remote/37958.rb
    [EDB-37958: Mozilla Firefox - 'pdf.js' Privileged JavaScript Injection (Metasploit)]
  4. GitHub: https://github.com/JasonLOU/security
    [CVE-2015-0812]
  5. GitHub: https://github.com/numirias/security
    [CVE-2015-0812]
  6. GitHub: https://github.com/Afudadi/Firefox-35-37-Exploit
    [CVE-2015-0802: CVE-2015-0816 + CVE-2015-0802]
  7. GitHub: https://github.com/Afudadi/Firefox-35-37-Exploit
    [CVE-2015-0816: CVE-2015-0816 + CVE-2015-0802]

Before running any exploit against any system, make sure you are authorized by the owner of the target system(s) to perform such activity. In any other case, this would be considered as an illegal activity.

WARNING: Beware of using unverified exploits from sources such as GitHub or Exploit-DB. These exploits and PoCs could contain malware. For more information, see how to use exploits safely.

Risk Information


CVSS V2 Vector [?]: AV:N/AC:L/Au:N/C:P/I:P/A:P/E:H/RL:OF/RC:C
CVSS Base Score:7.5 (High)
Impact Subscore:6.4
Exploitability Subscore:10.0
CVSS Temporal Score:6.5 (Medium)
CVSS Environmental Score:NA (None)
Modified Impact Subscore:NA
Overall CVSS Score:6.5 (Medium)

Go back to menu.

Plugin Source


This is the macosx_firefox_37.nasl nessus plugin source code. This script is Copyright (C) 2015-2018 Tenable Network Security, Inc.

#
# (C) Tenable Network Security, Inc.
#

include("compat.inc");

if (description)
{
  script_id(82500);
  script_version("1.10");
  script_cvs_date("Date: 2018/07/14  1:59:36");

  script_cve_id(
    "CVE-2015-0801",
    "CVE-2015-0802",
    "CVE-2015-0803",
    "CVE-2015-0804",
    "CVE-2015-0805",
    "CVE-2015-0806",
    "CVE-2015-0807",
    "CVE-2015-0808",
    "CVE-2015-0810",
    "CVE-2015-0811",
    "CVE-2015-0812",
    "CVE-2015-0814",
    "CVE-2015-0815",
    "CVE-2015-0816"
  );
  script_bugtraq_id(
    73454,
    73455,
    73456,
    73457,
    73458,
    73460,
    73461,
    73462,
    73464,
    73465,
    73466,
    73467
  );

  script_name(english:"Firefox < 37.0 Multiple Vulnerabilities (Mac OS X)");
  script_summary(english:"Checks the version of Firefox.");

  script_set_attribute(attribute:"synopsis", value:
"The remote Mac OS X host contains a web browser that is affected by
multiple vulnerabilities.");
  script_set_attribute(attribute:"description", value:
"The version of Firefox installed on the remote Mac OS X host is prior
to 37.0. It is, therefore, affected by the following vulnerabilities :

  - A privilege escalation vulnerability exists which
    relates to anchor navigation. A remote attacker can
    exploit this to bypass same-origin policy protections,
    allowing a possible execution of arbitrary scripts in a
    privileged context. Note that this is a variant of
    CVE-2015-0818 that was fixed in Firefox 36.0.4.
    (CVE-2015-0801)

  - Access to certain privileged internal methods is
    retained when navigating from windows created to contain
    privileged UI content to unprivileged pages. An attacker
    can exploit this to execute arbitrary JavaScript with
    elevated privileges. (CVE-2015-0802)

  - Multiple type confusion issues exist that can lead to
    use-after-free errors, which a remote attacker can
    exploit to execute arbitrary code or cause a denial of
    service. (CVE-2015-0803, CVE-2015-0804)

  - Multiple memory corruption issues exist related to Off
    Main Thread Compositing when rendering 2D graphics,
    which a remote attacker can exploit to execute arbitrary
    code or cause a denial of service. (CVE-2015-0805,
    CVE-2015-0806)

  - A cross-site request forgery (XSRF) vulnerability exists
    in the sendBeacon() function due to cross-origin
    resource sharing (CORS) requests following 30x
    redirections. (CVE-2015-0807)

  - An issue exists in WebRTC related to memory management
    for simple-style arrays, which may be used by a remote
    attacker to cause a denial of service. (CVE-2015-0808)

  - An issue exists that allows a remote attacker to make
    the user's cursor invisible, possibly resulting in a
    successful clickjacking attack. (CVE-2015-0810)

  - An out-of-bounds read issue exists in the QCMS color
    management library that could lead to an information
    disclosure. (CVE-2015-0811)

  - An issue exists that can allow a man-in-the-middle
    attacker to bypass user-confirmation and install a
    Firefox lightweight theme by spoofing a Mozilla
    sub-domain. (CVE-2015-0812)

  - Multiple memory safety issues exist within the browser
    engine. A remote attacker can exploit these to corrupt
    memory and possibly execute arbitrary code.
    (CVE-2015-0814, CVE-2015-0815)

  - A privilege escalation vulnerability exists related to
    documents loaded through a 'resource:' URL. An attacker
    can exploit this to load pages and execute JavaScript
    with elevated privileges. (CVE-2015-0816)");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-30/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-32/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-33/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-34/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-35/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-36/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-37/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-38/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-39/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-40/");
  script_set_attribute(attribute:"see_also", value:"https://www.mozilla.org/en-US/security/advisories/mfsa2015-42/");
  script_set_attribute(attribute:"solution", value:"Upgrade to Firefox 37.0 or later.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:H/RL:OF/RC:C");
  script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"true");
  script_set_attribute(attribute:"exploited_by_malware", value:"true");
  script_set_attribute(attribute:"metasploit_name", value:'Firefox PDF.js Privileged Javascript Injection');
  script_set_attribute(attribute:"exploit_framework_metasploit", value:"true");

  script_set_attribute(attribute:"vuln_publication_date", value:"2014/12/09");
  script_set_attribute(attribute:"patch_publication_date", value:"2015/03/31");
  script_set_attribute(attribute:"plugin_publication_date", value:"2015/04/01");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:mozilla:firefox");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"MacOS X Local Security Checks");

  script_copyright(english:"This script is Copyright (C) 2015-2018 Tenable Network Security, Inc.");

  script_dependencies("macosx_firefox_installed.nasl");
  script_require_keys("MacOSX/Firefox/Installed");

  exit(0);
}

include("mozilla_version.inc");

kb_base = "MacOSX/Firefox";
get_kb_item_or_exit(kb_base+"/Installed");

version = get_kb_item_or_exit(kb_base+"/Version", exit_code:1);
path = get_kb_item_or_exit(kb_base+"/Path", exit_code:1);

if (get_kb_item(kb_base + '/is_esr')) exit(0, 'The Mozilla Firefox installation is in the ESR branch.');

mozilla_check_version(product:'firefox', version:version, path:path, esr:FALSE, fix:'37.0', severity:SECURITY_HOLE, xss:FALSE, xsrf:TRUE);

The latest version of this script can be found in these locations depending on your platform:

  • Linux / Unix:
    /opt/nessus/lib/nessus/plugins/macosx_firefox_37.nasl
  • Windows:
    C:\ProgramData\Tenable\Nessus\nessus\plugins\macosx_firefox_37.nasl
  • Mac OS X:
    /Library/Nessus/run/lib/nessus/plugins/macosx_firefox_37.nasl

Go back to menu.

How to Run


Here is how to run the Firefox < 37.0 Multiple Vulnerabilities (Mac OS X) as a standalone plugin via the Nessus web user interface (https://localhost:8834/):

  1. Click to start a New Scan.
  2. Select Advanced Scan.
  3. Navigate to the Plugins tab.
  4. On the top right corner click to Disable All plugins.
  5. On the left side table select MacOS X Local Security Checks plugin family.
  6. On the right side table select Firefox < 37.0 Multiple Vulnerabilities (Mac OS X) plugin ID 82500.
  7. Specify the target on the Settings tab and click to Save the scan.
  8. Run the scan.

Here are a few examples of how to run the plugin in the command line. Note that the examples below demonstrate the usage on the Linux / Unix platform.

Basic usage:

/opt/nessus/bin/nasl macosx_firefox_37.nasl -t <IP/HOST>

Run the plugin with audit trail message on the console:

/opt/nessus/bin/nasl -a macosx_firefox_37.nasl -t <IP/HOST>

Run the plugin with trace script execution written to the console (useful for debugging):

/opt/nessus/bin/nasl -T - macosx_firefox_37.nasl -t <IP/HOST>

Run the plugin with using a state file for the target and updating it (useful for running multiple plugins on the target):

/opt/nessus/bin/nasl -K /tmp/state macosx_firefox_37.nasl -t <IP/HOST>

Go back to menu.

References


BID | SecurityFocus Bugtraq ID: See also: Similar and related Nessus plugins:
  • 82477 - CentOS 5 / 6 / 7 : firefox / xulrunner (CESA-2015:0766)
  • 82510 - CentOS 5 / 7 : thunderbird (CESA-2015:0771)
  • 82512 - Debian DSA-3211-1 : iceweasel - security update
  • 82538 - Debian DSA-3212-1 : icedove - security update
  • 82482 - FreeBSD : mozilla -- multiple vulnerabilities (d0c97697-df2c-4b8b-bff2-cec24dc35af8)
  • 87710 - GLSA-201512-10 : Mozilla Products: Multiple vulnerabilities (Bar Mitzvah) (Logjam)
  • 82499 - Firefox ESR 31.x < 31.6 Multiple Vulnerabilities (Mac OS X)
  • 82501 - Mozilla Thunderbird < 31.6 Multiple Vulnerabilities (Mac OS X)
  • 82502 - Firefox ESR 31.x < 31.6 Multiple Vulnerabilities
  • 82503 - Firefox < 37.0 Multiple Vulnerabilities
  • 82504 - Mozilla Thunderbird < 31.6 Multiple Vulnerabilities
  • 82651 - openSUSE Security Update : MozillaFirefox / MozillaThunderbird / mozilla-nspr (openSUSE-2015-290)
  • 82488 - Oracle Linux 5 / 6 / 7 : firefox (ELSA-2015-0766)
  • 82517 - Oracle Linux 6 / 7 : thunderbird (ELSA-2015-0771)
  • 82495 - RHEL 5 / 6 / 7 : firefox (RHSA-2015:0766)
  • 82519 - RHEL 5 / 6 / 7 : thunderbird (RHSA-2015:0771)
  • 82520 - Scientific Linux Security Update : firefox on SL5.x, SL6.x, SL7.x i386/x86_64 (20150401)
  • 82522 - Scientific Linux Security Update : thunderbird on SL5.x, SL6.x, SL7.x i386/x86_64 (20150401)
  • 82739 - SuSE 11.3 Security Update : Mozilla Firefox (SAT Patch Number 10571)
  • 82524 - Ubuntu 12.04 LTS / 14.04 LTS / 14.10 : firefox vulnerabilities (USN-2550-1)
  • 82565 - Ubuntu 12.04 LTS / 14.04 LTS / 14.10 : thunderbird vulnerabilities (USN-2552-1)

Version


This page has been produced using Nessus Professional 10.1.2 (#68) LINUX, Plugin set 202205072148.
Plugin file macosx_firefox_37.nasl version 1.10. For more plugins, visit the Nessus Plugin Library.

Go back to menu.