Every CVE Search/ Get API key

CVE-2023-28120

Possible XSS Security Vulnerability in SafeBuffer#bytesplice

5.3 MediumFix available

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
Low
Availability
None

Exploit likelihood

0.95%Up 0.9 points since Jan 9, 2025
90%50%10%1%

What each source reports

CVE List Score used 5.3

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input.

Record
CVE-2023-28120
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-79
Updated
2026-11-02
EUVDEUVD-2023-1069 5.3

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input.

Record
EUVD-2023-1069
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Updated
2026-11-03
GitHub AdvisoriesGHSA-pj73-v5mw-pm9j 5.3

Possible XSS Security Vulnerability in SafeBuffer#bytesplice

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input. This vulnerability has been assigned the CVE identifier CVE-2023-28120.

Versions Affected: All. Not affected: None Fixed Versions: 7.0.4.3, 6.1.7.3

Impact

ActiveSupport uses the SafeBuffer string subclass to tag strings as html_safe after they have been sanitized. When these strings are mutated, the tag is should be removed to mark them as no longer being html_safe.

Ruby 3.2 introduced a new bytesplice method which ActiveSupport did not yet understand to be a mutation. Users on older versions of Ruby are likely unaffected.

All users running an affected release and using bytesplice should either upgrade or use one of the workarounds immediately.

Workarounds

Avoid calling bytesplice on a SafeBuffer (html_safe) string with untrusted user input.

Record
GHSA-pj73-v5mw-pm9j
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-79
Updated
2026-11-02
NVD 5.3

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input.

Record
CVE-2023-28120
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-79
Updated
2026-11-02
OSVALPINE-CVE-2023-28120 5.3

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input.

Record
ALPINE-CVE-2023-28120
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Updated
2026-11-03
OSV 5.3

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input.

Record
CVE-2023-28120
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Updated
2026-11-02
Show 16 moreShow less
OSVDEBIAN-CVE-2023-28120 5.3

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input.

Record
DEBIAN-CVE-2023-28120
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Updated
2026-11-02
OSVGHSA-pj73-v5mw-pm9j 5.3

Possible XSS Security Vulnerability in SafeBuffer#bytesplice

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input. This vulnerability has been assigned the CVE identifier CVE-2023-28120.

Versions Affected: All. Not affected: None Fixed Versions: 7.0.4.3, 6.1.7.3

Impact

ActiveSupport uses the SafeBuffer string subclass to tag strings as html_safe after they have been sanitized. When these strings are mutated, the tag is should be removed to mark them as no longer being html_safe.

Ruby 3.2 introduced a new bytesplice method which ActiveSupport did not yet understand to be a mutation. Users on older versions of Ruby are likely unaffected.

All users running an affected release and using bytesplice should either upgrade or use one of the workarounds immediately.

Workarounds

Avoid calling bytesplice on a SafeBuffer (html_safe) string with untrusted user input.

Record
GHSA-pj73-v5mw-pm9j
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness
CWE-79
Updated
2026-11-02
OSVOESA-2024-1797 6.1

rubygem-activesupport security update

A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing.

Security Fix(es):

A Cross-Site-Scripting vulnerability was found in rubygem ActiveSupport. If the new bytesplice method is called on a SafeBuffer with untrusted user input, malicious code could be executed.(CVE-2023-28120)

Record
OESA-2024-1797
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVOESA-2024-1798 6.1

rubygem-activesupport security update

A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing.

Security Fix(es):

A Cross-Site-Scripting vulnerability was found in rubygem ActiveSupport. If the new bytesplice method is called on a SafeBuffer with untrusted user input, malicious code could be executed.(CVE-2023-28120)

Record
OESA-2024-1798
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVOESA-2024-1799 6.1

rubygem-activesupport security update

A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing.

Security Fix(es):

A Cross-Site-Scripting vulnerability was found in rubygem ActiveSupport. If the new bytesplice method is called on a SafeBuffer with untrusted user input, malicious code could be executed.(CVE-2023-28120)

Record
OESA-2024-1799
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVOESA-2024-1800 6.1

rubygem-activesupport security update

A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing.

Security Fix(es):

A Cross-Site-Scripting vulnerability was found in rubygem ActiveSupport. If the new bytesplice method is called on a SafeBuffer with untrusted user input, malicious code could be executed.(CVE-2023-28120)

Record
OESA-2024-1800
CVSS 3.1
6.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Updated
2026-11-02
OSVUBUNTU-CVE-2023-28120 5.3

