Vulnerability · Published Apr 17, 2024 · Assigned by GitHub_M
CVE-2024-32463phlex makes Cross-site Scripting (XSS) possible due to improper sanitisation of `href` attributes on `<a>` tags
High 7.1
In plain English
A high-severity cross-site scripting in phlex from phlex-ruby. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 48% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
phlex is an open source framework for building object-oriented views in Ruby. There is a potential cross-site scripting (XSS) vulnerability that can be exploited via maliciously crafted user data. The filter to detect and prevent the use of the `javascript:` URL scheme in the `href` attribute of an `<a>` tag could be bypassed with tab `\t` or newline `\n` characters between the characters of the protocol, e.g. `java\tscript:`. This vulnerability is fixed in 1.10.1, 1.9.2, 1.8.3, 1.7.2, 1.6.3, 1.5.3, and 1.4.2. Configuring a Content Security Policy that does not allow `unsafe-inline` would effectively prevent this vulnerability from being exploited.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| RubyGems | phlex | 1.10.1 | GHSA-g7xq-xv8c-h98c |
| RubyGems | phlex | 1.9.2 | GHSA-g7xq-xv8c-h98c |
| RubyGems | phlex | 1.8.3 | GHSA-g7xq-xv8c-h98c |
| RubyGems | phlex | 1.7.2 | GHSA-g7xq-xv8c-h98c |
| RubyGems | phlex | 1.6.3 | GHSA-g7xq-xv8c-h98c |
| RubyGems | phlex | 1.5.3 | GHSA-g7xq-xv8c-h98c |
| RubyGems | phlex | 1.4.2 | GHSA-g7xq-xv8c-h98c |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| phlex-ruby | phlex | >= 1.10.0, < 1.10.1>= 1.9.0, < 1.9.2>= 1.8.0, < 1.8.3>= 1.7.0, < 1.7.2>= 1.6.0, < 1.6.3>= 1.5.0, < 1.5.3>= 1.4.0, < 1.4.2 |
Weakness: CWE-79 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:L/A:N
References
- https://github.com/phlex-ruby/phlex/security/advisories/GHSA-g7xq-xv8c-h98c x_refsource_CONFIRM
- https://github.com/phlex-ruby/phlex/commit/9e3f5b980655817993682e409cbda72956d865cb x_refsource_MISC
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy x_refsource_MISC
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy#unsafe-inline x_refsource_MISC