Cyber Resilience

CVE-2022-34265

SQLi in Djangoproject Django 3.2 – 3.2.14

High EPSSSQLi
Published
04 July 2022
Modified
21 November 2024
Patch / advisory
CVSS Score v3.1 9.8
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.73 99.4th percentile
Risk Priority 97 floored blend · peak EPSS

Summary

CVE-2022-34265 is a critical-severity SQL Injection (CWE-89) vulnerability in Djangoproject Django. Its CVSS base score is 9.8 (Critical).

Operationally, ranked in the top 0.6% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to SI-10 (Information Input Validation) and SI-2 (Flaw Remediation) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2022-34265 is a SQL injection vulnerability affecting the Trunc() and Extract() database functions in Django versions 3.2 before 3.2.14 and 4.0 before 4.0.6. The flaw arises when untrusted data is supplied as a kind or lookup_name argument; applications that restrict these values to a known-safe list are not impacted. It carries a CVSS 3.1 base score of 9.8 and is classified under CWE-89.

An unauthenticated remote attacker can supply a malicious lookup name or kind value through any application endpoint that passes user-controlled input directly to these functions. Successful exploitation allows arbitrary SQL execution, resulting in full compromise of confidentiality, integrity, and availability of the underlying database and potentially the Django application itself.

Official Django security releases and downstream advisories direct users to upgrade immediately to 3.2.14 or 4.0.6 (or later). The referenced announcements also include package updates for Fedora and NetApp products that embed the affected Django versions.

The associated EPSS score stands at 0.9283, indicating a high likelihood of exploitation in the wild.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

An issue was discovered in Django 3.2 before 3.2.14 and 4.0 before 4.0.6. The Trunc() and Extract() database functions are subject to SQL injection if untrusted data is used as a kind/lookup_name value. Applications that constrain the lookup name and…

more

kind choice to a known safe list are unaffected.

CWE(s)

Related Threats

Likely ATT&CK TechniquesAI

Techniques this vulnerability likely enables, inferred from its description, weakness type, and attributed-actor tradecraft. Confidence is per-technique.

T1190 Exploit Public-Facing Application Initial Accessconfidence: HIGH
SQL injection in Django Trunc/Extract functions allows unauthenticated attackers to execute arbitrary SQL against a public-facing application.
T1059 Command and Scripting Interpreter Executionconfidence: MEDIUM
Successful exploitation yields arbitrary SQL commands that can be used as a command/scripting interpreter against the database.
T1005 Data from Local System Collectionconfidence: MEDIUM
Arbitrary SQL execution enables direct retrieval of data stored on the local database system.
inferred from description + CWE · MITRE ATT&CK Enterprise v19.0

CVEs Like This One

CVE-2020-7471Same product: Djangoproject Django
CVE-2024-42005Same product: Djangoproject Django
CVE-2024-6216Shared CWE-89
CVE-2023-39526Shared CWE-89
CVE-2023-45376Shared CWE-89
CVE-2024-36683Shared CWE-89
CVE-2023-1566Shared CWE-89
CVE-2023-30192Shared CWE-89
CVE-2024-29390Shared CWE-89
CVE-2024-33960Shared CWE-89

Affected Assets

djangoproject
django
3.2 — 3.2.14 · 4.0 — 4.0.6

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)
  • SI-10 Information Input Validation
  • SI-2 Flaw Remediation
  • AC-6 Least Privilege
Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V6.2.5

Mitigating Controls (NIST 800-53 r5) AI

prevent

Directly requires validation of untrusted kind/lookup_name values before they reach Trunc()/Extract(), blocking the SQL injection vector.

prevent

Mandates timely application of the Django 3.2.14/4.0.6 patches that eliminate the vulnerable code paths.

prevent

Limits database account privileges so that even a successful SQLi yields reduced impact on confidentiality/integrity/availability.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly target injection flaws during coding and review so largely prevent CWE-89 introduction, yet the single broad outcome leaves residual risk from incomplete neutralization techniques or missed edge cases.

PR.AT-02 partial match
prevents

Training raises developer awareness of SQLi risks and can reduce introduction likelihood (partial) but removes none of the actual coding flaw's risk by itself since technical neutralization is still required.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

detects

The same secure-coding and static-analysis activities surface missing neutralization of SQL metacharacters before the system is accepted.

prevents

Early warnings and shared best-practice information help organizations apply the latest remediation techniques against SQL-injection vulnerabilities.

prevents

Threat-intelligence feeds that surface new SQL-injection campaigns enable rapid updates to query-construction defenses and detection signatures before exploitation occurs.

prevents

Secure-coding rules and security testing phases mandate the use of parameterized queries or equivalent escaping, preventing the construction of dynamic SQL statements from untrusted input.

prevents

Language-specific secure coding rules, peer review and SAST together prevent the construction of SQL statements from untrusted data without proper parameterization or escaping.

References