Django REST framework: AdminRenderer may disclose GET-protected data when rendering invalid write requests
10Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 4.3
exploitation probability
—
observed exploitation
nono source reports it
Django REST framework is a powerful and flexible toolkit for building Web APIs. Prior to 3.17.2, Django REST Framework's rest_framework/renderers.py AdminRenderer.render() uses override_method() to simulate GET and directly invokes view.get() without view.check_permissions() while rendering an invalid write request, allowing a 400 Bad Request HTML response to disclose data from a GET representation that the requester is not permitted to access. This issue is fixed in version 3.17.2.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Affected products
encode · django-rest-frameworkReferences
https://github.com/encode/django-rest-framework/commit/71f81946906e52f9dc8e5d22a0f3d2afa50c455ehttps://github.com/encode/django-rest-framework/commit/9e82afc98acfe6fc28c9bf78147f0c5b3f222cb5https://github.com/encode/django-rest-framework/pull/10012https://github.com/encode/django-rest-framework/releases/tag/3.17.2https://github.com/encode/django-rest-framework/security/advisories/GHSA-g47c-3xmw-q6m2