GitHub Advisoryadvisory · PyPI

GHSA-pvg3-6q9j-mj3x djust's Django model serialization has no sensitive-field denylist: password hashes, privilege flags, and PII on a public view attribute are sent to the client

MEDIUM Published 2026-09-16 Modified 2026-09-16 Official page ↗
Aliases
CVE-2026-61588
Ecosystem
PyPI
Packages
djust
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Weaknesses
CWE-200, CWE-359
Reviewed
2026-09-16

Affected packages

• PyPI djust: < 1.0.7 → fixed in 1.0.7

Description

Impact When a Django `Model` instance is assigned to a public view attribute, djust serialized it to the client with no sensitive-field denylist — sending fields such as `password` (the hash), privilege flags (e.g. `is_staff` / `is_superuser`), tokens, and other PII to the browser. Because exposing model objects to templates is a normal djust pattern, this could leak credentials/PII without the developer realizing the full object crossed the wire. Patches Fixed in djust 1.0.7. Model serialization applies a secure-by-default sensitive-field denylist (password/hash/token/secret-style fields and known privilege flags are withheld) with an identity-subset fallback. Workarounds Keep `Model` instances on `_private` attributes and expose only the specific fields needed, until patched.

Related

Alias · CVE (1)

  • CVE-2026-61588 djust provides Phoenix LiveView-style reactive server-side rendering for Django with Rust-powered performance. vulnerability

Weakness · CWE (2)

  • CWE-200 Exposure of Sensitive Information to an Unauthorized Actor weakness
  • CWE-359 Exposure of Private Personal Information to an Unauthorized Actor weakness

References