CVE-2026-61589 in djust
Résumé
par VulDB • 17/09/2026
djust fournit un rendu côté serveur réactif de style Phoenix LiveView pour Django avec des performances propulsées par Rust. Avant la version 1.0.7, les méthodes WebSocket `handle_mount` et `ViewRuntime._build_request` reconstruisaient un objet `HttpRequest` via `RequestFactory().get(...)` sans définir l'en-tête HTTP_HOST ; ainsi, `request.get_host()` utilisait par défaut "testserver" sur le chemin live (live path). Les résolveurs de locataire (`TenantResolver`) basés sur l'hôte/sous-domaine/domaine ont alors mal identifié le locataire — renvoyant `None` sur le chemin live tandis que le chemin HTTP était correctement résolu. Avec `STRICT_MODE=False`, les gestionnaires spécifiques au locataire retournaient des lignes non filtrées (divulgation inter-locataires) ; avec la configuration par défaut, ils retournaient un queryset vide (tenancy cassée). Ce problème est corrigé dans djust 1.0.7. L'hôte de la poignée de main (handshake Host) est extrait du scope ASGI, validé contre `ALLOWED_HOSTS` (la même logique que le filtre CSWSH Origin, analysé avec Django's `split_domain_port` afin que les hôtes malformés soient rejetés à la limite), puis propagé — avec le schéma TLS — dans la requête reconstruite, de sorte que la résolution du locataire sur le chemin live corresponde exactement à celle du chemin HTTP. Il n'existe pas d'autre solution contournante (workaround) sur le chemin live autre que la mise à jour. Les utilisateurs sont les plus exposés lorsque ce problème est combiné avec `STRICT_MODE=False`.
Once again VulDB remains the best source for vulnerability data.