synced 5 MIN AGO
01 Record

CVE-2021-20270

An infinite loop in SMLLexer in Pygments versions 1.5 to 2.7.3 may lead to denial of service when performing syntax highlighting of a Standard ML (SML) source file, as demonstrated by input that only

UnratedPUBLISHEDCNA: redhat
CNA base scoreUnratedNo CNA CVSS vector

02 Description

An infinite loop in SMLLexer in Pygments versions 1.5 to 2.7.3 may lead to denial of service when performing syntax highlighting of a Standard ML (SML) source file, as demonstrated by input that only

03 Exploitation and scoring

Exploitation
Not assessed. CISA has not published an exploitation assessment for this record, and it is not in the KEV catalog. That is an absence of assessment, not a finding of no risk.
SSVC decision
Not assessed by CISA
EPSS probability
2.75% probability of exploitation activity in the next 30 days.
EPSS percentile
Equal to or higher than the score of 85.9% of scored records. A rank, not a probability.
NVD base score
7.5 (CVSS v3.x), scored by the NVD independently of the CNA.
NVD CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
NVD analysis status
Modified. NVD last modified this record on 2026-06-17.
Red Hat severity
Moderate. Red Hat's rating for its own products, not a CVSS rating.

Exploit-prediction scores from FIRST. Independent scoring and analysis status from the NVD. Vendor severity from Red Hat. Exploitation assessment and catalog membership from CISA.

04 Metadata

Published
2021-03-23 16:40Z5 YR AGO
Last updated
2024-08-03 17:37Z2 YR AGO
Reserved
2020-12-17
Assigning CNA
redhat
Record state
PUBLISHED
Severity
Not rated by the issuing CNA
CNA CVSS vector
Not published by the issuing CNA
Weaknesses
  • CWE-835Loop with Unreachable Exit Condition ('Infinite Loop')Base
Data version
5.1
Document digest
b67c705a4ab3fc73bfd38369cd610eef9f618cf7c584324a2c99796df85c67b4

05 Affected products

VendorProductVersionsPlatforms
n/apython-pygmentspython-pygments 2.7.4—

06 References

07 Fixed in

AlmaLinux 8

  • babel
    Fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13
  • python-nose-docs
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1.3.7-31.module_el8.5.0+2569+5c5719bc
    • Affected before 1.3.7-31.module_el8.6.0+2781+fed64c13
  • python-psycopg2-doc
    Fixed in 2.7.5-7.module_el8.6.0+2781+fed64c13
  • python-pymongo-doc
    Fixed

    A version is affected if any line below covers it.

    • Affected before 3.7.0-1.module_el8.5.0+135+5ce32bc4
    • Affected before 3.7.0-1.module_el8.5.0+2569+5c5719bc
  • python-sqlalchemy-doc
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1.3.2-2.module_el8.5.0+2569+5c5719bc
    • Affected before 1.3.2-2.module_el8.6.0+2781+fed64c13
  • python-virtualenv-doc
    Fixed

    A version is affected if any line below covers it.

    • Affected before 15.1.0-21.module_el8.5.0+135+5ce32bc4
    • Affected before 15.1.0-21.module_el8.5.0+2569+5c5719bc
  • python2-Cython
    Fixed in 0.28.1-7.module_el8.6.0+2781+fed64c13
  • python2-PyMySQL
    Fixed in 0.8.0-10.module_el8.6.0+2781+fed64c13
  • python2-attrs
    Fixed in 17.4.0-10.module_el8.6.0+2781+fed64c13
  • python2-babel
    Fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13
  • python2-backports
    Fixed in 1.0-16.module_el8.6.0+2781+fed64c13
  • python2-backports-ssl_match_hostname
    Fixed in 3.5.0.1-12.module_el8.6.0+2781+fed64c13
  • python2-bson
    Fixed in 3.7.0-1.module_el8.6.0+2781+fed64c13
  • python2-chardet
    Fixed in 3.0.4-10.module_el8.6.0+2781+fed64c13
  • python2-coverage
    Fixed in 4.5.1-4.module_el8.6.0+2781+fed64c13
  • python2-dns
    Fixed in 1.15.0-10.module_el8.6.0+2781+fed64c13
  • python2-docs
    Fixed in 2.7.16-2.module_el8.6.0+2781+fed64c13
  • python2-docs-info
    Fixed in 2.7.16-2.module_el8.6.0+2781+fed64c13
  • python2-docutils
    Fixed in 0.14-12.module_el8.6.0+2781+fed64c13
  • python2-funcsigs
    Fixed in 1.0.2-13.module_el8.6.0+2781+fed64c13
  • python2-idna
    Fixed in 2.5-7.module_el8.6.0+2781+fed64c13
  • python2-ipaddress
    Fixed in 1.0.18-6.module_el8.6.0+2781+fed64c13
  • python2-jinja2
    Fixed in 2.10-9.module_el8.6.0+2781+fed64c13
  • python2-markupsafe
    Fixed in 0.23-19.module_el8.6.0+2781+fed64c13
  • python2-mock
    Fixed in 2.0.0-13.module_el8.6.0+2781+fed64c13
  • python2-nose
    Fixed in 1.3.7-31.module_el8.6.0+2781+fed64c13
  • python2-numpy
    Fixed in 1:1.14.2-16.module_el8.6.0+2781+fed64c13
  • python2-numpy-doc
    Fixed in 1:1.14.2-16.module_el8.6.0+2781+fed64c13
  • python2-numpy-f2py
    Fixed in 1:1.14.2-16.module_el8.6.0+2781+fed64c13
  • python2-pluggy
    Fixed in 0.6.0-8.module_el8.6.0+2781+fed64c13
  • python2-psycopg2
    Fixed in 2.7.5-7.module_el8.6.0+2781+fed64c13
  • python2-psycopg2-debug
    Fixed in 2.7.5-7.module_el8.6.0+2781+fed64c13
  • python2-psycopg2-tests
    Fixed in 2.7.5-7.module_el8.6.0+2781+fed64c13
  • python2-py
    Fixed in 1.5.3-6.module_el8.6.0+2781+fed64c13
  • python2-pygments
    Fixed in 2.2.0-22.module_el8.6.0+2781+fed64c13
  • python2-pymongo
    Fixed in 3.7.0-1.module_el8.6.0+2781+fed64c13
  • python2-pymongo-gridfs
    Fixed in 3.7.0-1.module_el8.6.0+2781+fed64c13
  • python2-pysocks
    Fixed in 1.6.8-6.module_el8.6.0+2781+fed64c13
  • python2-pytest
    Fixed in 3.4.2-13.module_el8.6.0+2781+fed64c13
  • python2-pytest-mock
    Fixed in 1.9.0-4.module_el8.6.0+2781+fed64c13

