Severity
- CVSS 3.x
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
Affected versions
Repository
| Affected commits | Fixed by commit |
|---|---|
| GIT github.com/django/django ↗ | |
| df591468251ed489a3e147d7c359f387f4effe66 to before 3baf68b4efc660ff68fd246d2f7092bfd42a7a4a | 3baf68b4efc660ff68fd246d2f7092bfd42a7a4a |
| 2a62cdcfec85938f40abb2e9e6a9ff497e02afe8 to before b8782c52c99175916a1dceaece758608ac5856d0 | b8782c52c99175916a1dceaece758608ac5856d0 |
Description
Django 2.1 before 2.1.15 and 2.2 before 2.2.8 allows unintended model editing. A Django model admin displaying inline related models, where the user has view-only permissions to a parent model but edit permissions to the inline model, would be presented with an editing UI, allowing POST requests, for updating the inline model. Directly editing the view-only parent model was not possible, but the parent model's save() method was called, triggering potential side effects, and causing pre and post-save signal handlers to be invoked. (To resolve this, the Django admin is adjusted to require edit permissions on the parent model in order for inline models to be editable.)
References
- Webgroups.google.com/forum/#%21topic/django-announce/GjGqDvtNmWQ ↗
- Weblists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/6R4HD22PVEVQ45H2JA2NXH443AYJOPL5/ ↗
- Advisorysecurity.gentoo.org/glsa/202004-17 ↗
- Advisorysecurity.netapp.com/advisory/ntap-20191217-0003/ ↗
- Fixwww.openwall.com/lists/oss-security/2019/12/02/1 ↗
- Fixdocs.djangoproject.com/en/dev/releases/security/ ↗
- Fixwww.djangoproject.com/weblog/2019/dec/02/security-releases/ ↗