gsd-2022-31115
Vulnerability from gsd
Modified
2022-07-05 00:00
Details
### Impact A YAML deserialization in opensearch-ruby 2.0.0 can lead to unsafe deserialization using YAML.load if the response is of type YAML. ### Patches The problem has been patched in opensearch-ruby gem version 2.0.2. ### Workarounds No viable workaround. Please upgrade to 2.0.2
Aliases



{
  "GSD": {
    "alias": "CVE-2022-31115",
    "description": "opensearch-ruby is a community-driven, open source fork of elasticsearch-ruby. In versions prior to 2.0.1 the ruby `YAML.load` function was used instead of `YAML.safe_load`. As a result opensearch-ruby 2.0.0 and prior can lead to unsafe deserialization using YAML.load if the response is of type YAML. An attacker must be in control of an opensearch server and convince the victim to connect to it in order to exploit this vulnerability. The problem has been patched in opensearch-ruby gem version 2.0.1. Users are advised to upgrade. There are no known workarounds for this issue.",
    "id": "GSD-2022-31115"
  },
  "gsd": {
    "metadata": {
      "exploitCode": "unknown",
      "remediation": "unknown",
      "reportConfidence": "confirmed",
      "type": "vulnerability"
    },
    "osvSchema": {
      "affected": [
        {
          "package": {
            "ecosystem": "RubyGems",
            "name": "opensearch-ruby",
            "purl": "pkg:gem/opensearch-ruby"
          }
        }
      ],
      "aliases": [
        "CVE-2022-31115",
        "GHSA-977c-63xq-cgw3"
      ],
      "details": "### Impact\nA YAML deserialization in opensearch-ruby 2.0.0 can lead to unsafe deserialization using\nYAML.load if the response is of type YAML.\n\n### Patches\nThe problem has been patched in opensearch-ruby gem version 2.0.2.\n\n### Workarounds\nNo viable workaround.  Please upgrade to 2.0.2\n",
      "id": "GSD-2022-31115",
      "modified": "2022-07-05T00:00:00.000Z",
      "published": "2022-07-05T00:00:00.000Z",
      "references": [
        {
          "type": "WEB",
          "url": "https://github.com/opensearch-project/opensearch-ruby/security/advisories/GHSA-977c-63xq-cgw3"
        },
        {
          "type": "WEB",
          "url": "https://github.com/opensearch-project/opensearch-ruby/pull/77"
        },
        {
          "type": "WEB",
          "url": "https://staaldraad.github.io/post/2021-01-09-universal-rce-ruby-yaml-load-updated/"
        }
      ],
      "schema_version": "1.4.0",
      "severity": [
        {
          "score": 8.8,
          "type": "CVSS_V3"
        }
      ],
      "summary": "Unsafe YAML deserialization in opensearch-ruby"
    }
  },
  "namespaces": {
    "cve.org": {
      "CVE_data_meta": {
        "ASSIGNER": "security-advisories@github.com",
        "ID": "CVE-2022-31115",
        "STATE": "PUBLIC",
        "TITLE": "Unsafe YAML deserialization in opensearch-ruby"
      },
      "affects": {
        "vendor": {
          "vendor_data": [
            {
              "product": {
                "product_data": [
                  {
                    "product_name": "opensearch-ruby",
                    "version": {
                      "version_data": [
                        {
                          "version_value": "\u003c 2.0.1"
                        }
                      ]
                    }
                  }
                ]
              },
              "vendor_name": "opensearch-project"
            }
          ]
        }
      },
      "data_format": "MITRE",
      "data_type": "CVE",
      "data_version": "4.0",
      "description": {
        "description_data": [
          {
            "lang": "eng",
            "value": "opensearch-ruby is a community-driven, open source fork of elasticsearch-ruby. In versions prior to 2.0.1 the ruby `YAML.load` function was used instead of `YAML.safe_load`. As a result opensearch-ruby 2.0.0 and prior can lead to unsafe deserialization using YAML.load if the response is of type YAML. An attacker must be in control of an opensearch server and convince the victim to connect to it in order to exploit this vulnerability. The problem has been patched in opensearch-ruby gem version 2.0.1. Users are advised to upgrade. There are no known workarounds for this issue."
          }
        ]
      },
      "impact": {
        "cvss": {
          "attackComplexity": "LOW",
          "attackVector": "NETWORK",
          "availabilityImpact": "HIGH",
          "baseScore": 8.8,
          "baseSeverity": "HIGH",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "privilegesRequired": "NONE",
          "scope": "UNCHANGED",
          "userInteraction": "REQUIRED",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
          "version": "3.1"
        }
      },
      "problemtype": {
        "problemtype_data": [
          {
            "description": [
              {
                "lang": "eng",
                "value": "CWE-502: Deserialization of Untrusted Data"
              }
            ]
          }
        ]
      },
      "references": {
        "reference_data": [
          {
            "name": "https://github.com/opensearch-project/opensearch-ruby/security/advisories/GHSA-977c-63xq-cgw3",
            "refsource": "CONFIRM",
            "url": "https://github.com/opensearch-project/opensearch-ruby/security/advisories/GHSA-977c-63xq-cgw3"
          },
          {
            "name": "https://github.com/opensearch-project/opensearch-ruby/pull/77",
            "refsource": "MISC",
            "url": "https://github.com/opensearch-project/opensearch-ruby/pull/77"
          },
          {
            "name": "https://staaldraad.github.io/post/2021-01-09-universal-rce-ruby-yaml-load-updated/",
            "refsource": "MISC",
            "url": "https://staaldraad.github.io/post/2021-01-09-universal-rce-ruby-yaml-load-updated/"
          }
        ]
      },
      "source": {
        "advisory": "GHSA-977c-63xq-cgw3",
        "discovery": "UNKNOWN"
      }
    },
    "github.com/rubysec/ruby-advisory-db": {
      "cve": "2022-31115",
      "cvss_v3": 8.8,
      "date": "2022-07-05",
      "description": "### Impact\nA YAML deserialization in opensearch-ruby 2.0.0 can lead to unsafe deserialization using\nYAML.load if the response is of type YAML.\n\n### Patches\nThe problem has been patched in opensearch-ruby gem version 2.0.2.\n\n### Workarounds\nNo viable workaround.  Please upgrade to 2.0.2\n",
      "gem": "opensearch-ruby",
      "ghsa": "977c-63xq-cgw3",
      "patched_versions": [
        "\u003e= 2.0.2"
      ],
      "related": {
        "url": [
          "https://github.com/opensearch-project/opensearch-ruby/pull/77",
          "https://staaldraad.github.io/post/2021-01-09-universal-rce-ruby-yaml-load-updated/"
        ]
      },
      "title": "Unsafe YAML deserialization in opensearch-ruby",
      "url": "https://github.com/opensearch-project/opensearch-ruby/security/advisories/GHSA-977c-63xq-cgw3"
    },
    "gitlab.com": {
      "advisories": [
        {
          "affected_range": "\u003c2.0.2",
          "affected_versions": "All versions before 2.0.2",
          "cwe_ids": [
            "CWE-1035",
            "CWE-502",
            "CWE-937"
          ],
          "date": "2022-07-05",
          "description": "opensearch-ruby is a community-driven, open source fork of elasticsearch-ruby. In versions prior to 2.0.1 the ruby `YAML.load` function was used instead of `YAML.safe_load`. As a result opensearch-ruby 2.0.0 and prior can lead to unsafe deserialization using YAML.load if the response is of type YAML. An attacker must be in control of an opensearch server and convince the victim to connect to it in order to exploit this vulnerability. The problem has been patched in opensearch-ruby gem version 2.0.1. Users are advised to upgrade. There are no known workarounds for this issue.",
          "fixed_versions": [
            "2.0.2"
          ],
          "identifier": "CVE-2022-31115",
          "identifiers": [
            "GHSA-977c-63xq-cgw3",
            "CVE-2022-31115"
          ],
          "not_impacted": "All versions starting from 2.0.2",
          "package_slug": "gem/opensearch-ruby",
          "pubdate": "2022-07-05",
          "solution": "Upgrade to version 2.0.2 or above.",
          "title": "Deserialization of Untrusted Data",
          "urls": [
            "https://github.com/opensearch-project/opensearch-ruby/security/advisories/GHSA-977c-63xq-cgw3",
            "https://nvd.nist.gov/vuln/detail/CVE-2022-31115",
            "https://github.com/opensearch-project/opensearch-ruby/pull/77",
            "https://staaldraad.github.io/post/2021-01-09-universal-rce-ruby-yaml-load-updated/",
            "https://github.com/advisories/GHSA-977c-63xq-cgw3"
          ],
          "uuid": "6ccacece-2384-460c-968e-2e3aa400183f"
        },
        {
          "affected_range": "\u003c2.0.2",
          "affected_versions": "All versions before 2.0.2",
          "cvss_v2": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
          "cvss_v3": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
          "cwe_ids": [
            "CWE-1035",
            "CWE-502",
            "CWE-937"
          ],
          "date": "2022-07-25",
          "description": "opensearch-ruby is a community-driven, open source fork of elasticsearch-ruby. In versions prior to 2.0.2 the ruby `YAML.load` function was used instead of `YAML.safe_load`. As a result opensearch-ruby 2.0.0 and prior can lead to unsafe deserialization using YAML.load if the response is of type YAML. An attacker must be in control of an opensearch server and convince the victim to connect to it in order to exploit this vulnerability. The problem has been patched in opensearch-ruby gem version 2.0.2. Users are advised to upgrade. There are no known workarounds for this issue.",
          "fixed_versions": [
            "2.0.2"
          ],
          "identifier": "CVE-2022-31115",
          "identifiers": [
            "CVE-2022-31115",
            "GHSA-977c-63xq-cgw3"
          ],
          "not_impacted": "",
          "package_slug": "gem/opensearch",
          "pubdate": "2022-06-30",
          "solution": "Upgrade to version 2.0.2 or above.",
          "title": "Deserialization of Untrusted Data",
          "urls": [
            "https://nvd.nist.gov/vuln/detail/CVE-2022-31115",
            "https://github.com/opensearch-project/opensearch-ruby/security/advisories/GHSA-977c-63xq-cgw3",
            "https://github.com/opensearch-project/opensearch-ruby/pull/77",
            "https://staaldraad.github.io/post/2021-01-09-universal-rce-ruby-yaml-load-updated/"
          ],
          "uuid": "9cadf4f7-95ce-44d0-8524-2d72b579321a"
        }
      ]
    },
    "nvd.nist.gov": {
      "configurations": {
        "CVE_data_version": "4.0",
        "nodes": [
          {
            "children": [],
            "cpe_match": [
              {
                "cpe23Uri": "cpe:2.3:a:amazon:opensearch:*:*:*:*:*:ruby:*:*",
                "cpe_name": [],
                "versionEndExcluding": "2.0.2",
                "vulnerable": true
              }
            ],
            "operator": "OR"
          }
        ]
      },
      "cve": {
        "CVE_data_meta": {
          "ASSIGNER": "security-advisories@github.com",
          "ID": "CVE-2022-31115"
        },
        "data_format": "MITRE",
        "data_type": "CVE",
        "data_version": "4.0",
        "description": {
          "description_data": [
            {
              "lang": "en",
              "value": "opensearch-ruby is a community-driven, open source fork of elasticsearch-ruby. In versions prior to 2.0.1 the ruby `YAML.load` function was used instead of `YAML.safe_load`. As a result opensearch-ruby 2.0.0 and prior can lead to unsafe deserialization using YAML.load if the response is of type YAML. An attacker must be in control of an opensearch server and convince the victim to connect to it in order to exploit this vulnerability. The problem has been patched in opensearch-ruby gem version 2.0.1. Users are advised to upgrade. There are no known workarounds for this issue."
            }
          ]
        },
        "problemtype": {
          "problemtype_data": [
            {
              "description": [
                {
                  "lang": "en",
                  "value": "CWE-502"
                }
              ]
            }
          ]
        },
        "references": {
          "reference_data": [
            {
              "name": "https://github.com/opensearch-project/opensearch-ruby/security/advisories/GHSA-977c-63xq-cgw3",
              "refsource": "CONFIRM",
              "tags": [
                "Third Party Advisory"
              ],
              "url": "https://github.com/opensearch-project/opensearch-ruby/security/advisories/GHSA-977c-63xq-cgw3"
            },
            {
              "name": "https://github.com/opensearch-project/opensearch-ruby/pull/77",
              "refsource": "MISC",
              "tags": [
                "Patch",
                "Third Party Advisory"
              ],
              "url": "https://github.com/opensearch-project/opensearch-ruby/pull/77"
            },
            {
              "name": "https://staaldraad.github.io/post/2021-01-09-universal-rce-ruby-yaml-load-updated/",
              "refsource": "MISC",
              "tags": [
                "Exploit",
                "Third Party Advisory"
              ],
              "url": "https://staaldraad.github.io/post/2021-01-09-universal-rce-ruby-yaml-load-updated/"
            }
          ]
        }
      },
      "impact": {
        "baseMetricV2": {
          "acInsufInfo": false,
          "cvssV2": {
            "accessComplexity": "MEDIUM",
            "accessVector": "NETWORK",
            "authentication": "NONE",
            "availabilityImpact": "PARTIAL",
            "baseScore": 6.8,
            "confidentialityImpact": "PARTIAL",
            "integrityImpact": "PARTIAL",
            "vectorString": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
            "version": "2.0"
          },
          "exploitabilityScore": 8.6,
          "impactScore": 6.4,
          "obtainAllPrivilege": false,
          "obtainOtherPrivilege": false,
          "obtainUserPrivilege": false,
          "severity": "MEDIUM",
          "userInteractionRequired": true
        },
        "baseMetricV3": {
          "cvssV3": {
            "attackComplexity": "LOW",
            "attackVector": "NETWORK",
            "availabilityImpact": "HIGH",
            "baseScore": 8.8,
            "baseSeverity": "HIGH",
            "confidentialityImpact": "HIGH",
            "integrityImpact": "HIGH",
            "privilegesRequired": "NONE",
            "scope": "UNCHANGED",
            "userInteraction": "REQUIRED",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "exploitabilityScore": 2.8,
          "impactScore": 5.9
        }
      },
      "lastModifiedDate": "2022-07-25T09:34Z",
      "publishedDate": "2022-06-30T22: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 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.


Loading…

Loading…