GSD-2020-10187

Vulnerability from gsd - Updated: 2020-05-02 00:00
Details
Information disclosure vulnerability. Allows an attacker to see all Doorkeeper::Application model attribute values (including secrets) after authorizing an application to their user. An application is vulnerable if the authorized applications controller is enabled (GET /oauth/authorized_applications.json). Recommended additional hardening for >= 5.1 is to enable application secrets hashing. This would render the exposed secret useless.
Aliases

{
  "GSD": {
    "alias": "CVE-2020-10187",
    "description": "Doorkeeper version 5.0.0 and later contains an information disclosure vulnerability that allows an attacker to retrieve the client secret only intended for the OAuth application owner. After authorizing the application and allowing access, the attacker simply needs to request the list of their authorized applications in a JSON format (usually GET /oauth/authorized_applications.json). An application is vulnerable if the authorized applications controller is enabled.",
    "id": "GSD-2020-10187"
  },
  "gsd": {
    "metadata": {
      "exploitCode": "unknown",
      "remediation": "unknown",
      "reportConfidence": "confirmed",
      "type": "vulnerability"
    },
    "osvSchema": {
      "affected": [
        {
          "package": {
            "ecosystem": "RubyGems",
            "name": "doorkeeper",
            "purl": "pkg:gem/doorkeeper"
          }
        }
      ],
      "aliases": [
        "CVE-2020-10187",
        "GHSA-j7vx-8mqj-cqp9"
      ],
      "details": "Information disclosure vulnerability. Allows an attacker to see all\nDoorkeeper::Application model attribute values (including secrets) after\nauthorizing an application to their user.\n\nAn application is vulnerable if the authorized applications controller is\nenabled (GET /oauth/authorized_applications.json).\n\nRecommended additional hardening for \u003e= 5.1 is to enable application secrets\nhashing. This would render the exposed secret useless.\n",
      "id": "GSD-2020-10187",
      "modified": "2020-05-02T00:00:00.000Z",
      "published": "2020-05-02T00:00:00.000Z",
      "references": [
        {
          "type": "WEB",
          "url": "https://github.com/doorkeeper-gem/doorkeeper/security/advisories/GHSA-j7vx-8mqj-cqp9"
        },
        {
          "type": "WEB",
          "url": "https://github.com/doorkeeper-gem/doorkeeper/commit/25d038022c2fcad45af5b73f9d003cf38ff491f6"
        }
      ],
      "schema_version": "1.4.0",
      "severity": [
        {
          "score": 5.5,
          "type": "CVSS_V2"
        },
        {
          "score": 5.4,
          "type": "CVSS_V3"
        }
      ],
      "summary": "Doorkeeper application secret information disclosure vulnerability"
    }
  },
  "namespaces": {
    "cve.org": {
      "CVE_data_meta": {
        "ASSIGNER": "cve@mitre.org",
        "ID": "CVE-2020-10187",
        "STATE": "PUBLIC"
      },
      "affects": {
        "vendor": {
          "vendor_data": [
            {
              "product": {
                "product_data": [
                  {
                    "product_name": "n/a",
                    "version": {
                      "version_data": [
                        {
                          "version_value": "n/a"
                        }
                      ]
                    }
                  }
                ]
              },
              "vendor_name": "n/a"
            }
          ]
        }
      },
      "data_format": "MITRE",
      "data_type": "CVE",
      "data_version": "4.0",
      "description": {
        "description_data": [
          {
            "lang": "eng",
            "value": "Doorkeeper version 5.0.0 and later contains an information disclosure vulnerability that allows an attacker to retrieve the client secret only intended for the OAuth application owner. After authorizing the application and allowing access, the attacker simply needs to request the list of their authorized applications in a JSON format (usually GET /oauth/authorized_applications.json). An application is vulnerable if the authorized applications controller is enabled."
          }
        ]
      },
      "problemtype": {
        "problemtype_data": [
          {
            "description": [
              {
                "lang": "eng",
                "value": "n/a"
              }
            ]
          }
        ]
      },
      "references": {
        "reference_data": [
          {
            "name": "https://github.com/doorkeeper-gem/doorkeeper/releases",
            "refsource": "MISC",
            "url": "https://github.com/doorkeeper-gem/doorkeeper/releases"
          },
          {
            "name": "https://github.com/doorkeeper-gem/doorkeeper/commit/25d038022c2fcad45af5b73f9d003cf38ff491f6",
            "refsource": "MISC",
            "url": "https://github.com/doorkeeper-gem/doorkeeper/commit/25d038022c2fcad45af5b73f9d003cf38ff491f6"
          },
          {
            "name": "https://github.com/doorkeeper-gem/doorkeeper/security/advisories/GHSA-j7vx-8mqj-cqp9",
            "refsource": "MISC",
            "url": "https://github.com/doorkeeper-gem/doorkeeper/security/advisories/GHSA-j7vx-8mqj-cqp9"
          },
          {
            "name": "https://github.com/rubysec/ruby-advisory-db/pull/446",
            "refsource": "MISC",
            "url": "https://github.com/rubysec/ruby-advisory-db/pull/446"
          }
        ]
      }
    },
    "github.com/rubysec/ruby-advisory-db": {
      "cve": "2020-10187",
      "cvss_v2": 5.5,
      "cvss_v3": 5.4,
      "date": "2020-05-02",
      "description": "Information disclosure vulnerability. Allows an attacker to see all\nDoorkeeper::Application model attribute values (including secrets) after\nauthorizing an application to their user.\n\nAn application is vulnerable if the authorized applications controller is\nenabled (GET /oauth/authorized_applications.json).\n\nRecommended additional hardening for \u003e= 5.1 is to enable application secrets\nhashing. This would render the exposed secret useless.\n",
      "gem": "doorkeeper",
      "ghsa": "j7vx-8mqj-cqp9",
      "patched_versions": [
        "~\u003e 5.0.3",
        "~\u003e 5.1.1",
        "~\u003e 5.2.5",
        "\u003e= 5.3.2"
      ],
      "related": {
        "url": [
          "https://github.com/doorkeeper-gem/doorkeeper/commit/25d038022c2fcad45af5b73f9d003cf38ff491f6"
        ]
      },
      "title": "Doorkeeper application secret information disclosure vulnerability",
      "unaffected_versions": [
        "\u003c 5.0.0"
      ],
      "url": "https://github.com/doorkeeper-gem/doorkeeper/security/advisories/GHSA-j7vx-8mqj-cqp9"
    },
    "gitlab.com": {
      "advisories": [
        {
          "affected_range": "\u003e=5.0.0 \u003c5.0.3||\u003e=5.1.0 \u003c5.1.1||\u003e=5.2.0 \u003c5.2.5||\u003e=5.3.0 \u003c5.3.2",
          "affected_versions": "All versions starting from 5.0.0 before 5.0.3, all versions starting from 5.1.0 before 5.1.1, all versions starting from 5.2.0 before 5.2.5, all versions starting from 5.3.0 before 5.3.2",
          "cvss_v2": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
          "cvss_v3": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
          "cwe_ids": [
            "CWE-1035",
            "CWE-200",
            "CWE-937"
          ],
          "date": "2021-07-21",
          "description": "Doorkeeper contains an information disclosure vulnerability that allows an attacker to retrieve the client secret only intended for the OAuth application owner. After authorizing the application and allowing access, the attacker simply needs to request the list of their authorized applications in a JSON format (usually GET `/oauth/authorized_applications.json`). An application is vulnerable if the authorized application controller is enabled.",
          "fixed_versions": [
            "5.0.3",
            "5.1.1",
            "5.2.5",
            "5.3.2"
          ],
          "identifier": "CVE-2020-10187",
          "identifiers": [
            "CVE-2020-10187",
            "GHSA-j7vx-8mqj-cqp9"
          ],
          "not_impacted": "All versions before 5.0.0, all versions starting from 5.0.3 before 5.1.0, all versions starting from 5.1.1 before 5.2.0, all versions starting from 5.2.5 before 5.3.0, all versions starting from 5.3.2",
          "package_slug": "gem/doorkeeper",
          "pubdate": "2020-05-04",
          "solution": "Upgrade to versions 5.0.3, 5.1.1, 5.2.5, 5.3.2 or above.",
          "title": "Information Exposure",
          "urls": [
            "https://nvd.nist.gov/vuln/detail/CVE-2020-10187"
          ],
          "uuid": "290f5fb5-e8dd-428c-bc27-6c27c5b40ea6"
        }
      ]
    },
    "nvd.nist.gov": {
      "configurations": {
        "CVE_data_version": "4.0",
        "nodes": [
          {
            "children": [],
            "cpe_match": [
              {
                "cpe23Uri": "cpe:2.3:a:doorkeeper_project:doorkeeper:*:*:*:*:*:ruby:*:*",
                "cpe_name": [],
                "versionEndExcluding": "5.0.3",
                "versionStartIncluding": "5.0.0",
                "vulnerable": true
              },
              {
                "cpe23Uri": "cpe:2.3:a:doorkeeper_project:doorkeeper:*:*:*:*:*:ruby:*:*",
                "cpe_name": [],
                "versionEndExcluding": "5.1.1",
                "versionStartIncluding": "5.1.0",
                "vulnerable": true
              },
              {
                "cpe23Uri": "cpe:2.3:a:doorkeeper_project:doorkeeper:*:*:*:*:*:ruby:*:*",
                "cpe_name": [],
                "versionEndExcluding": "5.2.5",
                "versionStartIncluding": "5.2.0",
                "vulnerable": true
              },
              {
                "cpe23Uri": "cpe:2.3:a:doorkeeper_project:doorkeeper:*:*:*:*:*:ruby:*:*",
                "cpe_name": [],
                "versionEndExcluding": "5.3.2",
                "versionStartIncluding": "5.3.0",
                "vulnerable": true
              }
            ],
            "operator": "OR"
          }
        ]
      },
      "cve": {
        "CVE_data_meta": {
          "ASSIGNER": "cve@mitre.org",
          "ID": "CVE-2020-10187"
        },
        "data_format": "MITRE",
        "data_type": "CVE",
        "data_version": "4.0",
        "description": {
          "description_data": [
            {
              "lang": "en",
              "value": "Doorkeeper version 5.0.0 and later contains an information disclosure vulnerability that allows an attacker to retrieve the client secret only intended for the OAuth application owner. After authorizing the application and allowing access, the attacker simply needs to request the list of their authorized applications in a JSON format (usually GET /oauth/authorized_applications.json). An application is vulnerable if the authorized applications controller is enabled."
            }
          ]
        },
        "problemtype": {
          "problemtype_data": [
            {
              "description": [
                {
                  "lang": "en",
                  "value": "CWE-862"
                }
              ]
            }
          ]
        },
        "references": {
          "reference_data": [
            {
              "name": "https://github.com/doorkeeper-gem/doorkeeper/commit/25d038022c2fcad45af5b73f9d003cf38ff491f6",
              "refsource": "MISC",
              "tags": [
                "Patch",
                "Third Party Advisory"
              ],
              "url": "https://github.com/doorkeeper-gem/doorkeeper/commit/25d038022c2fcad45af5b73f9d003cf38ff491f6"
            },
            {
              "name": "https://github.com/rubysec/ruby-advisory-db/pull/446",
              "refsource": "MISC",
              "tags": [
                "Patch",
                "Third Party Advisory"
              ],
              "url": "https://github.com/rubysec/ruby-advisory-db/pull/446"
            },
            {
              "name": "https://github.com/doorkeeper-gem/doorkeeper/security/advisories/GHSA-j7vx-8mqj-cqp9",
              "refsource": "MISC",
              "tags": [
                "Patch",
                "Third Party Advisory"
              ],
              "url": "https://github.com/doorkeeper-gem/doorkeeper/security/advisories/GHSA-j7vx-8mqj-cqp9"
            },
            {
              "name": "https://github.com/doorkeeper-gem/doorkeeper/releases",
              "refsource": "MISC",
              "tags": [
                "Release Notes",
                "Third Party Advisory"
              ],
              "url": "https://github.com/doorkeeper-gem/doorkeeper/releases"
            }
          ]
        }
      },
      "impact": {
        "baseMetricV2": {
          "acInsufInfo": false,
          "cvssV2": {
            "accessComplexity": "MEDIUM",
            "accessVector": "NETWORK",
            "authentication": "NONE",
            "availabilityImpact": "NONE",
            "baseScore": 4.3,
            "confidentialityImpact": "PARTIAL",
            "integrityImpact": "NONE",
            "vectorString": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
            "version": "2.0"
          },
          "exploitabilityScore": 8.6,
          "impactScore": 2.9,
          "obtainAllPrivilege": false,
          "obtainOtherPrivilege": false,
          "obtainUserPrivilege": false,
          "severity": "MEDIUM",
          "userInteractionRequired": false
        },
        "baseMetricV3": {
          "cvssV3": {
            "attackComplexity": "LOW",
            "attackVector": "NETWORK",
            "availabilityImpact": "NONE",
            "baseScore": 7.5,
            "baseSeverity": "HIGH",
            "confidentialityImpact": "HIGH",
            "integrityImpact": "NONE",
            "privilegesRequired": "NONE",
            "scope": "UNCHANGED",
            "userInteraction": "NONE",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
            "version": "3.1"
          },
          "exploitabilityScore": 3.9,
          "impactScore": 3.6
        }
      },
      "lastModifiedDate": "2021-07-21T11:39Z",
      "publishedDate": "2020-05-04T14:15Z"
    }
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.


Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…