gsd-2018-16477
Vulnerability from gsd
Modified
2018-11-27 00:00
Details
There is a vulnerability in Active Storage. This vulnerability has been assigned the CVE identifier CVE-2018-16477. Versions Affected: >= 5.2.0 Not affected: < 5.2.0 Fixed Versions: 5.2.1.1 Impact ------ Signed download URLs generated by `ActiveStorage` for Google Cloud Storage service and Disk service include `content-disposition` and `content-type` parameters that an attacker can modify. This can be used to upload specially crafted HTML files and have them served and executed inline. Combined with other techniques such as cookie bombing and specially crafted AppCache manifests, an attacker can gain access to private signed URLs within a specific storage path. Vulnerable apps are those using either GCS or the Disk service in production. Other storage services such as S3 or Azure aren't affected. All users running an affected release should either upgrade or use one of the workarounds immediately. For those using GCS, it's also recommended to run the following to update existing blobs: ``` ActiveStorage::Blob.find_each do |blob| blob.send :update_service_metadata end ```
Aliases



{
  "GSD": {
    "alias": "CVE-2018-16477",
    "description": "A bypass vulnerability in Active Storage \u003e= 5.2.0 for Google Cloud Storage and Disk services allow an attacker to modify the `content-disposition` and `content-type` parameters which can be used in with HTML files and have them executed inline. Additionally, if combined with other techniques such as cookie bombing and specially crafted AppCache manifests, an attacker can gain access to private signed URLs within a specific storage path. This vulnerability has been fixed in version 5.2.1.1.",
    "id": "GSD-2018-16477",
    "references": [
      "https://www.suse.com/security/cve/CVE-2018-16477.html"
    ]
  },
  "gsd": {
    "metadata": {
      "exploitCode": "unknown",
      "remediation": "unknown",
      "reportConfidence": "confirmed",
      "type": "vulnerability"
    },
    "osvSchema": {
      "affected": [
        {
          "package": {
            "ecosystem": "RubyGems",
            "name": "activestorage",
            "purl": "pkg:gem/activestorage"
          }
        }
      ],
      "aliases": [
        "CVE-2018-16477",
        "GHSA-7rr7-rcjw-56vj"
      ],
      "details": "There is a vulnerability in Active Storage. This vulnerability has been\nassigned the CVE identifier CVE-2018-16477.\n\nVersions Affected:  \u003e= 5.2.0\nNot affected:       \u003c 5.2.0\nFixed Versions:     5.2.1.1\n\nImpact\n------\nSigned download URLs generated by `ActiveStorage` for Google Cloud Storage\nservice and Disk service include `content-disposition` and `content-type`\nparameters that an attacker can modify. This can be used to upload specially\ncrafted HTML files and have them served and executed inline. Combined with\nother techniques such as cookie bombing and specially crafted AppCache manifests,\nan attacker can gain access to private signed URLs within a specific storage path.\n\nVulnerable apps are those using either GCS or the Disk service in production.\nOther storage services such as S3 or Azure aren\u0027t affected.\n\nAll users running an affected release should either upgrade or use one of the\nworkarounds immediately. For those using GCS, it\u0027s also recommended to run the\nfollowing to update existing blobs:\n\n```\nActiveStorage::Blob.find_each do |blob|\n  blob.send :update_service_metadata\nend\n```\n",
      "id": "GSD-2018-16477",
      "modified": "2018-11-27T00:00:00.000Z",
      "published": "2018-11-27T00:00:00.000Z",
      "references": [
        {
          "type": "WEB",
          "url": "https://groups.google.com/forum/#!topic/rubyonrails-security/3KQRnXDIuLg"
        }
      ],
      "schema_version": "1.4.0",
      "severity": [
        {
          "score": 6.5,
          "type": "CVSS_V3"
        }
      ],
      "summary": "Bypass vulnerability in Active Storage"
    }
  },
  "namespaces": {
    "cve.org": {
      "CVE_data_meta": {
        "ASSIGNER": "support@hackerone.com",
        "ID": "CVE-2018-16477",
        "STATE": "PUBLIC"
      },
      "affects": {
        "vendor": {
          "vendor_data": [
            {
              "product": {
                "product_data": [
                  {
                    "product_name": "https://github.com/rails/rails",
                    "version": {
                      "version_data": [
                        {
                          "version_value": "5.2.0 and later and before 5.2.1.1"
                        }
                      ]
                    }
                  }
                ]
              },
              "vendor_name": "n/a"
            }
          ]
        }
      },
      "data_format": "MITRE",
      "data_type": "CVE",
      "data_version": "4.0",
      "description": {
        "description_data": [
          {
            "lang": "eng",
            "value": "A bypass vulnerability in Active Storage \u003e= 5.2.0 for Google Cloud Storage and Disk services allow an attacker to modify the `content-disposition` and `content-type` parameters which can be used in with HTML files and have them executed inline. Additionally, if combined with other techniques such as cookie bombing and specially crafted AppCache manifests, an attacker can gain access to private signed URLs within a specific storage path. This vulnerability has been fixed in version 5.2.1.1."
          }
        ]
      },
      "problemtype": {
        "problemtype_data": [
          {
            "description": [
              {
                "lang": "eng",
                "value": "Information Disclosure (CWE-200)"
              }
            ]
          }
        ]
      },
      "references": {
        "reference_data": [
          {
            "name": "https://groups.google.com/d/msg/rubyonrails-security/3KQRnXDIuLg/mByx5KkqBAAJ",
            "refsource": "MISC",
            "url": "https://groups.google.com/d/msg/rubyonrails-security/3KQRnXDIuLg/mByx5KkqBAAJ"
          },
          {
            "name": "https://weblog.rubyonrails.org/2018/11/27/Rails-4-2-5-0-5-1-5-2-have-been-released/",
            "refsource": "MISC",
            "url": "https://weblog.rubyonrails.org/2018/11/27/Rails-4-2-5-0-5-1-5-2-have-been-released/"
          }
        ]
      }
    },
    "github.com/rubysec/ruby-advisory-db": {
      "cve": "2018-16477",
      "cvss_v3": 6.5,
      "date": "2018-11-27",
      "description": "There is a vulnerability in Active Storage. This vulnerability has been\nassigned the CVE identifier CVE-2018-16477.\n\nVersions Affected:  \u003e= 5.2.0\nNot affected:       \u003c 5.2.0\nFixed Versions:     5.2.1.1\n\nImpact\n------\nSigned download URLs generated by `ActiveStorage` for Google Cloud Storage\nservice and Disk service include `content-disposition` and `content-type`\nparameters that an attacker can modify. This can be used to upload specially\ncrafted HTML files and have them served and executed inline. Combined with\nother techniques such as cookie bombing and specially crafted AppCache manifests,\nan attacker can gain access to private signed URLs within a specific storage path.\n\nVulnerable apps are those using either GCS or the Disk service in production.\nOther storage services such as S3 or Azure aren\u0027t affected.\n\nAll users running an affected release should either upgrade or use one of the\nworkarounds immediately. For those using GCS, it\u0027s also recommended to run the\nfollowing to update existing blobs:\n\n```\nActiveStorage::Blob.find_each do |blob|\n  blob.send :update_service_metadata\nend\n```\n",
      "framework": "rails",
      "gem": "activestorage",
      "ghsa": "7rr7-rcjw-56vj",
      "patched_versions": [
        "\u003e= 5.2.1.1"
      ],
      "title": "Bypass vulnerability in Active Storage",
      "unaffected_versions": [
        "\u003c 5.2.0"
      ],
      "url": "https://groups.google.com/forum/#!topic/rubyonrails-security/3KQRnXDIuLg"
    },
    "gitlab.com": {
      "advisories": [
        {
          "affected_range": "\u003e=5.2.0 \u003c5.2.1.1",
          "affected_versions": "All versions starting from 5.2.0 before 5.2.1.1",
          "cvss_v2": "AV:N/AC:M/Au:N/C:N/I:P/A:N",
          "cvss_v3": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N",
          "cwe_ids": [
            "CWE-1035",
            "CWE-937"
          ],
          "date": "2019-10-09",
          "description": "A bypass vulnerability in Active Storage for Google Cloud Storage and Disk services allow an attacker to modify the `content-disposition` and `content-type` parameters which can be used in with HTML files and have them executed inline. Additionally, if combined with other techniques such as cookie bombing and specially crafted AppCache manifests, an attacker can gain access to private signed URLs within a specific storage path. This vulnerability has been fixed ",
          "fixed_versions": [
            "5.2.1.1"
          ],
          "identifier": "CVE-2018-16477",
          "identifiers": [
            "CVE-2018-16477"
          ],
          "not_impacted": "All versions before 5.2.0, all versions starting from 5.2.1.1",
          "package_slug": "gem/activestorage",
          "pubdate": "2018-11-30",
          "solution": "Upgrade to version 5.2.1.1 or above.",
          "title": "Exposure of Sensitive Information to an Unauthorized Actor",
          "urls": [
            "https://nvd.nist.gov/vuln/detail/CVE-2018-16477",
            "https://weblog.rubyonrails.org/2018/11/27/Rails-4-2-5-0-5-1-5-2-have-been-released/",
            "https://groups.google.com/d/msg/rubyonrails-security/3KQRnXDIuLg/mByx5KkqBAAJ"
          ],
          "uuid": "7f0f17ac-f326-446d-bef2-8a1b98f3f288"
        },
        {
          "affected_range": "\u003e=5.2.0 \u003c5.2.1.1",
          "affected_versions": "All versions starting from 5.2.0 before 5.2.1.1",
          "cvss_v2": "AV:N/AC:M/Au:N/C:N/I:P/A:N",
          "cvss_v3": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N",
          "cwe_ids": [
            "CWE-1035",
            "CWE-937"
          ],
          "date": "2019-10-09",
          "description": "A bypass vulnerability in Active Storage for Google Cloud Storage and Disk services allow an attacker to modify the `content-disposition` and `content-type` parameters which can be used in with HTML files and have them executed inline. Additionally, if combined with other techniques such as cookie bombing and specially crafted AppCache manifests, an attacker can gain access to private signed URLs within a specific storage path.",
          "fixed_versions": [
            "5.2.1.1"
          ],
          "identifier": "CVE-2018-16477",
          "identifiers": [
            "CVE-2018-16477"
          ],
          "not_impacted": "All versions before 5.2.0, all versions starting from 5.2.1.1",
          "package_slug": "gem/rails",
          "pubdate": "2018-11-30",
          "solution": "Upgrade to version 5.2.1.1 or above.",
          "title": "Code Injection",
          "urls": [
            "https://nvd.nist.gov/vuln/detail/CVE-2018-16477",
            "https://weblog.rubyonrails.org/2018/11/27/Rails-4-2-5-0-5-1-5-2-have-been-released/"
          ],
          "uuid": "daf809b7-66ab-409a-b487-e336466f9549"
        }
      ]
    },
    "nvd.nist.gov": {
      "configurations": {
        "CVE_data_version": "4.0",
        "nodes": [
          {
            "children": [],
            "cpe_match": [
              {
                "cpe23Uri": "cpe:2.3:a:rubyonrails:rails:*:*:*:*:*:*:*:*",
                "cpe_name": [],
                "versionEndExcluding": "5.2.1.1",
                "versionStartIncluding": "5.2.0",
                "vulnerable": true
              }
            ],
            "operator": "OR"
          }
        ]
      },
      "cve": {
        "CVE_data_meta": {
          "ASSIGNER": "cve-assignments@hackerone.com",
          "ID": "CVE-2018-16477"
        },
        "data_format": "MITRE",
        "data_type": "CVE",
        "data_version": "4.0",
        "description": {
          "description_data": [
            {
              "lang": "en",
              "value": "A bypass vulnerability in Active Storage \u003e= 5.2.0 for Google Cloud Storage and Disk services allow an attacker to modify the `content-disposition` and `content-type` parameters which can be used in with HTML files and have them executed inline. Additionally, if combined with other techniques such as cookie bombing and specially crafted AppCache manifests, an attacker can gain access to private signed URLs within a specific storage path. This vulnerability has been fixed in version 5.2.1.1."
            }
          ]
        },
        "problemtype": {
          "problemtype_data": [
            {
              "description": [
                {
                  "lang": "en",
                  "value": "NVD-CWE-noinfo"
                }
              ]
            }
          ]
        },
        "references": {
          "reference_data": [
            {
              "name": "https://weblog.rubyonrails.org/2018/11/27/Rails-4-2-5-0-5-1-5-2-have-been-released/",
              "refsource": "MISC",
              "tags": [
                "Vendor Advisory"
              ],
              "url": "https://weblog.rubyonrails.org/2018/11/27/Rails-4-2-5-0-5-1-5-2-have-been-released/"
            },
            {
              "name": "https://groups.google.com/d/msg/rubyonrails-security/3KQRnXDIuLg/mByx5KkqBAAJ",
              "refsource": "MISC",
              "tags": [
                "Exploit",
                "Mitigation",
                "Mailing List",
                "Third Party Advisory"
              ],
              "url": "https://groups.google.com/d/msg/rubyonrails-security/3KQRnXDIuLg/mByx5KkqBAAJ"
            }
          ]
        }
      },
      "impact": {
        "baseMetricV2": {
          "acInsufInfo": false,
          "cvssV2": {
            "accessComplexity": "MEDIUM",
            "accessVector": "NETWORK",
            "authentication": "NONE",
            "availabilityImpact": "NONE",
            "baseScore": 4.3,
            "confidentialityImpact": "NONE",
            "integrityImpact": "PARTIAL",
            "vectorString": "AV:N/AC:M/Au:N/C:N/I:P/A:N",
            "version": "2.0"
          },
          "exploitabilityScore": 8.6,
          "impactScore": 2.9,
          "obtainAllPrivilege": false,
          "obtainOtherPrivilege": false,
          "obtainUserPrivilege": false,
          "severity": "MEDIUM",
          "userInteractionRequired": true
        },
        "baseMetricV3": {
          "cvssV3": {
            "attackComplexity": "LOW",
            "attackVector": "NETWORK",
            "availabilityImpact": "NONE",
            "baseScore": 6.5,
            "baseSeverity": "MEDIUM",
            "confidentialityImpact": "NONE",
            "integrityImpact": "HIGH",
            "privilegesRequired": "NONE",
            "scope": "UNCHANGED",
            "userInteraction": "REQUIRED",
            "vectorString": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N",
            "version": "3.0"
          },
          "exploitabilityScore": 2.8,
          "impactScore": 3.6
        }
      },
      "lastModifiedDate": "2019-10-09T23:36Z",
      "publishedDate": "2018-11-30T19:29Z"
    }
  }
}


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…