There is a vulnerability in ActiveSupport if the new bytesplice method is called on a SafeBuffer with untrusted user input.

Record
UBUNTU-CVE-2023-28120
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Updated
2026-11-02
OSVopenSUSE-SU-2024:12804-1 No score

ruby3.1-rubygem-activesupport-7.0-7.0.4.3-1.1 on GA media

These are all security issues fixed in the ruby3.1-rubygem-activesupport-7.0-7.0.4.3-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:12804-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:12886-1 No score

rmt-server-2.12-1.1 on GA media

These are all security issues fixed in the rmt-server-2.12-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:12886-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:14071-1 No score

ruby3.3-rubygem-activesupport-7.0-7.0.8.4-1.1 on GA media

These are all security issues fixed in the ruby3.3-rubygem-activesupport-7.0-7.0.8.4-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:14071-1
Updated
2026-11-02
OSVopenSUSE-SU-2025:15114-1 No score

ruby3.4-rubygem-activesupport-7.0-7.0.8.6-1.3 on GA media

These are all security issues fixed in the ruby3.4-rubygem-activesupport-7.0-7.0.8.6-1.3 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2025:15114-1
Updated
2026-11-02
OSVSUSE-SU-2023:2280-1 No score

Security update for rmt-server

This update for rmt-server fixes the following issues:

