Skip to content
Heist/ feed
Back to feed
Medium

djangoSIGE 1.10 CSRF via GET-based Order Cancellation Views

Type: advisorySources: OSV

djangoSIGE through 1.10 (commit a6fe7e8) contains a cross-site request forgery vulnerability that allows unauthenticated attackers to cancel sales or purchase orders on behalf of authenticated users by exploiting order-cancellation logic implemented inside HTTP GET method handlers in CancelarOrcamentoVendaView, CancelarPedidoVendaView, CancelarOrcamentoCompraView, and CancelarPedidoCompraView. Attackers can lure an authenticated victim with change_orcamentovenda or equivalent permissions to a page containing a cross-origin reference such as an img tag pointing to the cancellation endpoint, bypassing CSRF token validation entirely since Django's CsrfViewMiddleware only enforces CSRF checks on unsafe HTTP methods.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-64821
Confirmed fixed CVEs
Not specified
Updated in this feed
2 Nov 2026, 18:46 UTC · Revision 1

Source evidence

djangoSIGE 1.10 CSRF via GET-based Order Cancellation Views

core-osv · Original source

Published 21 Jul 2026, 20:31 UTC

djangoSIGE through 1.10 (commit a6fe7e8) contains a cross-site request forgery vulnerability that allows unauthenticated attackers to cancel sales or purchase orders on behalf of authenticated users by exploiting order-cancellation logic implemented inside HTTP GET method handlers in CancelarOrcamentoVendaView, CancelarPedidoVendaView, CancelarOrcamentoCompraView, and CancelarPedidoCompraView. Attackers can lure an authenticated victim with change_orcamentovenda or equivalent permissions to a page containing a cross-origin reference such as an img tag pointing to the cancellation endpoint, bypassing CSRF token validation entirely since Django's CsrfViewMiddleware only enforces CSRF checks on unsafe HTTP methods.

osv:CVE-2026-64821
Complete source record
{
  "id": "5c81baf12026285f8debc6c1b8ffc497bb9ed6c02d099f5a954cdda12b13e0ae",
  "url": "https://osv.dev/vulnerability/CVE-2026-64821",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "djangoSIGE 1.10 CSRF via GET-based Order Cancellation Views",
    "summary": "djangoSIGE through 1.10 (commit a6fe7e8) contains a cross-site request forgery vulnerability that allows unauthenticated attackers to cancel sales or purchase orders on behalf of authenticated users by exploiting order-cancellation logic implemented inside HTTP GET method handlers in CancelarOrcamentoVendaView, CancelarPedidoVendaView, CancelarOrcamentoCompraView, and CancelarPedidoCompraView. Attackers can lure an authenticated victim with change_orcamentovenda or equivalent permissions to a page containing a cross-origin reference such as an img tag pointing to the cancellation endpoint, bypassing CSRF token validation entirely since Django's CsrfViewMiddleware only enforces CSRF checks on unsafe HTTP methods.",
    "evidence": "osv:CVE-2026-64821",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-64821",
      "aliases": [
        "CVE-2026-64821"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/thiagopena/djangoSIGE",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "last_affected": "a6fe7e8e3a7d52ba0a25305df4e5e7e0cd5f5792"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "last_affected": "a6fe7e8e3a7d52ba0a25305df4e5e7e0cd5f5792"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  }
                ]
              }
            }
          ],
          "versions": [
            "0.0.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-64821.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:22.248549247Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64821.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-64821",
        "https://www.vulncheck.com/advisories/djangosige-csrf-via-get-based-order-cancellation-views",
        "https://github.com/thiagopena/djangoSIGE/pull/163",
        "https://github.com/thiagopena/djangoSIGE",
        "https://github.com/americooo/pentest-writeups/tree/main/djangoSIGE-CVE-2026-64821-64822"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-352"
        ],
        "cna_assigner": "VulnCheck",
        "unresolved_ranges": [
          {
            "extracted_events": [
              {
                "range": [
                  {
                    "last_affected": "1.10"
                  }
                ],
                "source": "AFFECTED_FIELD",
                "strategy": "StandardRange"
              }
            ]
          }
        ],
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64821.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-64821",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 488745,
  "published_at": "2026-07-21T20:31:35.885+00:00"
}