CVE-2020-10663 json
Unsafe object creation in json RubyGem
published 6y ago modified 4mo ago also EUVD-2020-0563 , GHSA-jphg-qwrw-7w9g
- cvss
- 7.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 6.8%
- EPSS 6.8% chance of exploitation in 30 days, percentile 94%
- public exploits
- 0
- none known
Summary
The JSON gem through 2.2.0 for Ruby, as used in Ruby 2.4 through 2.4.9, 2.5 through 2.5.7, and 2.6 through 2.6.5, has an Unsafe Object Creation Vulnerability. This is quite similar to CVE-2013-0269, but does not rely on poor garbage-collection behavior within Ruby. Specifically, use of JSON parsing methods can lead to creation of a malicious object within the interpreter, with adverse effects that are application-dependent.
Patch / fix
- rubygems json 2.3.0
- json_project json 2.3.0
- rubygems json_gem 2.3.0
- ruby-json Debian 14, Debian 13, Debian 12 2.3.0+dfsg-1
debian advisories DEBIAN-CVE-2020-10663
- ruby2.3 Ubuntu 16.04 LTS 2.3.1-2~ubuntu16.04.15
- ruby2.5 Ubuntu 18.04 LTS 2.5.1-1ubuntu1.8
ubuntu advisories UBUNTU-CVE-2020-10663
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- rubygem-pg RHEL 8, RHEL 8.2 EUS, RHEL 8.1 E4S 1.1.4-1.module+el8.1.0+3653+beb38eb0
- rubygem-abrt RHEL 8, RHEL 8.2 EUS, RHEL 8.1 E4S 0.3.0-4.module+el8.1.0+3653+beb38eb0
- rubygem-bson RHEL 8, RHEL 8.2 EUS, RHEL 8.1 E4S 4.5.0-1.module+el8.1.0+3653+beb38eb0
- rubygem-mongo RHEL 8, RHEL 8.2 EUS, RHEL 8.1 E4S 2.8.0-1.module+el8.1.0+3653+beb38eb0
- ruby RHEL 8 2.6.7-107.module+el8.4.0+10830+bbd85cce
- rubygems RHEL 8 3.0.3.1-107.module+el8.4.0+10830+bbd85cce
- ruby-libs RHEL 8 2.6.7-107.module+el8.4.0+10830+bbd85cce
- rubygem-irb RHEL 8 1.0.0-107.module+el8.4.0+10830+bbd85cce
red hat advisories RHSA-2022:0582RHSA-2022:0581RHSA-2021:2588RHSA-2021:2587RHSA-2021:2230RHSA-2021:2104
- kibana OpenStack Cloud 7 4.6.3-5.1
- ansible OpenStack Cloud 7 2.2.3.0-12.2
- grafana OpenStack Cloud 7 4.6.5-1.14.1
- memcached OpenStack Cloud 7 1.5.17-3.6.1
- python-py OpenStack Cloud 7 1.8.1-11.12.1
- zookeeper OpenStack Cloud 7 3.4.10-6.1
- crowbar-ha OpenStack Cloud 7 4.0+git.1585316203.d6ad2c8-4.52.4
- keepalived OpenStack Cloud 7 2.0.19-1.8.1
suse advisories SUSE-RU-2020:2072-1SUSE-SU-2020:1901-1SUSE-SU-2020:1570-1SUSE-SU-2020:0995-1
- rubygem-json_pure openSUSE Tumbleweed 2.7.6-1.5
- ruby4.0 openSUSE Tumbleweed 4.0.0~preview2-1.1
- rubygem-json_pure openSUSE Tumbleweed 2.7.6-1.3
- ruby3.4 openSUSE Tumbleweed 3.4.1-1.1
- ruby2.7 openSUSE Tumbleweed 2.7.3-3.2
- ruby3.0 openSUSE Tumbleweed 3.0.1-3.2
- ruby3.1 openSUSE Tumbleweed 3.1.0-1.1
- rubygem-json_pure openSUSE Tumbleweed 2.6.1-1.1
opensuse advisories openSUSE-SU-2026:10351-1openSUSE-SU-2025:15819-1openSUSE-SU-2025:15118-1openSUSE-SU-2025:14621-1openSUSE-SU-2024:11310-1openSUSE-SU-2024:11311-1
- rubygem-pg AlmaLinux 8 1.1.4-1.module_el8.5.0+250+ba22dbf7
- rubygem-pg AlmaLinux 8 1.1.4-1.module_el8.5.0+2623+08a8ba32
- rubygem-abrt AlmaLinux 8 0.3.0-4.module_el8.5.0+259+8cec6917
- rubygem-abrt AlmaLinux 8 0.3.0-4.module_el8.5.0+2623+08a8ba32
- rubygem-bson AlmaLinux 8 4.5.0-1.module_el8.5.0+2623+08a8ba32
- rubygem-bson AlmaLinux 8 4.5.0-1.module_el8.5.0+250+ba22dbf7
- rubygem-mongo AlmaLinux 8 2.8.0-1.module_el8.5.0+250+ba22dbf7
- rubygem-mongo AlmaLinux 8 2.8.0-1.module_el8.5.0+2623+08a8ba32
almalinux advisories ALSA-2021:2588ALSA-2021:2587
- ruby Rocky Linux 8 2.6.7-107.module+el8.4.0+593+8d7f9f0c
- rubygem-pg Rocky Linux 8 1.1.4-1.module+el8.5.0+738+032c9c02
- rubygem-pg Rocky Linux 8 1.1.4-1.module+el8.4.0+446+80b53620
- rubygem-pg Rocky Linux 8 1.1.4-1.module+el8.4.0+593+8d7f9f0c
- rubygem-abrt Rocky Linux 8 0.3.0-4.module+el8.5.0+738+032c9c02
- rubygem-abrt Rocky Linux 8 0.3.0-4.module+el8.3.0+167+5c390590
- rubygem-abrt Rocky Linux 8 0.3.0-4.module+el8.4.0+592+03ff458a
- rubygem-bson Rocky Linux 8 4.5.0-1.module+el8.4.0+593+8d7f9f0c
rocky linux advisories RLSA-2021:2588RLSA-2021:2587
- ruby Alpine 3.10 2.5.8-r0
- ruby Alpine 3.24, Alpine 3.23, Alpine 3.22 +11 more 2.6.6-r0
- ruby Alpine 3.7 2.4.10-r0
alpine advisories ALPINE-CVE-2020-10663
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
Is CVE-2020-10663 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2020-10663 updated cvss 7.3
rubygem-json: Unsafe object creation vulnerability in JSON
-
Red Hat CloudForms Management Engine 5 rubygem-jsonaffected: workaround, no fix available
-
Red Hat 3scale API Management Platform 2 systemaffected: workaround, no fix available “Fix deferred”
-
Red Hat Enterprise Linux 7 ruby, ruby-irb, rubygems, ruby-libs, ruby-tcltk, rubygem-json, +6 moreaffected: workaround, no fix planned “Will not fix”
-
Red Hat JBoss Fuse Service Works 6 jruby jruby Red Hat JBoss SOA Platform 5 jruby jruby Red Hat Software Collections rh-ruby24-ruby, rh-ruby24-ruby-irb, rh-ruby24-rubygems, rh-ruby24-ruby-libs, rh-ruby24-rubygem-json, rh-ruby24-rubygem-rake, +11 moreaffected: workaround, no fix planned “Out of support scope”
-
Red Hat Storage 3 pcsaffected: workaround, no fix available “Fix deferred”
-
Red Hat Update Infrastructure 3 for Cloud Providers rubygem-jsonaffected: workaround, no fix planned “Will not fix”
-
Red Hat Enterprise Linux AppStream (v. 8) ruby 2.5.9-107.module+el8.4.0+10822+fe4fffb1, ruby 2.6.7-107.module+el8.4.0+10830+bbd85cce, rubygem-pg 1.0.0-2.module+el8.1.0+3656+f80bfa1d, rubygem-pg 1.1.4-1.module+el8.1.0+3653+beb38eb0, ruby-irb 2.5.9-107.module+el8.4.0+10822+fe4fffb1, ruby-libs 2.5.9-107.module+el8.4.0+10822+fe4fffb1, +40 morefixed: vendor fix RHSA-2021:2587
-
Red Hat Enterprise Linux AppStream E4S (v. 8.1) ruby 2.6.9-107.module+el8.1.0+14088+04cf326e, rubygem-pg 1.1.4-1.module+el8.1.0+3653+beb38eb0, ruby-libs 2.6.9-107.module+el8.1.0+14088+04cf326e, rubygem-abrt 0.3.0-4.module+el8.1.0+3653+beb38eb0, rubygem-bson 4.5.0-1.module+el8.1.0+3653+beb38eb0, rubygem-mongo 2.8.0-1.module+el8.1.0+3653+beb38eb0, +17 morefixed: vendor fix RHSA-2022:0581
show 8 moreshow fewer
-
Red Hat Enterprise Linux AppStream EUS (v. 8.2) ruby 2.6.9-107.module+el8.2.0+14086+86d863af, rubygem-pg 1.1.4-1.module+el8.1.0+3653+beb38eb0, ruby-libs 2.6.9-107.module+el8.2.0+14086+86d863af, rubygem-abrt 0.3.0-4.module+el8.1.0+3653+beb38eb0, rubygem-bson 4.5.0-1.module+el8.1.0+3653+beb38eb0, rubygem-mongo 2.8.0-1.module+el8.1.0+3653+beb38eb0, +17 morefixed: vendor fix RHSA-2022:0582
-
Red Hat Enterprise Linux High Availability (v. 8) pcs 0.10.4-6.el8_2.1, pcs-snmp 0.10.4-6.el8_2.1fixed: vendor fix RHSA-2020:2462
-
Red Hat Enterprise Linux High Availability E4S (v. 8.0) pcs 0.10.1-4.el8_0.5, pcs-snmp 0.10.1-4.el8_0.5fixed: vendor fix RHSA-2020:2473
-
Red Hat Enterprise Linux High Availability EUS (v. 8.1) pcs 0.10.2-4.el8_1.1, pcs-snmp 0.10.2-4.el8_1.1fixed: vendor fix RHSA-2020:2670
-
Red Hat Enterprise Linux Resilient Storage (v. 8) pcs 0.10.4-6.el8_2.1, pcs-snmp 0.10.4-6.el8_2.1fixed: vendor fix RHSA-2020:2462
-
Red Hat Enterprise Linux Resilient Storage EUS (v. 8.1) pcs 0.10.2-4.el8_1.1, pcs-snmp 0.10.2-4.el8_1.1fixed: vendor fix RHSA-2020:2670
-
Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) rh-ruby25-ruby 2.5.9-9.el7, rh-ruby26-ruby 2.6.7-119.el7, rh-ruby25-ruby-irb 2.5.9-9.el7, rh-ruby25-ruby-libs 2.5.9-9.el7, rh-ruby25-rubygems 2.7.6.3-9.el7, rh-ruby26-ruby-libs 2.6.7-119.el7, +29 more Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.6) rh-ruby25-ruby 2.5.9-9.el7, rh-ruby25-ruby-irb 2.5.9-9.el7, rh-ruby25-ruby-libs 2.5.9-9.el7, rh-ruby25-rubygems 2.7.6.3-9.el7, rh-ruby25-rubygem-json 2.1.0-9.el7, rh-ruby25-rubygem-psych 3.0.2-9.el7, +11 more Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.7) rh-ruby25-ruby 2.5.9-9.el7, rh-ruby26-ruby 2.6.7-119.el7, rh-ruby25-ruby-irb 2.5.9-9.el7, rh-ruby25-ruby-libs 2.5.9-9.el7, rh-ruby25-rubygems 2.7.6.3-9.el7, rh-ruby26-ruby-libs 2.6.7-119.el7, +29 more Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) rh-ruby25-ruby 2.5.9-9.el7, rh-ruby26-ruby 2.6.7-119.el7, rh-ruby25-ruby-irb 2.5.9-9.el7, rh-ruby25-ruby-libs 2.5.9-9.el7, rh-ruby25-rubygems 2.7.6.3-9.el7, rh-ruby26-ruby-libs 2.6.7-119.el7, +29 morefixed: vendor fix RHSA-2021:2104
-
Red Hat CloudForms Management Engine 5 ruby, ruby-irb, rubygems, ruby-libs, rubygem-rake, rubygem-rdoc, +10 more Red Hat Enterprise Linux 5 ruby Red Hat Enterprise Linux 6 ruby, ruby-ri, ruby-irb, ruby-libs, ruby-rdoc, ruby-tcltk Red Hat Enterprise Linux 7 pcs, pcs-snmp, python-clufter Red Hat Fuse 7 jruby jruby Red Hat JBoss A-MQ 6 jruby-3977 jruby-3977, jruby-4198 jruby-4198not affected: vulnerable code not present
+2 more productsfewer
Red Hat JBoss Fuse 6 jruby jruby, jruby-complete, jruby-3977 jruby-3977, jruby-4198 jruby-4198 Red Hat Software Collections rh-ruby27-ruby, rh-ruby27-rubygems, rh-ruby27-ruby-libs, rh-ruby27-rubygem-irb, rh-ruby27-rubygem-json, rh-ruby27-rubygem-racc, +13 more
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
6.81% chance of exploitation in the next 30 days, higher than 94% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
| NVD | 2.0 | 5.0 | AV:N/AC:L/Au:N/C:N/I:P/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| rubygems | json | <2.3.0 |
2.3.0 |
Classification
- Weakness
-
- CWE-20 Improper Input Validation
References
-
lists.opensuse.org
/opensuse-security-announce/2020-05/msg00004.html
vendor-advisory, web, mailing-list, third-party-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/7QL6MJD2BO4IRJ5CJFNMCDYMQQFT24BJ/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/NK2PBXWMFRUD7U7Q7LHV4KYLYID77RI4/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/F4TNVTT66VPRMX5UZYSDGSVRXKKDDDU5/
vendor-advisory
-
debian.org
/security/2020/dsa-4721
vendor-advisory, web, third-party-advisory
-
ruby-lang.org
/en/news/2020/03/19/json-dos-cve-2020-10663/
vendor-advisory
-
lists.debian.org
/debian-lts-announce/2020/04/msg00030.html
mailing-list, web, third-party-advisory
-
lists.apache.org
/thread.html/r8d2e174230f6d26e16c007546e804c343f1f68956f526daaafa4aaae%40%3Cdev.zookeeper.apache.org%3E
mailing-list
-
lists.apache.org
/thread.html/rd9b9cc843f5cf5b532bdad9e87a817967efcf52b917e8c43b6df4cc7%40%3Cissues.zookeeper.apache.org%3E
mailing-list
-
lists.apache.org
/thread.html/ree3abcd33c06ee95ab59faa1751198a1186d8941ddc2c2562c12966c%40%3Cissues.zookeeper.apache.org%3E
mailing-list
-
lists.apache.org
/thread.html/rb023d54a46da1ac0d8969097f5fecc79636b07d3b80db7b818a5c55c%40%3Cissues.zookeeper.apache.org%3E
mailing-list
-
lists.apache.org
/thread.html/rb2b981912446a74e14fe6076c4b7c7d8502727ea0718e6a65a9b1be5%40%3Cissues.zookeeper.apache.org%3E
mailing-list
-
lists.apache.org
/thread.html/r5f17bfca1d6e7f4b33ae978725b2fd62a9f1b3111696eafa9add802d%40%3Cissues.zookeeper.apache.org%3E
mailing-list
-
support.apple.com
/kb/HT211931
web, third-party-advisory
-
seclists.org
/fulldisclosure/2020/Dec/32
mailing-list, web, third-party-advisory
-
lists.apache.org
/thread.html/rec8bb4d637b04575da41cfae49118e108e95d43bfac39b7b698ee4db%40%3Cissues.zookeeper.apache.org%3E
mailing-list
-
security.netapp.com
/advisory/ntap-20210129-0003/
third-party-advisory
-
lists.apache.org
/thread.html/r37c0e1807da7ff2bdd028bbe296465a6bbb99e2320dbe661d5d8b33b%40%3Cissues.zookeeper.apache.org%3E
mailing-list
-
lists.apache.org
/thread.html/r3b04f4e99a19613f88ae088aa18cd271231a3c79dfff8f5efa8cda61%40%3Cissues.zookeeper.apache.org%3E
mailing-list
-
nvd.nist.gov
/vuln/detail/CVE-2020-10663
advisory
-
ruby-lang.org
/en/news/2020/03/19/json-dos-cve-2020-10663
web
-
security.netapp.com
/advisory/ntap-20210129-0003
web
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/NK2PBXWMFRUD7U7Q7LHV4KYLYID77RI4
web
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/F4TNVTT66VPRMX5UZYSDGSVRXKKDDDU5
web
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/7QL6MJD2BO4IRJ5CJFNMCDYMQQFT24BJ
web
-
lists.apache.org
/thread.html/ree3abcd33c06ee95ab59faa1751198a1186d8941ddc2c2562c12966c@%3Cissues.zookeeper.apache.org%3E
web
-
lists.apache.org
/thread.html/rec8bb4d637b04575da41cfae49118e108e95d43bfac39b7b698ee4db@%3Cissues.zookeeper.apache.org%3E
web
-
lists.apache.org
/thread.html/rd9b9cc843f5cf5b532bdad9e87a817967efcf52b917e8c43b6df4cc7@%3Cissues.zookeeper.apache.org%3E
web
-
lists.apache.org
/thread.html/rb2b981912446a74e14fe6076c4b7c7d8502727ea0718e6a65a9b1be5@%3Cissues.zookeeper.apache.org%3E
web
-
lists.apache.org
/thread.html/rb023d54a46da1ac0d8969097f5fecc79636b07d3b80db7b818a5c55c@%3Cissues.zookeeper.apache.org%3E
web
-
lists.apache.org
/thread.html/r8d2e174230f6d26e16c007546e804c343f1f68956f526daaafa4aaae@%3Cdev.zookeeper.apache.org%3E
web
-
lists.apache.org
/thread.html/r5f17bfca1d6e7f4b33ae978725b2fd62a9f1b3111696eafa9add802d@%3Cissues.zookeeper.apache.org%3E
web
-
lists.apache.org
/thread.html/r3b04f4e99a19613f88ae088aa18cd271231a3c79dfff8f5efa8cda61@%3Cissues.zookeeper.apache.org%3E
web
-
lists.apache.org
/thread.html/r37c0e1807da7ff2bdd028bbe296465a6bbb99e2320dbe661d5d8b33b@%3Cissues.zookeeper.apache.org%3E
web
-
github.com
/rubysec/ruby-advisory-db/blob/master/gems/json/CVE-2020-10663.yml
web
-
github.com
/flori/json/blob/master/CHANGES.md#2019-12-11-230
web
-
github.com
/flori/json
package
Sources
- CVE List CVE-2020-10663
- GitHub Advisory GHSA-jphg-qwrw-7w9g
- NVD CVE-2020-10663
Fencer Intel 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.
CPEs and fixed versions use Anchore's correction of NVD's data: Improved version ranges and CPE configurations.