CVE Catalog

CVE-2026-61588

MediumCVSS 6.5
Published: Translated: NVD NIST

Summary

In djust before version 1.0.7, assigning a Django Model instance to a public view attribute serialized the entire object to the client without a sensitive-field denylist. This sent fields such as password hashes, privilege flags (is_staff, is_superuser), tokens, and other PII to the browser. Fixed in 1.0.7.

Risk Assessment

Credentials, tokens, and PII may leak to the user's browser even if the developer was unaware that the full model object was being transmitted. This can lead to account takeover or privacy breaches.

Recommendation

Upgrade djust to version 1.0.7 or later. As a workaround until patched, keep Model instances on _private attributes and expose only the specific fields needed.

Other vulnerabilities in djust

See all
Original NVD description (English source)

djust provides Phoenix LiveView-style reactive server-side rendering for Django with Rust-powered performance. Prior to version 1.0.7, 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. This is 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. As a workaround, keep `Model` instances on `_private` attributes and expose only the specific fields needed, until patched.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS