CVE-2024-24771 (GCVE-0-2024-24771)
Vulnerability from cvelistv5
Published
2024-02-07 14:51
Modified
2026-01-30 19:53
CWE
  • CWE-284 - Improper Access Control
  • CWE-287 - Improper Authentication
  • CWE-654 - Reliance on a Single Factor in a Security Decision
Summary
Open Forms allows users create and publish smart forms. Versions prior to 2.2.9, 2.3.7, 2.4.5, and 2.5.2 contain a non-exploitable multi-factor authentication weakness. Superusers who have their credentials (username + password) compromised could potentially have the second-factor authentication bypassed if an attacker somehow managed to authenticate to Open Forms. The maintainers of Open Forms do not believe it is or has been possible to perform this login. However, if this were possible, the victim's account may be abused to view (potentially sensitive) submission data or have been used to impersonate other staff accounts to view and/or modify data. Three mitigating factors to help prevent exploitation include: the usual login page (at `/admin/login/`) does not fully log in the user until the second factor was succesfully provided; the additional non-MFA protected login page at `/api/v2/api-authlogin/` was misconfigured and could not be used to log in; and there are no additional ways to log in. This also requires credentials of a superuser to be compromised to be exploitable. Versions 2.2.9, 2.3.7, 2.4.5, and 2.5.2 contain the following patches to address these weaknesses: Move and only enable the API auth endpoints (`/api/v2/api-auth/login/`) with `settings.DEBUG = True`. `settings.DEBUG = True` is insecure and should never be applied in production settings. Additionally, apply a custom permission check to the hijack flow to only allow second-factor-verified superusers to perform user hijacking.
Impacted products
Vendor Product Version
open-formulieren open-forms Version: < 2.2.9
Version: >= 2.3.0-alpha.0, < 2.3.7
Version: >= 2.4.0-alpha.0, < 2.4.4
Version: >= 2.5.0-alpha.0, < 2.5.2
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-24771",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-02-07T19:33:10.005162Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-07-05T17:21:41.057Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      },
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-01T23:28:12.208Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "name": "https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63",
            "tags": [
              "x_refsource_CONFIRM",
              "x_transferred"
            ],
            "url": "https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63"
          },
          {
            "name": "https://github.com/open-formulieren/open-forms/releases/tag/2.2.9",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://github.com/open-formulieren/open-forms/releases/tag/2.2.9"
          },
          {
            "name": "https://github.com/open-formulieren/open-forms/releases/tag/2.3.7",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://github.com/open-formulieren/open-forms/releases/tag/2.3.7"
          },
          {
            "name": "https://github.com/open-formulieren/open-forms/releases/tag/2.4.5",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://github.com/open-formulieren/open-forms/releases/tag/2.4.5"
          },
          {
            "name": "https://github.com/open-formulieren/open-forms/releases/tag/2.5.2",
            "tags": [
              "x_refsource_MISC",
              "x_transferred"
            ],
            "url": "https://github.com/open-formulieren/open-forms/releases/tag/2.5.2"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "product": "open-forms",
          "vendor": "open-formulieren",
          "versions": [
            {
              "status": "affected",
              "version": "\u003c 2.2.9"
            },
            {
              "status": "affected",
              "version": "\u003e= 2.3.0-alpha.0, \u003c 2.3.7"
            },
            {
              "status": "affected",
              "version": "\u003e= 2.4.0-alpha.0, \u003c 2.4.4"
            },
            {
              "status": "affected",
              "version": "\u003e= 2.5.0-alpha.0, \u003c 2.5.2"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "Open Forms allows users create and publish smart forms. Versions prior to 2.2.9, 2.3.7, 2.4.5, and 2.5.2 contain a non-exploitable multi-factor authentication weakness. Superusers who have their credentials (username + password) compromised could potentially have the second-factor authentication bypassed if an attacker somehow managed to authenticate to Open Forms. The maintainers of Open Forms do not believe it is or has been possible to perform this login. However, if this were possible, the victim\u0027s account may be abused to view (potentially sensitive) submission data or have been used to impersonate other staff accounts to view and/or modify data. Three mitigating factors to help prevent exploitation include: the usual login page (at `/admin/login/`) does not fully log in the user until the second factor was succesfully provided; the additional non-MFA protected login page at `/api/v2/api-authlogin/` was misconfigured and could not be used to log in; and there are no additional ways to log in. This also requires credentials of a superuser to be compromised to be exploitable. Versions 2.2.9, 2.3.7, 2.4.5, and 2.5.2 contain the following patches to address these weaknesses: Move and only enable the API auth endpoints (`/api/v2/api-auth/login/`) with `settings.DEBUG = True`. `settings.DEBUG = True` is insecure and should never be applied in production settings. Additionally, apply a custom permission check to the hijack flow to only allow second-factor-verified superusers to perform user hijacking."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "attackComplexity": "HIGH",
            "attackVector": "NETWORK",
            "availabilityImpact": "NONE",
            "baseScore": 7.7,
            "baseSeverity": "HIGH",
            "confidentialityImpact": "HIGH",
            "integrityImpact": "HIGH",
            "privilegesRequired": "HIGH",
            "scope": "CHANGED",
            "userInteraction": "NONE",
            "vectorString": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:N",
            "version": "3.1"
          }
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-284",
              "description": "CWE-284: Improper Access Control",
              "lang": "en",
              "type": "CWE"
            }
          ]
        },
        {
          "descriptions": [
            {
              "cweId": "CWE-287",
              "description": "CWE-287: Improper Authentication",
              "lang": "en",
              "type": "CWE"
            }
          ]
        },
        {
          "descriptions": [
            {
              "cweId": "CWE-654",
              "description": "CWE-654: Reliance on a Single Factor in a Security Decision",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-01-30T19:53:43.776Z",
        "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
        "shortName": "GitHub_M"
      },
      "references": [
        {
          "name": "https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63",
          "tags": [
            "x_refsource_CONFIRM"
          ],
          "url": "https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63"
        },
        {
          "name": "https://github.com/open-formulieren/open-forms/releases/tag/2.2.9",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://github.com/open-formulieren/open-forms/releases/tag/2.2.9"
        },
        {
          "name": "https://github.com/open-formulieren/open-forms/releases/tag/2.3.7",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://github.com/open-formulieren/open-forms/releases/tag/2.3.7"
        },
        {
          "name": "https://github.com/open-formulieren/open-forms/releases/tag/2.4.5",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://github.com/open-formulieren/open-forms/releases/tag/2.4.5"
        },
        {
          "name": "https://github.com/open-formulieren/open-forms/releases/tag/2.5.2",
          "tags": [
            "x_refsource_MISC"
          ],
          "url": "https://github.com/open-formulieren/open-forms/releases/tag/2.5.2"
        }
      ],
      "source": {
        "advisory": "GHSA-64r3-x3gf-vp63",
        "discovery": "UNKNOWN"
      },
      "title": "Open Forms potential multi-factor authentication bypass"
    }
  },
  "cveMetadata": {
    "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
    "assignerShortName": "GitHub_M",
    "cveId": "CVE-2024-24771",
    "datePublished": "2024-02-07T14:51:10.303Z",
    "dateReserved": "2024-01-29T20:51:26.013Z",
    "dateUpdated": "2026-01-30T19:53:43.776Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63\", \"name\": \"https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63\", \"tags\": [\"x_refsource_CONFIRM\", \"x_transferred\"]}, {\"url\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.2.9\", \"name\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.2.9\", \"tags\": [\"x_refsource_MISC\", \"x_transferred\"]}, {\"url\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.3.7\", \"name\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.3.7\", \"tags\": [\"x_refsource_MISC\", \"x_transferred\"]}, {\"url\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.4.5\", \"name\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.4.5\", \"tags\": [\"x_refsource_MISC\", \"x_transferred\"]}, {\"url\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.5.2\", \"name\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.5.2\", \"tags\": [\"x_refsource_MISC\", \"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-01T23:28:12.208Z\"}}, {\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-24771\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-02-07T19:33:10.005162Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-07-05T15:20:39.641Z\"}}], \"cna\": {\"title\": \"Open Forms potential multi-factor authentication bypass\", \"source\": {\"advisory\": \"GHSA-64r3-x3gf-vp63\", \"discovery\": \"UNKNOWN\"}, \"metrics\": [{\"cvssV3_1\": {\"scope\": \"CHANGED\", \"version\": \"3.1\", \"baseScore\": 7.7, \"attackVector\": \"NETWORK\", \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:N\", \"integrityImpact\": \"HIGH\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"HIGH\", \"availabilityImpact\": \"NONE\", \"privilegesRequired\": \"HIGH\", \"confidentialityImpact\": \"HIGH\"}}], \"affected\": [{\"vendor\": \"open-formulieren\", \"product\": \"open-forms\", \"versions\": [{\"status\": \"affected\", \"version\": \"\u003c 2.2.9\"}, {\"status\": \"affected\", \"version\": \"\u003e= 2.3.0-alpha.0, \u003c 2.3.7\"}, {\"status\": \"affected\", \"version\": \"\u003e= 2.4.0-alpha.0, \u003c 2.4.4\"}, {\"status\": \"affected\", \"version\": \"\u003e= 2.5.0-alpha.0, \u003c 2.5.2\"}]}], \"references\": [{\"url\": \"https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63\", \"name\": \"https://github.com/open-formulieren/open-forms/security/advisories/GHSA-64r3-x3gf-vp63\", \"tags\": [\"x_refsource_CONFIRM\"]}, {\"url\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.2.9\", \"name\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.2.9\", \"tags\": [\"x_refsource_MISC\"]}, {\"url\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.3.7\", \"name\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.3.7\", \"tags\": [\"x_refsource_MISC\"]}, {\"url\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.4.5\", \"name\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.4.5\", \"tags\": [\"x_refsource_MISC\"]}, {\"url\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.5.2\", \"name\": \"https://github.com/open-formulieren/open-forms/releases/tag/2.5.2\", \"tags\": [\"x_refsource_MISC\"]}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"Open Forms allows users create and publish smart forms. Versions prior to 2.2.9, 2.3.7, 2.4.5, and 2.5.2 contain a non-exploitable multi-factor authentication weakness. Superusers who have their credentials (username + password) compromised could potentially have the second-factor authentication bypassed if an attacker somehow managed to authenticate to Open Forms. The maintainers of Open Forms do not believe it is or has been possible to perform this login. However, if this were possible, the victim\u0027s account may be abused to view (potentially sensitive) submission data or have been used to impersonate other staff accounts to view and/or modify data. Three mitigating factors to help prevent exploitation include: the usual login page (at `/admin/login/`) does not fully log in the user until the second factor was succesfully provided; the additional non-MFA protected login page at `/api/v2/api-authlogin/` was misconfigured and could not be used to log in; and there are no additional ways to log in. This also requires credentials of a superuser to be compromised to be exploitable. Versions 2.2.9, 2.3.7, 2.4.5, and 2.5.2 contain the following patches to address these weaknesses: Move and only enable the API auth endpoints (`/api/v2/api-auth/login/`) with `settings.DEBUG = True`. `settings.DEBUG = True` is insecure and should never be applied in production settings. Additionally, apply a custom permission check to the hijack flow to only allow second-factor-verified superusers to perform user hijacking.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-284\", \"description\": \"CWE-284: Improper Access Control\"}]}, {\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-287\", \"description\": \"CWE-287: Improper Authentication\"}]}, {\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-654\", \"description\": \"CWE-654: Reliance on a Single Factor in a Security Decision\"}]}], \"providerMetadata\": {\"orgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"shortName\": \"GitHub_M\", \"dateUpdated\": \"2026-01-30T19:53:43.776Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2024-24771\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-01-30T19:53:43.776Z\", \"dateReserved\": \"2024-01-29T20:51:26.013Z\", \"assignerOrgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"datePublished\": \"2024-02-07T14:51:10.303Z\", \"assignerShortName\": \"GitHub_M\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }
  }
}


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.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • 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…