{"document":{"aggregate_severity":{"namespace":"https://www.suse.com/support/security/rating/","text":"moderate"},"category":"csaf_vex","csaf_version":"2.0","distribution":{"text":"Copyright 2024 SUSE LLC. All rights reserved.","tlp":{"label":"WHITE","url":"https://www.first.org/tlp/"}},"lang":"en","notes":[{"category":"summary","text":"SUSE CVE-2019-19118","title":"Title"},{"category":"description","text":"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.)","title":"Description of the CVE"},{"category":"legal_disclaimer","text":"CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).","title":"Terms of use"}],"publisher":{"category":"vendor","contact_details":"https://www.suse.com/support/security/contact/","name":"SUSE Product Security Team","namespace":"https://www.suse.com/"},"references":[{"category":"external","summary":"CVE-2019-19118","url":"https://www.suse.com/security/cve/CVE-2019-19118"},{"category":"external","summary":"SUSE Security Ratings","url":"https://www.suse.com/support/security/rating/"},{"category":"external","summary":"SUSE Bug 1157705 for CVE-2019-19118","url":"https://bugzilla.suse.com/1157705"}],"title":"SUSE CVE CVE-2019-19118","tracking":{"current_release_date":"2026-01-04T00:37:12Z","generator":{"date":"2023-02-15T04:06:23Z","engine":{"name":"cve-database.git:bin/generate-csaf-vex.pl","version":"1"}},"id":"CVE-2019-19118","initial_release_date":"2023-02-15T04:06:23Z","revision_history":[{"date":"2023-02-15T04:06:23Z","number":"2","summary":"Current version"},{"date":"2024-07-20T03:55:18Z","number":"3","summary":"Current version"},{"date":"2025-01-01T06:10:09Z","number":"4","summary":"Current version"},{"date":"2025-02-15T06:47:40Z","number":"5","summary":"Current version"},{"date":"2025-02-17T07:12:53Z","number":"6","summary":"Current version"},{"date":"2025-03-15T10:27:20Z","number":"7","summary":"Current version"},{"date":"2025-04-25T05:57:25Z","number":"8","summary":"Current version"},{"date":"2025-10-07T09:20:55Z","number":"9","summary":"Current version"},{"date":"2026-01-04T00:37:12Z","number":"10","summary":"more updates released"}],"status":"interim","version":"10"}},"product_tree":{"branches":[{"branches":[{"branches":[{"category":"product_name","name":"HPE Helion OpenStack 8","product":{"name":"HPE Helion OpenStack 8","product_id":"HPE Helion OpenStack 8","product_identification_helper":{"cpe":"cpe:/o:suse:hpe-helion-openstack:8"}}},{"category":"product_name","name":"HPE Helion OpenStack Cloud 8","product":{"name":"HPE Helion OpenStack Cloud 8","product_id":"HPE Helion OpenStack Cloud 8"}},{"category":"product_name","name":"SUSE Enterprise Storage 4","product":{"name":"SUSE Enterprise Storage 4","product_id":"SUSE Enterprise Storage 4","product_identification_helper":{"cpe":"cpe:/o:suse:ses:4"}}},{"category":"product_name","name":"SUSE Enterprise Storage 5","product":{"name":"SUSE Enterprise Storage 5","product_id":"SUSE Enterprise Storage 5","product_identification_helper":{"cpe":"cpe:/o:suse:ses:5"}}},{"category":"product_name","name":"SUSE OpenStack Cloud 6-LTSS","product":{"name":"SUSE OpenStack Cloud 6-LTSS","product_id":"SUSE OpenStack Cloud 6-LTSS","product_identification_helper":{"cpe":"cpe:/o:suse:suse-openstack-cloud-ltss:6"}}},{"category":"product_name","name":"SUSE OpenStack Cloud 7","product":{"name":"SUSE OpenStack Cloud 7","product_id":"SUSE OpenStack Cloud 7","product_identification_helper":{"cpe":"cpe:/o:suse:suse-openstack-cloud:7"}}},{"category":"product_name","name":"SUSE OpenStack Cloud 8","product":{"name":"SUSE OpenStack Cloud 8","product_id":"SUSE OpenStack Cloud 8","product_identification_helper":{"cpe":"cpe:/o:suse:suse-openstack-cloud:8"}}},{"category":"product_name","name":"SUSE OpenStack Cloud Crowbar 8","product":{"name":"SUSE OpenStack Cloud Crowbar 8","product_id":"SUSE OpenStack Cloud Crowbar 8","product_identification_helper":{"cpe":"cpe:/o:suse:suse-openstack-cloud-crowbar:8"}}},{"category":"product_name","name":"SUSE Package Hub 15 SP1","product":{"name":"SUSE Package Hub 15 SP1","product_id":"SUSE Package Hub 15 SP1"}},{"category":"product_name","name":"openSUSE Leap 15.1","product":{"name":"openSUSE Leap 15.1","product_id":"openSUSE Leap 15.1","product_identification_helper":{"cpe":"cpe:/o:opensuse:leap:15.1"}}},{"category":"product_name","name":"openSUSE Tumbleweed","product":{"name":"openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed","product_identification_helper":{"cpe":"cpe:/o:opensuse:tumbleweed"}}},{"category":"product_version","name":"python-Django","product":{"name":"python-Django","product_id":"python-Django","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:*:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python-Django@?upstream=python-Django.src.rpm"}}},{"category":"product_version","name":"python3-Django-2.2.8-bp151.3.6.1","product":{"name":"python3-Django-2.2.8-bp151.3.6.1","product_id":"python3-Django-2.2.8-bp151.3.6.1","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:2.2.8:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python3-Django@2.2.8-bp151.3.6.1?upstream=python-Django-2.2.8-bp151.3.6.1.src.rpm"}}},{"category":"product_version","name":"python3-Django-2.2.8-lp151.2.6.1","product":{"name":"python3-Django-2.2.8-lp151.2.6.1","product_id":"python3-Django-2.2.8-lp151.2.6.1","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:2.2.8:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python3-Django@2.2.8-lp151.2.6.1?upstream=python-Django-2.2.8-lp151.2.6.1.src.rpm"}}},{"category":"product_version","name":"python310-Django-4.2.11-2.1","product":{"name":"python310-Django-4.2.11-2.1","product_id":"python310-Django-4.2.11-2.1","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:4.2.11:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python310-Django@4.2.11-2.1"}}},{"category":"product_version","name":"python310-Django4-4.2.14-1.1","product":{"name":"python310-Django4-4.2.14-1.1","product_id":"python310-Django4-4.2.14-1.1","product_identification_helper":{"purl":"pkg:rpm/suse/python310-Django4@4.2.14-1.1"}}},{"category":"product_version","name":"python311-Django-4.2.11-2.1","product":{"name":"python311-Django-4.2.11-2.1","product_id":"python311-Django-4.2.11-2.1","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:4.2.11:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python311-Django@4.2.11-2.1?upstream=python-Django-4.2.11-2.1.src.rpm"}}},{"category":"product_version","name":"python311-Django4-4.2.14-1.1","product":{"name":"python311-Django4-4.2.14-1.1","product_id":"python311-Django4-4.2.14-1.1","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:4.2.14:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python311-Django4@4.2.14-1.1"}}},{"category":"product_version","name":"python312-Django-4.2.11-2.1","product":{"name":"python312-Django-4.2.11-2.1","product_id":"python312-Django-4.2.11-2.1","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:4.2.11:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python312-Django@4.2.11-2.1"}}},{"category":"product_version","name":"python312-Django4-4.2.14-1.1","product":{"name":"python312-Django4-4.2.14-1.1","product_id":"python312-Django4-4.2.14-1.1","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:4.2.14:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python312-Django4@4.2.14-1.1"}}},{"category":"product_version","name":"python312-Django6-6.0-1.1","product":{"name":"python312-Django6-6.0-1.1","product_id":"python312-Django6-6.0-1.1","product_identification_helper":{"purl":"pkg:rpm/suse/python312-Django6@6.0-1.1"}}},{"category":"product_version","name":"python313-Django6-6.0-1.1","product":{"name":"python313-Django6-6.0-1.1","product_id":"python313-Django6-6.0-1.1","product_identification_helper":{"purl":"pkg:rpm/suse/python313-Django6@6.0-1.1"}}},{"category":"product_version","name":"python36-Django-3.2.7-2.3","product":{"name":"python36-Django-3.2.7-2.3","product_id":"python36-Django-3.2.7-2.3","product_identification_helper":{"purl":"pkg:rpm/suse/python36-Django@3.2.7-2.3"}}},{"category":"product_version","name":"python38-Django-3.2.7-2.3","product":{"name":"python38-Django-3.2.7-2.3","product_id":"python38-Django-3.2.7-2.3","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:3.2.7:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python38-Django@3.2.7-2.3"}}},{"category":"product_version","name":"python39-Django-3.2.7-2.3","product":{"name":"python39-Django-3.2.7-2.3","product_id":"python39-Django-3.2.7-2.3","product_identification_helper":{"cpe":"cpe:2.3:a:djangoproject:django:3.2.7:*:*:*:*:*:*:*","purl":"pkg:rpm/suse/python39-Django@3.2.7-2.3"}}}],"category":"product_family","name":"SUSE Linux Enterprise"}],"category":"vendor","name":"SUSE"}],"relationships":[{"category":"default_component_of","full_product_name":{"name":"python3-Django-2.2.8-bp151.3.6.1 as component of SUSE Package Hub 15 SP1","product_id":"SUSE Package Hub 15 SP1:python3-Django-2.2.8-bp151.3.6.1"},"product_reference":"python3-Django-2.2.8-bp151.3.6.1","relates_to_product_reference":"SUSE Package Hub 15 SP1"},{"category":"default_component_of","full_product_name":{"name":"python3-Django-2.2.8-lp151.2.6.1 as component of openSUSE Leap 15.1","product_id":"openSUSE Leap 15.1:python3-Django-2.2.8-lp151.2.6.1"},"product_reference":"python3-Django-2.2.8-lp151.2.6.1","relates_to_product_reference":"openSUSE Leap 15.1"},{"category":"default_component_of","full_product_name":{"name":"python310-Django-4.2.11-2.1 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python310-Django-4.2.11-2.1"},"product_reference":"python310-Django-4.2.11-2.1","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python310-Django4-4.2.14-1.1 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python310-Django4-4.2.14-1.1"},"product_reference":"python310-Django4-4.2.14-1.1","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python311-Django-4.2.11-2.1 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python311-Django-4.2.11-2.1"},"product_reference":"python311-Django-4.2.11-2.1","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python311-Django4-4.2.14-1.1 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python311-Django4-4.2.14-1.1"},"product_reference":"python311-Django4-4.2.14-1.1","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python312-Django-4.2.11-2.1 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python312-Django-4.2.11-2.1"},"product_reference":"python312-Django-4.2.11-2.1","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python312-Django4-4.2.14-1.1 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python312-Django4-4.2.14-1.1"},"product_reference":"python312-Django4-4.2.14-1.1","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python312-Django6-6.0-1.1 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python312-Django6-6.0-1.1"},"product_reference":"python312-Django6-6.0-1.1","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python313-Django6-6.0-1.1 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python313-Django6-6.0-1.1"},"product_reference":"python313-Django6-6.0-1.1","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python36-Django-3.2.7-2.3 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python36-Django-3.2.7-2.3"},"product_reference":"python36-Django-3.2.7-2.3","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python38-Django-3.2.7-2.3 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python38-Django-3.2.7-2.3"},"product_reference":"python38-Django-3.2.7-2.3","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python39-Django-3.2.7-2.3 as component of openSUSE Tumbleweed","product_id":"openSUSE Tumbleweed:python39-Django-3.2.7-2.3"},"product_reference":"python39-Django-3.2.7-2.3","relates_to_product_reference":"openSUSE Tumbleweed"},{"category":"default_component_of","full_product_name":{"name":"python-Django as component of HPE Helion OpenStack 8","product_id":"HPE Helion OpenStack 8:python-Django"},"product_reference":"python-Django","relates_to_product_reference":"HPE Helion OpenStack 8"},{"category":"default_component_of","full_product_name":{"name":"python-Django as component of HPE Helion OpenStack Cloud 8","product_id":"HPE Helion OpenStack Cloud 8:python-Django"},"product_reference":"python-Django","relates_to_product_reference":"HPE Helion OpenStack Cloud 8"},{"category":"default_component_of","full_product_name":{"name":"python-Django as component of SUSE Enterprise Storage 4","product_id":"SUSE Enterprise Storage 4:python-Django"},"product_reference":"python-Django","relates_to_product_reference":"SUSE Enterprise Storage 4"},{"category":"default_component_of","full_product_name":{"name":"python-Django as component of SUSE Enterprise Storage 5","product_id":"SUSE Enterprise Storage 5:python-Django"},"product_reference":"python-Django","relates_to_product_reference":"SUSE Enterprise Storage 5"},{"category":"default_component_of","full_product_name":{"name":"python-Django as component of SUSE OpenStack Cloud 6-LTSS","product_id":"SUSE OpenStack Cloud 6-LTSS:python-Django"},"product_reference":"python-Django","relates_to_product_reference":"SUSE OpenStack Cloud 6-LTSS"},{"category":"default_component_of","full_product_name":{"name":"python-Django as component of SUSE OpenStack Cloud 7","product_id":"SUSE OpenStack Cloud 7:python-Django"},"product_reference":"python-Django","relates_to_product_reference":"SUSE OpenStack Cloud 7"},{"category":"default_component_of","full_product_name":{"name":"python-Django as component of SUSE OpenStack Cloud 8","product_id":"SUSE OpenStack Cloud 8:python-Django"},"product_reference":"python-Django","relates_to_product_reference":"SUSE OpenStack Cloud 8"},{"category":"default_component_of","full_product_name":{"name":"python-Django as component of SUSE OpenStack Cloud Crowbar 8","product_id":"SUSE OpenStack Cloud Crowbar 8:python-Django"},"product_reference":"python-Django","relates_to_product_reference":"SUSE OpenStack Cloud Crowbar 8"}]},"vulnerabilities":[{"cve":"CVE-2019-19118","ids":[{"system_name":"SUSE CVE Page","text":"https://www.suse.com/security/cve/CVE-2019-19118"}],"notes":[{"category":"general","text":"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.)","title":"CVE description"}],"product_status":{"known_not_affected":["HPE Helion OpenStack 8:python-Django","HPE Helion OpenStack Cloud 8:python-Django","SUSE Enterprise Storage 4:python-Django","SUSE Enterprise Storage 5:python-Django","SUSE OpenStack Cloud 6-LTSS:python-Django","SUSE OpenStack Cloud 7:python-Django","SUSE OpenStack Cloud 8:python-Django","SUSE OpenStack Cloud Crowbar 8:python-Django"],"recommended":["SUSE Package Hub 15 SP1:python3-Django-2.2.8-bp151.3.6.1","openSUSE Leap 15.1:python3-Django-2.2.8-lp151.2.6.1","openSUSE Tumbleweed:python310-Django-4.2.11-2.1","openSUSE Tumbleweed:python310-Django4-4.2.14-1.1","openSUSE Tumbleweed:python311-Django-4.2.11-2.1","openSUSE Tumbleweed:python311-Django4-4.2.14-1.1","openSUSE Tumbleweed:python312-Django-4.2.11-2.1","openSUSE Tumbleweed:python312-Django4-4.2.14-1.1","openSUSE Tumbleweed:python312-Django6-6.0-1.1","openSUSE Tumbleweed:python313-Django6-6.0-1.1","openSUSE Tumbleweed:python36-Django-3.2.7-2.3","openSUSE Tumbleweed:python38-Django-3.2.7-2.3","openSUSE Tumbleweed:python39-Django-3.2.7-2.3"]},"references":[{"category":"external","summary":"CVE-2019-19118","url":"https://www.suse.com/security/cve/CVE-2019-19118"},{"category":"external","summary":"SUSE Security Ratings","url":"https://www.suse.com/support/security/rating/"},{"category":"external","summary":"SUSE Bug 1157705 for CVE-2019-19118","url":"https://bugzilla.suse.com/1157705"}],"remediations":[{"category":"vendor_fix","details":"To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n","product_ids":["SUSE Package Hub 15 SP1:python3-Django-2.2.8-bp151.3.6.1","openSUSE Leap 15.1:python3-Django-2.2.8-lp151.2.6.1","openSUSE Tumbleweed:python310-Django-4.2.11-2.1","openSUSE Tumbleweed:python310-Django4-4.2.14-1.1","openSUSE Tumbleweed:python311-Django-4.2.11-2.1","openSUSE Tumbleweed:python311-Django4-4.2.14-1.1","openSUSE Tumbleweed:python312-Django-4.2.11-2.1","openSUSE Tumbleweed:python312-Django4-4.2.14-1.1","openSUSE Tumbleweed:python312-Django6-6.0-1.1","openSUSE Tumbleweed:python313-Django6-6.0-1.1","openSUSE Tumbleweed:python36-Django-3.2.7-2.3","openSUSE Tumbleweed:python38-Django-3.2.7-2.3","openSUSE Tumbleweed:python39-Django-3.2.7-2.3"]}],"scores":[{"cvss_v3":{"baseScore":6.5,"baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N","version":"3.1"},"products":["SUSE Package Hub 15 SP1:python3-Django-2.2.8-bp151.3.6.1","openSUSE Leap 15.1:python3-Django-2.2.8-lp151.2.6.1","openSUSE Tumbleweed:python310-Django-4.2.11-2.1","openSUSE Tumbleweed:python310-Django4-4.2.14-1.1","openSUSE Tumbleweed:python311-Django-4.2.11-2.1","openSUSE Tumbleweed:python311-Django4-4.2.14-1.1","openSUSE Tumbleweed:python312-Django-4.2.11-2.1","openSUSE Tumbleweed:python312-Django4-4.2.14-1.1","openSUSE Tumbleweed:python312-Django6-6.0-1.1","openSUSE Tumbleweed:python313-Django6-6.0-1.1","openSUSE Tumbleweed:python36-Django-3.2.7-2.3","openSUSE Tumbleweed:python38-Django-3.2.7-2.3","openSUSE Tumbleweed:python39-Django-3.2.7-2.3"]}],"threats":[{"category":"impact","date":"2019-11-25T14:35:28Z","details":"moderate"}],"title":"CVE-2019-19118"}]}