Updated to version 2.13:

  • CVE-2023-28120: Fixed a potential XSS issue in an embedded dependency (bsc#1209507).
  • CVE-2023-27530: Fixed a denial of service issue in multipart request parsing (bsc#1209096).

Non-security fixes:

  • Fixed transactional update on GCE (bsc#1211398).
  • Use HTTPS in rmt-client-setup-res (bsc#1209825).
  • Various build fixes (bsc#1207670, bsc#1203171, bsc#1206593, bsc#1202053).
Record
SUSE-SU-2023:2280-1
Updated
2026-11-02
OSVSUSE-SU-2023:2294-1 No score

Security update for rmt-server

This update for rmt-server fixes the following issues:

Updated to version 2.13:

  • CVE-2023-28120: Fixed a potential XSS issue in an embedded dependency (bsc#1209507).
  • CVE-2023-27530: Fixed a denial of service issue in multipart request parsing (bsc#1209096).

Non-security fixes:

  • Fixed transactional update on GCE (bsc#1211398).
  • Use HTTPS in rmt-client-setup-res (bsc#1209825).
  • Various build fixes (bsc#1207670, bsc#1203171, bsc#1206593, bsc#1202053).
Record
SUSE-SU-2023:2294-1
Updated
2026-11-02
OSVSUSE-SU-2023:2295-1 No score

Security update for rmt-server

This update for rmt-server fixes the following issues:

Updated to version 2.13:

  • CVE-2023-28120: Fixed a potential XSS issue in an embedded dependency (bsc#1209507).
  • CVE-2023-27530: Fixed a denial of service issue in multipart request parsing (bsc#1209096).

Non-security fixes:

  • Fixed transactional update on GCE (bsc#1211398).
  • Use HTTPS in rmt-client-setup-res (bsc#1209825).
  • Various build fixes (bsc#1207670, bsc#1203171, bsc#1206593, bsc#1202053).
Record
SUSE-SU-2023:2295-1
Updated
2026-11-02
OSVSUSE-SU-2023:2304-1 No score

Security update for rmt-server

This update for rmt-server fixes the following issues:

Updated to version 2.13:

  • CVE-2023-28120: Fixed a potential XSS issue in an embedded dependency (bsc#1209507).
  • CVE-2023-27530: Fixed a denial of service issue in multipart request parsing (bsc#1209096).

Non-security fixes:

  • Fixed transactional update on GCE (bsc#1211398).
  • Use HTTPS in rmt-client-setup-res (bsc#1209825).
  • Various build fixes (bsc#1207670, bsc#1203171, bsc#1206593, bsc#1202053).
Record
SUSE-SU-2023:2304-1
Updated
2026-11-02
OSVSUSE-SU-2023:2781-1 No score

Security update for rmt-server

This update for rmt-server fixes the following issues:

Update to version 2.13:

  • CVE-2023-28120: Fixed a possible XSS Security Vulnerability in bytesliced strings for html_safe (bsc#1209507).
  • CVE-2023-27530: Fixed a DoS in multipart mime parsing (bsc#1209096).
  • CVE-2022-31254: Fixed escalation vector bug from user _rmt to root in the packaging file (bsc#1204285).

Bug fixes:

  • Handle X-Original-URI header, partial fix for (bsc#1211398)
  • Force rmt-client-setup-res script to use https (bsc#1209825)
  • Mark secrets.yml.key file as part of the rpm to allow seamless downgrades (bsc#1207670)
  • Adding -f to the file move command when moving the mirrored directory to its final location (bsc#1203171)
  • Fix %post install of pubcloud subpackage reload of nginx (bsc#1206593)
  • Skip warnings regarding nokogiri libxml version mismatch (bsc#1202053)
  • Add option to turn off system token support (bsc#1205089)
  • Do not retry to import non-existing files in air-gapped mode (bsc#1204769)
Record
SUSE-SU-2023:2781-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
activesupport
RubyGems
7.0.0 up to 7.0.4.3
7.0.4.3
activesupport
RubyGems
before 6.1.7.3
6.1.7.3
ruby-activesupport
Alpine:v3.17
before 7.0.4.3-r0
7.0.4.3-r0
ruby-activesupport
Alpine:v3.18
before 7.0.4.3-r0
7.0.4.3-r0
ruby-activesupport
Alpine:v3.19
before 7.0.4.3-r0
7.0.4.3-r0
ruby-activesupport
Alpine:v3.20
before 7.0.4.3-r0
7.0.4.3-r0
ruby-activesupport
Alpine:v3.21
before 7.0.4.3-r0
7.0.4.3-r0
ruby-activesupport
Alpine:v3.22
before 7.0.4.3-r0
7.0.4.3-r0
ruby-activesupport
Alpine:v3.23
before 7.0.4.3-r0
7.0.4.3-r0
ruby-activesupport
Alpine:v3.24
before 7.0.4.3-r0
7.0.4.3-r0
Show 46 moreShow less
Affected packages
PackageAffectedFixed
rails
Debian:12
before 2:6.1.7.3+dfsg-1
2:6.1.7.3+dfsg-1
rails
Debian:13
before 2:6.1.7.3+dfsg-1
2:6.1.7.3+dfsg-1
rails
Debian:14
before 2:6.1.7.3+dfsg-1
2:6.1.7.3+dfsg-1
rails
Debian:11
before 2:6.0.3.7+dfsg-2+deb11u2, plus listed versions
2:6.0.3.7+dfsg-22:6.0.3.7+dfsg-2+deb11u1
2:6.0.3.7+dfsg-2+deb11u2
activesupport
RubyGems
7.0.0 up to 7.0.4.3, plus listed versions
7.0.17.0.27.0.2.17.0.2.27.0.2.3
Show 6 moreShow less
7.0.2.47.0.37.0.3.17.0.47.0.4.17.0.4.2
7.0.4.3
activesupport
RubyGems
before 6.1.7.3, plus listed versions
1.0.01.0.11.0.21.0.31.0.4
Show 45 moreShow less
1.1.01.1.11.2.11.2.21.2.31.2.41.2.51.3.01.3.11.4.01.4.11.4.21.4.31.4.42.0.02.0.12.0.22.0.42.0.52.1.02.1.12.1.22.2.22.2.32.3.102.3.112.3.122.3.142.3.152.3.162.3.172.3.182.3.22.3.32.3.42.3.52.3.62.3.6.pre2.3.72.3.82.3.8.pre12.3.92.3.9.pre3.0.03.0.0.beta
6.1.7.3
rubygem-activesupport
openEuler:20.03-LTS-SP4
before 5.2.4.4-5.oe2003sp4
5.2.4.4-5.oe2003sp4
rubygem-activesupport
openEuler:22.03-LTS-SP4
before 6.1.4.1-8.oe2203sp4
6.1.4.1-8.oe2203sp4
rubygem-activesupport
openEuler:22.03-LTS-SP1
before 6.1.4.1-8.oe2203sp1
6.1.4.1-8.oe2203sp1
rubygem-activesupport
openEuler:22.03-LTS-SP3
before 6.1.4.1-8.oe2203sp3
6.1.4.1-8.oe2203sp3
rmt-server
SUSE:Linux Enterprise Module for Public Cloud 15 SP3
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Linux Enterprise Real Time 15 SP3
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Linux Enterprise Server 15 SP3-LTSS
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Linux Enterprise Server for SAP Applications 15 SP3
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Manager Proxy 4.2
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Manager Server 4.2
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Enterprise Storage 7.1
before 2.13-150300.3.24.1
2.13-150300.3.24.1
rmt-server
SUSE:Linux Enterprise Module for Public Cloud 15 SP2
before 2.13-150200.3.32.1
2.13-150200.3.32.1
rmt-server
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS
before 2.13-150200.3.32.1
2.13-150200.3.32.1
rmt-server
SUSE:Linux Enterprise Server 15 SP2-LTSS
before 2.13-150200.3.32.1
2.13-150200.3.32.1
rmt-server
SUSE:Linux Enterprise Server for SAP Applications 15 SP2
before 2.13-150200.3.32.1
2.13-150200.3.32.1
rmt-server
SUSE:Enterprise Storage 7
before 2.13-150200.3.32.1
2.13-150200.3.32.1
rmt-server
SUSE:Linux Enterprise Module for Public Cloud 15 SP4
before 2.13-150400.3.12.1
2.13-150400.3.12.1
rmt-server
SUSE:Linux Enterprise Module for Server Applications 15 SP4
before 2.13-150400.3.12.1
2.13-150400.3.12.1
rmt-server
openSUSE:Leap 15.4
before 2.13-150400.3.12.1
2.13-150400.3.12.1
rmt-server
SUSE:Linux Enterprise Module for Public Cloud 15 SP1
before 2.13-150100.3.45.1
2.13-150100.3.45.1
rmt-server
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS
before 2.13-150100.3.45.1
2.13-150100.3.45.1
rmt-server
SUSE:Linux Enterprise Server 15 SP1-LTSS
before 2.13-150100.3.45.1
2.13-150100.3.45.1
rmt-server
SUSE:Linux Enterprise Server for SAP Applications 15 SP1
before 2.13-150100.3.45.1
2.13-150100.3.45.1
rmt-server
SUSE:Linux Enterprise Module for Public Cloud 15 SP5
before 2.13-150500.3.3.1
2.13-150500.3.3.1
rmt-server
SUSE:Linux Enterprise Module for Server Applications 15 SP5
before 2.13-150500.3.3.1
2.13-150500.3.3.1
rmt-server
openSUSE:Leap 15.5
before 2.13-150500.3.3.1
2.13-150500.3.3.1
rails
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
2:4.1.10-12:4.2.5-12:4.2.5.1-12:4.2.5.2-22:4.2.6-12:4.2.6-1ubuntu0.1~esm12:4.2.6-1ubuntu0.1~esm2
None known
rails
Ubuntu:Pro:18.04:LTS
All versions, plus listed versions
2:4.2.9-22:4.2.9-42:4.2.10-0ubuntu42:4.2.10-0ubuntu4+esm12:4.2.10-0ubuntu4+esm2
None known
rails
Ubuntu:Pro:20.04:LTS
All versions, plus listed versions
2:5.2.2.1+dfsg-1ubuntu12:5.2.3+dfsg-32:5.2.3+dfsg-3ubuntu0.1~esm1
None known
rails
Ubuntu:Pro:22.04:LTS
All versions, plus listed versions
2:6.0.3.7+dfsg-22:6.1.4.1+dfsg-8ubuntu22:6.1.4.1+dfsg-8ubuntu2+esm1
None known
rails
Ubuntu:24.04:LTS
All versions, plus listed versions
2:6.1.7.3+dfsg-2build12:6.1.7.3+dfsg-3
None known
rails
Ubuntu:25.10
All versions, plus listed versions
2:6.1.7.3+dfsg-72:7.2.2.1+dfsg-7
None known
rails
Ubuntu:26.10
All versions, plus listed versions
2:7.2.3+dfsg-22:7.2.3.2+dfsg-2
None known
rails
Ubuntu:26.04:LTS
All versions, plus listed versions
2:7.2.2.1+dfsg-72:7.2.2.2+dfsg-22:7.2.3+dfsg-2
None known
rubygem-activesupport-7.0
openSUSE:Tumbleweed
before 7.0.4.3-1.1
7.0.4.3-1.1
rmt-server
openSUSE:Tumbleweed
before 2.12-1.1
2.12-1.1
rubygem-activesupport-7.0
openSUSE:Tumbleweed
before 7.0.8.4-1.1
7.0.8.4-1.1
rubygem-activesupport-7.0
openSUSE:Tumbleweed
before 7.0.8.6-1.3
7.0.8.6-1.3

History

History
RecordedChangedSources
affected, aliases, referencesOSV
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2023-28120 is a medium vulnerability (CVSS 5.3) in Rails Activesupport, published March 15, 2023. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.95%, the 61st percentile. Fixed in activesupport 7.0.4.3.

References

Show 33 moreShow less
This page doesn't list everything

Left out here: 360 versions. The JSON record has them.

MoveEnter Open