CVE-2021-29454

NameCVE-2021-29454
DescriptionSmarty is a template engine for PHP, facilitating the separation of presentation (HTML/CSS) from application logic. Prior to versions 3.1.42 and 4.0.2, template authors could run arbitrary PHP code by crafting a malicious math string. If a math string was passed through as user provided data to the math function, external users could run arbitrary PHP code by crafting a malicious math string. Users should upgrade to version 3.1.42 or 4.0.2 to receive a patch.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDLA-2995-1, DSA-5151-1
Debian Bugs1010375

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
smarty3 (PTS)jessie, jessie (lts)3.1.21-1+deb8u2vulnerable
stretch (security), stretch (lts), stretch3.1.31+20161214.1.c7d42e4+selfpack1-2+deb9u6fixed
buster, buster (lts)3.1.33+20180830.1.3a78a21f+selfpack1-1+deb10u3fixed
buster (security)3.1.33+20180830.1.3a78a21f+selfpack1-1+deb10u2fixed
bullseye3.1.39-2+deb11u1fixed
bullseye (security)3.1.39-2+deb11u2fixed
bookworm3.1.47-2fixed
sid3.1.48-2fixed
smarty4 (PTS)bookworm4.3.0-1+deb12u1fixed
sid, trixie4.5.4-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
smarty3sourcejessie(unfixed)end-of-life
smarty3sourcestretch3.1.31+20161214.1.c7d42e4+selfpack1-2+deb9u5DLA-2995-1
smarty3sourcebuster3.1.33+20180830.1.3a78a21f+selfpack1-1+deb10u1DSA-5151-1
smarty3sourcebullseye3.1.39-2+deb11u1DSA-5151-1
smarty3source(unstable)3.1.45-1
smarty4source(unstable)4.1.1-11010375

Notes

https://github.com/smarty-php/smarty/security/advisories/GHSA-29gp-2c3m-3j6m
https://github.com/smarty-php/smarty/commit/215d81a9fa3cd63d82fb3ab56ecaf97cf1e7db71 (v4.0.2)
https://github.com/smarty-php/smarty/commit/7ad97ad030b4289711e30819c928b8bc33c62b23 (v3.1.42)

Search for package or bug name: Reporting problems