CVE-2020-25739
Gon gem lack of escaping certain input when outputting as JSON
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
6.1
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
- Record
CVE-2020-25739- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - CVSS 2.0
- 4.3 Medium
AV:N/AC:M/Au:N/C:N/I:P/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
CVE List No score
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
- Record
CVE-2020-25739- Updated
- 2026-11-02
EUVDEUVD-2021-0786 No score
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
- Record
EUVD-2021-0786- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-78vq-9j56-wrfr
6.1
Gon gem lack of escaping certain input when outputting as JSON
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
- Record
GHSA-78vq-9j56-wrfr- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
OSV
6.1
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
- Record
CVE-2020-25739- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-02
OSVDEBIAN-CVE-2020-25739
6.1
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
- Record
DEBIAN-CVE-2020-25739- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-02
OSVGHSA-78vq-9j56-wrfr
6.1
Gon gem lack of escaping certain input when outputting as JSON
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
- Record
GHSA-78vq-9j56-wrfr- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2020-25739
6.1
An issue was discovered in the gon gem before gon-6.4.0 for Ruby. MultiJson does not honor the escape_mode parameter to escape fields as an XSS protection mechanism. To mitigate, json_dumper.rb in gon now does escaping for XSS by default without relying on MultiJson.
- Record
UBUNTU-CVE-2020-25739- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-02
OSVUSN-4560-1 No score
ruby-gon vulnerability
It was discovered that Gon gem did not properly escape certain input. An attacker could use this vulnerability to execute a cross-site scripting (XSS) attack.
- Record
USN-4560-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
gonRubyGems |
before 6.4.0 | 6.4.0 |
ruby-gonDebian:12 |
before 6.4.0-1 | 6.4.0-1 |
ruby-gonDebian:9 |
before 6.1.0-1+deb9u1, plus listed versions 6.1.0-1 |
6.1.0-1+deb9u1 |
gonRubyGems |
before 6.4.0, plus listed versions 0.1.00.1.10.2.00.2.10.2.2 Show 45 moreShow less0.3.01.0.01.1.01.1.11.1.21.1.32.0.02.0.12.0.22.0.32.0.42.0.52.0.62.1.02.1.22.2.02.2.22.3.03.0.03.0.23.0.33.0.43.0.54.0.04.0.14.0.24.0.34.1.04.1.15.0.05.0.15.0.25.0.35.0.45.1.05.1.15.1.25.2.05.2.15.2.25.2.36.0.06.0.16.1.06.2.0 |
6.4.0 |
ruby-gonUbuntu:16.04:LTS |
All versions, plus listed versions 5.2.3-26.0.1-1 |
None known |
ruby-gonUbuntu:18.04:LTS |
before 6.1.0-1+deb9u1build0.18.04.1, plus listed versions 6.1.0-1 |
6.1.0-1+deb9u1build0.18.04.1 |
ruby-gonUbuntu:20.04:LTS |
All versions, plus listed versions 6.2.1-16.3.2-1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2020-25739 is a medium vulnerability (CVSS 6.1) in Gon Project Gon, published September 23, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.38%, the 72nd percentile. Fixed in gon 6.4.0.
References
github.com/gazay/gon/commit/fe3c7b2191a992386dc9edd37de5447a4e809bc7
lists.debian.org/debian-lts-announce/2020/09/msg00018.html
usn.ubuntu.com/4560-1
nvd.nist.gov/vuln/detail/CVE-2020-25739
github.com/rubysec/ruby-advisory-db/blob/master/gems/gon/CVE-2020-25739.yml
github.com/advisories/GHSA-78vq-9j56-wrfr
Left out here: 3 versions. The JSON record has them.