GHSA-VVMR-8829-6WHX

Vulnerability from github – Published: 2022-02-01 00:46 – Updated: 2024-04-22 18:35
VLAI?
Summary
CSRF token missing in Symfony
Details

Description

The Symfony form component provides a CSRF protection mechanism by using a random token injected in the form and using the session to store and control the token submitted by the user. When using the FrameworkBundle, this protection can be enabled or disabled with the configuration. If the configuration is not specified, by default, the mechanism is enabled as long as the session is enabled.

In a recent change in the way the configuration is loaded, the default behavior has been dropped and, as a result, the CSRF protection is not enabled in form when not explicitly enabled, which makes the application sensible to CSRF attacks.

Resolution

Symfony restored the default configuration to enable the CSRF protection by default.

The patch for this issue is available here for branch 5.3.

Credits

We would like to thank Catalin Dan and David Lochner for reporting the issue and Jérémy Derussé for fixing the issue.

Show details on source website

{
  "affected": [
    {
      "package": {
        "ecosystem": "Packagist",
        "name": "symfony/framework-bundle"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "5.3.14"
            },
            {
              "fixed": "5.3.15"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "5.3.14"
      ]
    },
    {
      "package": {
        "ecosystem": "Packagist",
        "name": "symfony/framework-bundle"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "5.4.3"
            },
            {
              "fixed": "5.4.4"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "5.4.3"
      ]
    },
    {
      "package": {
        "ecosystem": "Packagist",
        "name": "symfony/framework-bundle"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "6.0.3"
            },
            {
              "fixed": "6.0.4"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "6.0.3"
      ]
    }
  ],
  "aliases": [
    "CVE-2022-23601"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-352"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2022-01-31T22:03:31Z",
    "nvd_published_at": "2022-02-01T13:15:00Z",
    "severity": "HIGH"
  },
  "details": "Description\n-----------\n\nThe Symfony form component provides a CSRF protection mechanism by using a random token injected in the form and using the session to store and control the token submitted by the user.\nWhen using the FrameworkBundle, this protection can be enabled or disabled with the configuration. If the configuration is not specified, by default, the mechanism is enabled as long as the session is enabled.\n\nIn a recent change in the way the configuration is loaded, the default behavior has been dropped and, as a result, the CSRF protection is not enabled in form when not explicitly enabled, which makes the application sensible to CSRF attacks.\n\nResolution\n----------\n\nSymfony restored the default configuration to enable the CSRF protection by default.\n\nThe patch for this issue is available [here](https://github.com/symfony/symfony/commit/f0ffb775febdf07e57117aabadac96fa37857f50) for branch 5.3.\n\nCredits\n-------\n\nWe would like to thank Catalin Dan and David Lochner for reporting the issue and J\u00e9r\u00e9my Deruss\u00e9 for fixing the issue.",
  "id": "GHSA-vvmr-8829-6whx",
  "modified": "2024-04-22T18:35:37Z",
  "published": "2022-02-01T00:46:57Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/symfony/symfony/security/advisories/GHSA-vvmr-8829-6whx"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2022-23601"
    },
    {
      "type": "WEB",
      "url": "https://github.com/symfony/symfony/commit/f0ffb775febdf07e57117aabadac96fa37857f50"
    },
    {
      "type": "WEB",
      "url": "https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/framework-bundle/CVE-2022-23601.yaml"
    },
    {
      "type": "WEB",
      "url": "https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/symfony/CVE-2022-23601.yaml"
    },
    {
      "type": "WEB",
      "url": "https://github.com/symfony/symfony"
    },
    {
      "type": "WEB",
      "url": "https://symfony.com/cve-2022-23601"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N",
      "type": "CVSS_V3"
    }
  ],
  "summary": "CSRF token missing in Symfony"
}


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…