{"id":"GHSA-29gp-2c3m-3j6m","summary":"Sandbox Escape by math function in smarty","details":"### Impact\nTemplate authors could run arbitrary PHP code by crafting a malicious math string.\nIf a math string is passed through as user provided data to the math function, external users could run arbitrary PHP code by crafting a malicious math string.\n\n### Patches\nPlease upgrade to 4.0.2 or 3.1.42 or higher.\n\n### References\nSee [documentation on Math function](https://www.smarty.net/docs/en/language.function.math.tpl).\n\n### For more information\nIf you have any questions or comments about this advisory please open an issue in [the Smarty repo](https://github.com/smarty-php/smarty)\n","aliases":["CVE-2021-29454"],"modified":"2026-05-07T05:02:16.345940843Z","published":"2022-01-12T22:43:00Z","database_specific":{"severity":"HIGH","github_reviewed":true,"github_reviewed_at":"2022-01-10T22:08:56Z","nvd_published_at":"2022-01-10T20:15:00Z","cwe_ids":["CWE-74"]},"references":[{"type":"WEB","url":"https://github.com/smarty-php/smarty/security/advisories/GHSA-29gp-2c3m-3j6m"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2021-29454"},{"type":"WEB","url":"https://github.com/smarty-php/smarty/commit/215d81a9fa3cd63d82fb3ab56ecaf97cf1e7db71"},{"type":"WEB","url":"https://github.com/FriendsOfPHP/security-advisories/blob/master/smarty/smarty/CVE-2021-29454.yaml"},{"type":"PACKAGE","url":"https://github.com/smarty-php/smarty"},{"type":"WEB","url":"https://github.com/smarty-php/smarty/releases/tag/v3.1.42"},{"type":"WEB","url":"https://github.com/smarty-php/smarty/releases/tag/v4.0.2"},{"type":"WEB","url":"https://lists.debian.org/debian-lts-announce/2022/05/msg00005.html"},{"type":"WEB","url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/BRAJVDRGCIY5UZ2PQHKDTT7RMKG6WJQQ"},{"type":"WEB","url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/L777JIBIWJV34HS7LXPIDWASG7TT4LNI"},{"type":"WEB","url":"https://packagist.org/packages/smarty/smarty"},{"type":"WEB","url":"https://security.gentoo.org/glsa/202209-09"},{"type":"WEB","url":"https://www.debian.org/security/2022/dsa-5151"},{"type":"WEB","url":"https://www.smarty.net/docs/en/language.function.math.tpl"}],"affected":[{"package":{"name":"smarty/smarty","ecosystem":"Packagist","purl":"pkg:composer/smarty/smarty"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.42"}]}],"versions":["v2.6.24","v2.6.25","v2.6.26","v2.6.27","v2.6.28","v2.6.29","v2.6.30","v2.6.31","v2.6.33","v3.1.11","v3.1.12","v3.1.13","v3.1.14","v3.1.15","v3.1.16","v3.1.17","v3.1.18","v3.1.19","v3.1.20","v3.1.21","v3.1.23","v3.1.24","v3.1.25","v3.1.26","v3.1.27","v3.1.28","v3.1.29","v3.1.30","v3.1.31","v3.1.32","v3.1.33","v3.1.34","v3.1.35","v3.1.36","v3.1.37","v3.1.37.1","v3.1.38","v3.1.39","v3.1.40","v3.1.41"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/01/GHSA-29gp-2c3m-3j6m/GHSA-29gp-2c3m-3j6m.json"}},{"package":{"name":"smarty/smarty","ecosystem":"Packagist","purl":"pkg:composer/smarty/smarty"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.0.0"},{"fixed":"4.0.2"}]}],"versions":["v4.0.0","v4.0.1"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/01/GHSA-29gp-2c3m-3j6m/GHSA-29gp-2c3m-3j6m.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N"}]}