CVE-2016-8640 json
SQL Injection in pycsw
published 2018-08-01 8 y ago modified 2026-06-17 4 mo ago also GHSA-hg4c-rgvm-964g , PYSEC-2018-98 , EUVD-2018-0121
- cvss
- 9.1
- version 3.0, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 2.3%
- EPSS 2.3% chance of exploitation in 30 days, percentile 83%
- public exploits
- 0
- none known
Summary
A SQL injection vulnerability in pycsw all versions before 2.0.2, 1.10.5 and 1.8.6 that leads to read and extract of any data from any table in the pycsw database that the database user has access to. Also on PostgreSQL (at least) it is possible to perform updates/inserts/deletes and database modifications to any table the database user has access to.
Patch / fix
- pypi pycsw 1.8.6, 1.10.5, 2.0.2
- pycsw pycsw 1.8.6, 1.10.5, 2.0.2
- pycsw Debian 14, Debian 13, Debian 12 2.0.2+dfsg-1
debian advisories DEBIAN-CVE-2016-8640
- github.com/geopython/pycsw@522873e commit
- github.com/geopython/pycsw@69546e1 commit
- github.com/geopython/pycsw@daaf09b commit
- github.com/geopython/pycsw#474 pull request
- patch-diff.githubusercontent.com/raw/geopython/pycsw/pull/474.patch pull request
- seclists.org/oss-sec/2016/q4/406 advisory
Exploit prediction
2.31% chance of exploitation in the next 30 days, higher than 83% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.0 | 9.1 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
| GitHub | 3.0 | 9.1 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | pycsw | >=2.0.0, <2.0.2 <1.8.6 >=1.10.0, <1.10.5 |
2.0.2 1.8.6 1.10.5 |
Affected products
- https://github.com/geopython pycsw
Classification
- Weakness
-
- CWE-89 Improper Neutralization of Special Elements used in an SQL Command
References
-
github.com
/geopython/pycsw/pull/474/files
web, patch, third-party-advisory
-
patch-diff.githubusercontent.com
/raw/geopython/pycsw/pull/474.patch
web, patch, third-party-advisory
-
seclists.org
/oss-sec/2016/q4/406
mailing-list, web, patch, third-party-advisory
-
github.com
/geopython/pycsw/commit/522873e5ce48bb9cbd4e7e8168ca881ce709c222
web
-
github.com
/geopython/pycsw/commit/69546e13527c82e4f9191769215490381ad511b2
web
-
github.com
/geopython/pycsw/commit/daaf09b4b920708a415be3c7f446739661ba3753
web
-
securityfocus.com
/bid/94302
vdb-entry, third-party-advisory, web
-
nvd.nist.gov
/vuln/detail/CVE-2016-8640
advisory
-
github.com
/advisories/GHSA-hg4c-rgvm-964g
advisory
-
github.com
/geopython/pycsw
package
-
github.com
/pypa/advisory-database/tree/main/vulns/pycsw/PYSEC-2018-98.yaml
web
Sources
- CVE List CVE-2016-8640
- GitHub Advisory GHSA-hg4c-rgvm-964g
- NVD CVE-2016-8640
- OSV PYSEC-2018-98
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.