36 further packages in AlmaLinux 8 not shown (first 40 listed).

Source: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.

Arch Linux

  • mediawiki
    Fixed in 1.35.2-1
  • python-pygments
    Fixed in 2.7.4-1

Source: Arch Linux Security Tracker, the Arch Linux security team. Reformatted by exploit.cc.

CloudLinux 8

  • babel
    Fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13
  • python-nose-docs
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1.3.7-31.module_el8.5.0+2569+5c5719bc
    • Affected before 1.3.7-31.module_el8.6.0+2781+fed64c13
  • python-psycopg2-doc
    Fixed in 2.7.5-7.module_el8.6.0+2781+fed64c13
  • python-pymongo-doc
    Fixed

    A version is affected if any line below covers it.

    • Affected before 3.7.0-1.module_el8.5.0+135+5ce32bc4
    • Affected before 3.7.0-1.module_el8.5.0+2569+5c5719bc
  • python-sqlalchemy-doc
    Fixed

    A version is affected if any line below covers it.

    • Affected before 1.3.2-2.module_el8.5.0+2569+5c5719bc
    • Affected before 1.3.2-2.module_el8.6.0+2781+fed64c13
  • python-virtualenv-doc
    Fixed

    A version is affected if any line below covers it.

    • Affected before 15.1.0-21.module_el8.5.0+135+5ce32bc4
    • Affected before 15.1.0-21.module_el8.5.0+2569+5c5719bc
  • python2-Cython
    Fixed in 0.28.1-7.module_el8.6.0+2781+fed64c13
  • python2-PyMySQL
    Fixed in 0.8.0-10.module_el8.6.0+2781+fed64c13
  • python2-attrs
    Fixed in 17.4.0-10.module_el8.6.0+2781+fed64c13
  • python2-babel
    Fixed in 2.5.1-10.module_el8.6.0+2781+fed64c13
  • python2-backports
    Fixed in 1.0-16.module_el8.6.0+2781+fed64c13
  • python2-backports-ssl_match_hostname
    Fixed in 3.5.0.1-12.module_el8.6.0+2781+fed64c13
  • python2-bson
    Fixed in 3.7.0-1.module_el8.6.0+2781+fed64c13
  • python2-chardet
    Fixed in 3.0.4-10.module_el8.6.0+2781+fed64c13
  • python2-coverage
    Fixed in 4.5.1-4.module_el8.6.0+2781+fed64c13
  • python2-dns
    Fixed in 1.15.0-10.module_el8.6.0+2781+fed64c13
  • python2-docs
    Fixed in 2.7.16-2.module_el8.6.0+2781+fed64c13
  • python2-docs-info
    Fixed in 2.7.16-2.module_el8.6.0+2781+fed64c13
  • python2-docutils
    Fixed in 0.14-12.module_el8.6.0+2781+fed64c13
  • python2-funcsigs
    Fixed in 1.0.2-13.module_el8.6.0+2781+fed64c13
  • python2-idna
    Fixed in 2.5-7.module_el8.6.0+2781+fed64c13
  • python2-ipaddress
    Fixed in 1.0.18-6.module_el8.6.0+2781+fed64c13
  • python2-jinja2
    Fixed in 2.10-9.module_el8.6.0+2781+fed64c13
  • python2-markupsafe
    Fixed in 0.23-19.module_el8.6.0+2781+fed64c13
  • python2-mock
    Fixed in 2.0.0-13.module_el8.6.0+2781+fed64c13
  • python2-nose
    Fixed in 1.3.7-31.module_el8.6.0+2781+fed64c13
  • python2-numpy
    Fixed in 1:1.14.2-16.module_el8.6.0+2781+fed64c13
  • python2-numpy-doc
    Fixed in 1:1.14.2-16.module_el8.6.0+2781+fed64c13
  • python2-numpy-f2py
    Fixed in 1:1.14.2-16.module_el8.6.0+2781+fed64c13
  • python2-pluggy
    Fixed in 0.6.0-8.module_el8.6.0+2781+fed64c13
  • python2-psycopg2
    Fixed in 2.7.5-7.module_el8.6.0+2781+fed64c13
  • python2-psycopg2-debug
    Fixed in 2.7.5-7.module_el8.6.0+2781+fed64c13
  • python2-psycopg2-tests
    Fixed in 2.7.5-7.module_el8.6.0+2781+fed64c13
  • python2-py
    Fixed in 1.5.3-6.module_el8.6.0+2781+fed64c13
  • python2-pygments
    Fixed in 2.2.0-22.module_el8.6.0+2781+fed64c13
  • python2-pymongo
    Fixed in 3.7.0-1.module_el8.6.0+2781+fed64c13
  • python2-pymongo-gridfs
    Fixed in 3.7.0-1.module_el8.6.0+2781+fed64c13
  • python2-pysocks
    Fixed in 1.6.8-6.module_el8.6.0+2781+fed64c13
  • python2-pytest
    Fixed in 3.4.2-13.module_el8.6.0+2781+fed64c13
  • python2-pytest-mock
    Fixed in 1.9.0-4.module_el8.6.0+2781+fed64c13

