CVE-2019-14234
在 Django 1.11.x(1.11.23 之前)、2.1.x(2.1.11 之前)以及 2.2.x(2.2.4 之前)版本中发现了一个问题。由于浅层键转换(shallow key transformation)中的错误,针对 django.contrib.postgres.fields.JSONField...
- 已发布
- 2019年8月9日
- 已更新
- 2024年8月5日
- 分配 CNA
- mitre
- 观察到的证据
- 2026年8月8日
初级CVSS
nvd · CVSS 3.0
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H中 · 未来 30 天
- 百分位
- 98.8%
- 型号日期
- 2026年10月17日
EPSS 是统计估计,而不是确定性或影响衡量标准。将其与 CVSS、KEV 状态、暴露程度和您的环境相结合。
总结
在 Django 1.11.x(1.11.23 之前)、2.1.x(2.1.11 之前)以及 2.2.x(2.2.4 之前)版本中发现了一个问题。由于浅层键转换(shallow key transformation)中的错误,针对 `django.contrib.postgres.fields.JSONField` 的键和索引查找,以及针对 `django.contrib.postgres.fields.HStoreField` 的键查找,存在 SQL 注入风险。例如,攻击者可通过在键或索引名称中巧妙构造使用 `"OR 1=1"` 来返回所有记录,即利用精心构造的字典,并通过字典展开,将其作为传递给 `QuerySet.filter()` 函数的 **kwargs 参数进行利用。
来源
django/CVE-2019-14234
Django JSONField/HStoreField SQL Injection (CVE-2019-14234)
Vulhub vulnerability labs声明的条件
- lab image version: vulhub/django:2.2.3(django/CVE-2019-14234/docker-compose.yml:services.web.image)
- lab image version: postgres:9.6-alpine(django/CVE-2019-14234/docker-compose.yml:services.db.image)
POC-Django JSONField/HStoreField SQL 注入漏洞 (CVE-2019-14234)
负责任的使用
仅在您拥有或有权测试的系统上使用漏洞信息。 Kitploit 链接到公共研究元数据,并且不存储漏洞代码或恶意负载。