CVE-2024-21636

medium

Description

view_component is a framework for building reusable, testable, and encapsulated view components in Ruby on Rails. Versions prior to 3.9.0 and 2.83.0 have a cross-site scripting vulnerability that has the potential to impact anyone rendering a component directly from a controller with the view_component gem. Note that only components that define a `#call` method (i.e. instead of using a sidecar template) are affected. The return value of the `#call` method is not sanitized and can include user-defined content. In addition, the return value of the `#output_postamble` methodis not sanitized, which can also lead to cross-site scripting issues. Versions 3.9.0 and 2.83.0 have been released and fully mitigate both the `#call` and the `#output_postamble` vulnerabilities. As a workaround, sanitize the return value of `#call`.

References

https://github.com/ViewComponent/view_component/security/advisories/GHSA-wf2x-8w6j-qw37

https://github.com/ViewComponent/view_component/pull/1962

https://github.com/ViewComponent/view_component/pull/1950

https://github.com/ViewComponent/view_component/commit/c43d8bafa7117cbce479669a423ab266de150697

https://github.com/ViewComponent/view_component/commit/0d26944a8d2730ea40e60eae23d70684483e5017

Details

Source: Mitre, NVD

Published: 2024-01-04

Updated: 2024-01-10

Risk Information

CVSS v2

Base Score: 6.4

Vector: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:N

Severity: Medium

CVSS v3

Base Score: 6.1

Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

Severity: Medium