36 further packages in CloudLinux 8 not shown (first 40 listed).

Derived from AlmaLinux 8. Partial coverage: only packages taken from AlmaLinux 8 are listed.

Source: CloudLinux errata, CloudLinux Inc. Derived from: AlmaLinux, AlmaLinux OS. Copyright (c) 2023 AlmaLinux OS. Licensed under MIT License. Received through OSV.dev. Reformatted by exploit.cc.

Debian 12

  • mediawiki
    Fixed in 1:1.35.2-1
  • pygments
    Fixed in 2.7.1+dfsg-2

Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.

Debian 13

  • mediawiki
    Fixed in 1:1.35.2-1
  • pygments
    Fixed in 2.7.1+dfsg-2

Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.

Debian 14

  • mediawiki
    Fixed in 1:1.35.2-1
  • pygments
    Fixed in 2.7.1+dfsg-2

Source: Debian Security Tracker, the Debian security team. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu 16.04 LTS

  • pygments
    Fixed in 2.1+dfsg-1ubuntu0.1

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu 18.04 LTS

  • pygments
    Fixed in 2.2.0+dfsg-1ubuntu0.1

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu 20.04 LTS

  • pygments
    Fixed in 2.3.1+dfsg-1ubuntu2.1

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

Ubuntu Pro 14.04 LTS

  • pygments
    Fixed in 1.6+dfsg-1ubuntu1.1+esm1
    Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro

Source: Ubuntu, Canonical Ltd. Licensed under CC BY-SA 4.0. Received through OSV.dev. Reformatted by exploit.cc.

A release or ecosystem missing from this list has no record here. It may be unaffected or not covered by the source. Source notices and licences.