Critical
Security advisory
Kramdown before 2.3.1 does not restrict Rouge formatters to the Rouge::Formatters namespace, and thus arbitrary classes can be instantiated.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2021-28834
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 08:55 UTC · Revision 1
Source evidence
Kramdown before 2.3.1 does not restrict Rouge formatters to the Rouge::Formatters namespace, and thus arbitrary classes can be instantiated.
osv:CVE-2021-28834
Complete source record
{
"id": "0ba45449201aaa8c7ecd50ea31678320badd576ed449278b791e9ae3b36f898b",
"url": "https://osv.dev/vulnerability/CVE-2021-28834",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2021-28834",
"summary": "Kramdown before 2.3.1 does not restrict Rouge formatters to the Rouge::Formatters namespace, and thus arbitrary classes can be instantiated.",
"evidence": "osv:CVE-2021-28834",
"products": [],
"severity": "critical",
"structured": {
"id": "CVE-2021-28834",
"aliases": [
"CVE-2021-28834",
"GHSA-52p9-v744-mwjj"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/gettalong/kramdown",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "0b0a9e072f9a76e59fe2bbafdf343118fb27c3fa"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:kramdown_project:kramdown:*:*:*:*:*:ruby:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "2.3.1"
}
],
"source": "CPE_RANGE"
}
]
}
}
],
"versions": [
"REL_2_3_0",
"REL_2_2_1",
"REL_2_2_0",
"REL_2_1_0",
"REL_2_0_0",
"REL_1_17_0",
"REL_1_16_2",
"REL_1_16_1",
"REL_1_16_0",
"REL_1_15_0",
"REL_1_14_0",
"REL_1_13_2",
"REL_1_13_1",
"REL_1_13_0",
"REL_1_12_0",
"REL_1_11_1",
"REL_1_11_0",
"REL_1_10_0",
"REL_1_9_0",
"REL_1_8_0",
"REL_1_7_0",
"REL_1_6_0",
"REL_1_5_0",
"REL_1_4_2",
"REL_1_4_1",
"REL_1_4_0",
"REL_1_3_3",
"REL_1_3_2",
"REL_1_3_1",
"REL_1_3_0",
"REL_1_2_0",
"REL_1_1_0",
"REL_1_0_2",
"REL_1_0_1",
"REL_0_1_0_1",
"REL_1_0_0",
"REL_0_1_0_0",
"REL_0_14_2",
"REL_0_14_1",
"REL_0_14_0",
"REL_0_13_8",
"REL_0_13_7",
"REL_0_13_6",
"REL_0_13_5",
"REL_0_13_4",
"REL_0_13_3",
"REL_0_13_2",
"REL_0_13_1",
"REL_0_12_0",
"REL_0_11_0",
"REL_0_10_0",
"REL_0_9_0",
"REL_0_8_0",
"REL_0_7_0",
"REL_0_6_0",
"REL_0_5_0",
"REL_0_4_0",
"REL_0_3_0",
"REL_0_2_0",
"REL_0_1_0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-28834.json"
}
},
{
"ranges": [
{
"repo": "https://gitlab.com/gitlab-org/gitlab",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "179329b5c3c118924fb242dc449d06b4ed6ccb66"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"fixed": "179329b5c3c118924fb242dc449d06b4ed6ccb66"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"v13.9.3-ee",
"v13.9.1-ee",
"v13.9.0-ee",
"v13.9.0-rc43-ee",
"v13.9.0-rc42-ee",
"11-10-0cfa69752d8-74ffd66ae-ee",
"11-10-0cfa69752d8-0d9531c80-ee",
"11-10-119f9509d50-6d7537235-ee",
"v7.3.0-ee",
"v7.3.0.rc1-ee",
"v7.2.0.rc5-ee",
"v7.2.0.rc4-ee",
"v7.2.0.rc3-ee",
"v7.2.0.rc2-ee",
"v7.2.0.rc1-ee",
"v7.1.0-ee",
"v7.1.0.rc1-ee",
"v7.0.0-ee",
"v6.8.0-ee",
"v6.7.0-ee",
"v6.7.0.rc1-ee",
"v6.6.0-ee",
"v6.5.0-ee",
"v6.4.0-ee",
"v6.3.1-ee",
"v6.3.0-ee",
"v6.1.0-ee",
"v6.0.0-ee",
"v6.0.0-ee.rc1",
"v6.0.0-ee.beta",
"v5.2.0",
"v5.1.0",
"v5.0.0",
"v4.0.0",
"v4.0.0rc2",
"v4.0.0rc1",
"v3.1.0",
"v3.0.3",
"v3.0.2",
"v3.0.1",
"v3.0.0",
"v2.9.1",
"v2.9.0",
"v2.8.2",
"v2.8.1",
"v2.8.0",
"v2.8.0pre",
"v2.7.0",
"v2.7.0pre",
"v2.6.3",
"v2.6.2",
"v2.6.1",
"v2.6.0",
"v2.6.0pre",
"v2.5.0",
"v2.4.1",
"v2.4.0",
"v2.4.0pre",
"v2.3.1",
"v2.3.0",
"v2.3.0pre",
"v1.2.2",
"v1.2.1",
"v1.2.0",
"v1.2.0pre"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-28834.json"
}
}
],
"modified": "2026-10-24T10:50:41.869031094Z",
"provider": "osv",
"references": [
"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/NJCJVYHPY6LNUFM6LYZIAUIYOMVT5QGV/",
"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/S3BBLUIDCUUR3NEE4NJLOCCAV3ALQ3O6/",
"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/SYOLQKFL6IJCQLBXV34Z4TI4O54GESPR/",
"https://www.debian.org/security/2021/dsa-4890",
"https://github.com/gettalong/kramdown/compare/REL_2_3_0...REL_2_3_1",
"https://gitlab.com/gitlab-org/gitlab/-/commit/179329b5c3c118924fb242dc449d06b4ed6ccb66",
"https://github.com/gettalong/kramdown/pull/708"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:*"
],
"vendor_product": "debian:debian_linux",
"extracted_events": [
{
"range": [
{
"introduced": "10.0"
},
{
"last_affected": "10.0"
}
],
"source": "CPE_STRING"
}
]
},
{
"cpes": [
"cpe:2.3:o:fedoraproject:fedora:32:*:*:*:*:*:*:*",
"cpe:2.3:o:fedoraproject:fedora:33:*:*:*:*:*:*:*",
"cpe:2.3:o:fedoraproject:fedora:34:*:*:*:*:*:*:*"
],
"vendor_product": "fedoraproject:fedora",
"extracted_events": [
{
"range": [
{
"introduced": "32"
},
{
"last_affected": "32"
},
{
"introduced": "33"
},
{
"last_affected": "33"
},
{
"introduced": "34"
},
{
"last_affected": "34"
}
],
"source": "CPE_STRING"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2021-28834",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 442489,
"published_at": "2021-03-19T07:15:13.147+00:00"
}