{
  "schema_version": "1.4.0",
  "id": "GHSA-g36h-6r4f-3mqp",
  "modified": "2023-09-12T20:48:10Z",
  "published": "2018-07-24T20:16:11Z",
  "aliases": [
    "CVE-2017-16116"
  ],
  "summary": "Regular Expression Denial of Service in string package",
  "details": "Affected versions of `string` are vulnerable to regular expression denial of service when specifically crafted untrusted user input is passed into the `underscore` or `unescapeHTML` methods.\n\n\n## Recommendation\n\nThere is currently no direct patch for this vulnerability. \n\nCurrently, the best solution is to avoid passing user input to the `underscore` and `unescapeHTML` methods.\n\nAlternatively, a user provided patch is available in [Pull Request #217]( https://github.com/jprichardson/string.js/pull/217/commits/eab9511e4efbc8c521e18b6cf2e8565ae50c5a16), however this patch has not been tested, nor has it been merged by the package author.",
  "severity": [
    {
      "type": "CVSS_V3",
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
    }
  ],
  "affected": [
    {
      "package": {
        "ecosystem": "npm",
        "name": "string"
      },
      "ranges": [
        {
          "type": "ECOSYSTEM",
          "events": [
            {
              "introduced": "0"
            },
            {
              "last_affected": "3.3.3"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2017-16116"
    },
    {
      "type": "WEB",
      "url": "https://github.com/jprichardson/string.js/issues/212"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/advisories/GHSA-g36h-6r4f-3mqp"
    },
    {
      "type": "WEB",
      "url": "https://www.npmjs.com/advisories/536"
    }
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-400"
    ],
    "severity": "HIGH",
    "github_reviewed": true,
    "github_reviewed_at": "2020-06-16T21:35:57Z",
    "nvd_published_at": null
  }
}