gsd-2018-11770
Vulnerability from gsd
Modified
2023-12-13 01:22
Details
From version 1.3.0 onward, Apache Spark's standalone master exposes a REST API for job submission, in addition to the submission mechanism used by spark-submit. In standalone, the config property 'spark.authenticate.secret' establishes a shared secret for authenticating requests to submit jobs via spark-submit. However, the REST API does not use this or any other authentication mechanism, and this is not adequately documented. In this case, a user would be able to run a driver program without authenticating, but not launch executors, using the REST API. This REST API is also used by Mesos, when set up to run in cluster mode (i.e., when also running MesosClusterDispatcher), for job submission. Future versions of Spark will improve documentation on these points, and prohibit setting 'spark.authenticate.secret' when running the REST APIs, to make this clear. Future versions will also disable the REST API by default in the standalone master by changing the default value of 'spark.master.rest.enabled' to 'false'.
Aliases
Aliases



{
  "GSD": {
    "alias": "CVE-2018-11770",
    "description": "From version 1.3.0 onward, Apache Spark\u0027s standalone master exposes a REST API for job submission, in addition to the submission mechanism used by spark-submit. In standalone, the config property \u0027spark.authenticate.secret\u0027 establishes a shared secret for authenticating requests to submit jobs via spark-submit. However, the REST API does not use this or any other authentication mechanism, and this is not adequately documented. In this case, a user would be able to run a driver program without authenticating, but not launch executors, using the REST API. This REST API is also used by Mesos, when set up to run in cluster mode (i.e., when also running MesosClusterDispatcher), for job submission. Future versions of Spark will improve documentation on these points, and prohibit setting \u0027spark.authenticate.secret\u0027 when running the REST APIs, to make this clear. Future versions will also disable the REST API by default in the standalone master by changing the default value of \u0027spark.master.rest.enabled\u0027 to \u0027false\u0027.",
    "id": "GSD-2018-11770",
    "references": [
      "https://www.suse.com/security/cve/CVE-2018-11770.html"
    ]
  },
  "gsd": {
    "metadata": {
      "exploitCode": "unknown",
      "remediation": "unknown",
      "reportConfidence": "confirmed",
      "type": "vulnerability"
    },
    "osvSchema": {
      "aliases": [
        "CVE-2018-11770"
      ],
      "details": "From version 1.3.0 onward, Apache Spark\u0027s standalone master exposes a REST API for job submission, in addition to the submission mechanism used by spark-submit. In standalone, the config property \u0027spark.authenticate.secret\u0027 establishes a shared secret for authenticating requests to submit jobs via spark-submit. However, the REST API does not use this or any other authentication mechanism, and this is not adequately documented. In this case, a user would be able to run a driver program without authenticating, but not launch executors, using the REST API. This REST API is also used by Mesos, when set up to run in cluster mode (i.e., when also running MesosClusterDispatcher), for job submission. Future versions of Spark will improve documentation on these points, and prohibit setting \u0027spark.authenticate.secret\u0027 when running the REST APIs, to make this clear. Future versions will also disable the REST API by default in the standalone master by changing the default value of \u0027spark.master.rest.enabled\u0027 to \u0027false\u0027.",
      "id": "GSD-2018-11770",
      "modified": "2023-12-13T01:22:41.787836Z",
      "schema_version": "1.4.0"
    }
  },
  "namespaces": {
    "cve.org": {
      "CVE_data_meta": {
        "ASSIGNER": "security@apache.org",
        "ID": "CVE-2018-11770",
        "STATE": "PUBLIC"
      },
      "affects": {
        "vendor": {
          "vendor_data": [
            {
              "product": {
                "product_data": [
                  {
                    "product_name": "Apache Spark",
                    "version": {
                      "version_data": [
                        {
                          "version_affected": "=",
                          "version_value": "1.3.0"
                        }
                      ]
                    }
                  }
                ]
              },
              "vendor_name": "Apache Software Foundation"
            }
          ]
        }
      },
      "data_format": "MITRE",
      "data_type": "CVE",
      "data_version": "4.0",
      "description": {
        "description_data": [
          {
            "lang": "eng",
            "value": "From version 1.3.0 onward, Apache Spark\u0027s standalone master exposes a REST API for job submission, in addition to the submission mechanism used by spark-submit. In standalone, the config property \u0027spark.authenticate.secret\u0027 establishes a shared secret for authenticating requests to submit jobs via spark-submit. However, the REST API does not use this or any other authentication mechanism, and this is not adequately documented. In this case, a user would be able to run a driver program without authenticating, but not launch executors, using the REST API. This REST API is also used by Mesos, when set up to run in cluster mode (i.e., when also running MesosClusterDispatcher), for job submission. Future versions of Spark will improve documentation on these points, and prohibit setting \u0027spark.authenticate.secret\u0027 when running the REST APIs, to make this clear. Future versions will also disable the REST API by default in the standalone master by changing the default value of \u0027spark.master.rest.enabled\u0027 to \u0027false\u0027."
          }
        ]
      },
      "problemtype": {
        "problemtype_data": [
          {
            "description": [
              {
                "lang": "eng",
                "value": "Improper Access Control"
              }
            ]
          }
        ]
      },
      "references": {
        "reference_data": [
          {
            "name": "https://spark.apache.org/security.html#CVE-2018-11770",
            "refsource": "MISC",
            "url": "https://spark.apache.org/security.html#CVE-2018-11770"
          },
          {
            "name": "https://lists.apache.org/thread.html/bd8e51314041451a2acd720e9223fc1c15a263ccacb396a75b1fc485%40%3Cdev.spark.apache.org%3E",
            "refsource": "MISC",
            "url": "https://lists.apache.org/thread.html/bd8e51314041451a2acd720e9223fc1c15a263ccacb396a75b1fc485%40%3Cdev.spark.apache.org%3E"
          },
          {
            "name": "http://www.securityfocus.com/bid/105097",
            "refsource": "MISC",
            "url": "http://www.securityfocus.com/bid/105097"
          }
        ]
      }
    },
    "gitlab.com": {
      "advisories": [
        {
          "affected_range": "[1.3.0,)",
          "affected_versions": "All versions starting from 1.3.0",
          "cvss_v2": "AV:N/AC:M/Au:S/C:P/I:P/A:N",
          "cvss_v3": "CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N",
          "cwe_ids": [
            "CWE-1035",
            "CWE-287",
            "CWE-937"
          ],
          "date": "2019-10-03",
          "description": "Apache Spark standalone master exposes a REST API for job submission, in addition to the submission mechanism used by spark-submit. In standalone, the config property `spark.authenticate.secret` establishes a shared secret for authenticating requests to submit jobs via spark-submit. However, the REST API does not use this or any other authentication mechanism, and this is not adequately documented. In this case, a user would be able to run a driver program without authenticating, but not launch executors, using the REST API.",
          "fixed_versions": [],
          "identifier": "CVE-2018-11770",
          "identifiers": [
            "CVE-2018-11770"
          ],
          "not_impacted": "",
          "package_slug": "maven/org.apache.spark/spark-core",
          "pubdate": "2018-08-13",
          "solution": "Unfortunately, there is no solution available yet.",
          "title": "Improper Authentication",
          "urls": [
            "https://nvd.nist.gov/vuln/detail/CVE-2018-11770",
            "http://www.securityfocus.com/bid/105097",
            "https://spark.apache.org/security.html#CVE-2018-11770"
          ],
          "uuid": "2151cf8e-4dda-42aa-bc46-3ea7273ed3d6"
        },
        {
          "affected_range": "[1.0.0,2.2.2]",
          "affected_versions": "All versions starting from 1.0.0 up to 2.2.2",
          "cvss_v2": "AV:N/AC:M/Au:S/C:P/I:P/A:N",
          "cvss_v3": "CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N",
          "cwe_ids": [
            "CWE-1035",
            "CWE-287",
            "CWE-937"
          ],
          "date": "2021-09-20",
          "description": "From version 1.3.0 onward, Apache Spark\u0027s standalone master exposes a REST API for job submission, in addition to the submission mechanism used by spark-submit. In standalone, the config property \u0027spark.authenticate.secret\u0027 establishes a shared secret for authenticating requests to submit jobs via spark-submit. However, the REST API does not use this or any other authentication mechanism, and this is not adequately documented. In this case, a user would be able to run a driver program without authenticating, but not launch executors, using the REST API. This REST API is also used by Mesos, when set up to run in cluster mode (i.e., when also running MesosClusterDispatcher), for job submission. Future versions of Spark will improve documentation on these points, and prohibit setting \u0027spark.authenticate.secret\u0027 when running the REST APIs, to make this clear. Future versions will also disable the REST API by default in the standalone master by changing the default value of \u0027spark.master.rest.enabled\u0027 to \u0027false\u0027.",
          "fixed_versions": [],
          "identifier": "CVE-2018-11770",
          "identifiers": [
            "GHSA-w4r4-65mg-45x2",
            "CVE-2018-11770"
          ],
          "not_impacted": "",
          "package_slug": "maven/org.apache.spark/spark-core_2.10",
          "pubdate": "2018-11-09",
          "solution": "Unfortunately, there is no solution available yet.",
          "title": "Improper Authentication",
          "urls": [
            "https://nvd.nist.gov/vuln/detail/CVE-2018-11770",
            "https://github.com/advisories/GHSA-w4r4-65mg-45x2"
          ],
          "uuid": "86c2ee4f-e577-4ebb-92e7-1ff202638b18"
        },
        {
          "affected_range": "[1.0.0,2.3.2]",
          "affected_versions": "All versions starting from 1.0.0 up to 2.3.2",
          "cvss_v2": "AV:N/AC:M/Au:S/C:P/I:P/A:N",
          "cvss_v3": "CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N",
          "cwe_ids": [
            "CWE-1035",
            "CWE-287",
            "CWE-937"
          ],
          "date": "2021-09-20",
          "description": "From version 1.3.0 onward, Apache Spark\u0027s standalone master exposes a REST API for job submission, in addition to the submission mechanism used by spark-submit. In standalone, the config property \u0027spark.authenticate.secret\u0027 establishes a shared secret for authenticating requests to submit jobs via spark-submit. However, the REST API does not use this or any other authentication mechanism, and this is not adequately documented. In this case, a user would be able to run a driver program without authenticating, but not launch executors, using the REST API. This REST API is also used by Mesos, when set up to run in cluster mode (i.e., when also running MesosClusterDispatcher), for job submission. Future versions of Spark will improve documentation on these points, and prohibit setting \u0027spark.authenticate.secret\u0027 when running the REST APIs, to make this clear. Future versions will also disable the REST API by default in the standalone master by changing the default value of \u0027spark.master.rest.enabled\u0027 to \u0027false\u0027.",
          "fixed_versions": [],
          "identifier": "CVE-2018-11770",
          "identifiers": [
            "GHSA-w4r4-65mg-45x2",
            "CVE-2018-11770"
          ],
          "not_impacted": "",
          "package_slug": "maven/org.apache.spark/spark-core_2.11",
          "pubdate": "2018-11-09",
          "solution": "Unfortunately, there is no solution available yet.",
          "title": "Improper Authentication",
          "urls": [
            "https://nvd.nist.gov/vuln/detail/CVE-2018-11770",
            "https://github.com/advisories/GHSA-w4r4-65mg-45x2",
            "https://lists.apache.org/thread.html/bd8e51314041451a2acd720e9223fc1c15a263ccacb396a75b1fc485@%3Cdev.spark.apache.org%3E",
            "https://spark.apache.org/security.html#CVE-2018-11770",
            "http://www.securityfocus.com/bid/105097"
          ],
          "uuid": "94fe756b-df14-43ab-a31b-7084936a33d2"
        }
      ]
    },
    "nvd.nist.gov": {
      "configurations": {
        "CVE_data_version": "4.0",
        "nodes": [
          {
            "children": [],
            "cpe_match": [
              {
                "cpe23Uri": "cpe:2.3:a:apache:spark:*:*:*:*:*:*:*:*",
                "cpe_name": [],
                "versionStartIncluding": "1.3.0",
                "vulnerable": true
              }
            ],
            "operator": "OR"
          }
        ]
      },
      "cve": {
        "CVE_data_meta": {
          "ASSIGNER": "security@apache.org",
          "ID": "CVE-2018-11770"
        },
        "data_format": "MITRE",
        "data_type": "CVE",
        "data_version": "4.0",
        "description": {
          "description_data": [
            {
              "lang": "en",
              "value": "From version 1.3.0 onward, Apache Spark\u0027s standalone master exposes a REST API for job submission, in addition to the submission mechanism used by spark-submit. In standalone, the config property \u0027spark.authenticate.secret\u0027 establishes a shared secret for authenticating requests to submit jobs via spark-submit. However, the REST API does not use this or any other authentication mechanism, and this is not adequately documented. In this case, a user would be able to run a driver program without authenticating, but not launch executors, using the REST API. This REST API is also used by Mesos, when set up to run in cluster mode (i.e., when also running MesosClusterDispatcher), for job submission. Future versions of Spark will improve documentation on these points, and prohibit setting \u0027spark.authenticate.secret\u0027 when running the REST APIs, to make this clear. Future versions will also disable the REST API by default in the standalone master by changing the default value of \u0027spark.master.rest.enabled\u0027 to \u0027false\u0027."
            }
          ]
        },
        "problemtype": {
          "problemtype_data": [
            {
              "description": [
                {
                  "lang": "en",
                  "value": "CWE-287"
                }
              ]
            }
          ]
        },
        "references": {
          "reference_data": [
            {
              "name": "https://spark.apache.org/security.html#CVE-2018-11770",
              "refsource": "CONFIRM",
              "tags": [
                "Exploit",
                "Mitigation",
                "Vendor Advisory"
              ],
              "url": "https://spark.apache.org/security.html#CVE-2018-11770"
            },
            {
              "name": "105097",
              "refsource": "BID",
              "tags": [
                "Broken Link",
                "Third Party Advisory",
                "VDB Entry"
              ],
              "url": "http://www.securityfocus.com/bid/105097"
            },
            {
              "name": "https://lists.apache.org/thread.html/bd8e51314041451a2acd720e9223fc1c15a263ccacb396a75b1fc485%40%3Cdev.spark.apache.org%3E",
              "refsource": "MISC",
              "tags": [
                "Mailing List",
                "Third Party Advisory"
              ],
              "url": "https://lists.apache.org/thread.html/bd8e51314041451a2acd720e9223fc1c15a263ccacb396a75b1fc485%40%3Cdev.spark.apache.org%3E"
            }
          ]
        }
      },
      "impact": {
        "baseMetricV2": {
          "cvssV2": {
            "accessComplexity": "MEDIUM",
            "accessVector": "NETWORK",
            "authentication": "SINGLE",
            "availabilityImpact": "NONE",
            "baseScore": 4.9,
            "confidentialityImpact": "PARTIAL",
            "integrityImpact": "PARTIAL",
            "vectorString": "AV:N/AC:M/Au:S/C:P/I:P/A:N",
            "version": "2.0"
          },
          "exploitabilityScore": 6.8,
          "impactScore": 4.9,
          "obtainAllPrivilege": false,
          "obtainOtherPrivilege": false,
          "obtainUserPrivilege": false,
          "severity": "MEDIUM",
          "userInteractionRequired": false
        },
        "baseMetricV3": {
          "cvssV3": {
            "attackComplexity": "HIGH",
            "attackVector": "NETWORK",
            "availabilityImpact": "NONE",
            "baseScore": 4.2,
            "baseSeverity": "MEDIUM",
            "confidentialityImpact": "LOW",
            "integrityImpact": "LOW",
            "privilegesRequired": "LOW",
            "scope": "UNCHANGED",
            "userInteraction": "NONE",
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:N",
            "version": "3.1"
          },
          "exploitabilityScore": 1.6,
          "impactScore": 2.5
        }
      },
      "lastModifiedDate": "2023-02-10T02:59Z",
      "publishedDate": "2018-08-13T16:29Z"
    }
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading...

Loading...

Loading...
  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.