CVE-2026-53727
Ruby CSS Parser: SSRF and Local File Disclosure in `CssParser::Parser#read_remote_file`
Impact
css_parser is a Ruby CSS parser. From 2.2.0 until 3.0.0, CssParser::Parser#read_remote_file in lib/css_parser/parser.rb, and therefore load_uri! and the @import-following branch of add_block!, issued HTTP and HTTPS requests against any host, port, and URI without a scheme allowlist, host or IP filtering, or protection against link-local, loopback, or RFC-1918 addresses. Location: redirects were followed recursively back into the same function, which also serviced file:// URIs, so a single attacker-controlled HTTP redirect could upgrade the bug from SSRF to arbitrary local file disclosure. Any consumer of css_parser that hands it attacker-influenced CSS together with a base_uri: option is exposed. This issue is fixed in version 3.0.0.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| rubygems | css_parser | < 3.0.0 | 3.0.0 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Premailer | Css Parser | Version 2.2.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-9pmc-p236-855h
- https://github.com/premailer/css_parser/security/advisories/GHSA-9pmc-p236-855h
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/css_parser/CVE-2026-53727.yml
- https://www.cve.org/CVERecord/SearchResults?query=CVE-2026-53727
- https://github.com/premailer/css_parser/commit/7d2ddf0189cd54b54f378f59daefa10cb036e476
- https://github.com/premailer/css_parser/commit/e0a151458b2a801ae265ba420862ef8b1127b3ae
- https://github.com/premailer/css_parser/releases/tag/v3.0.0