CVE-2018-13982

NameCVE-2018-13982
DescriptionSmarty_Security::isTrustedResourceDir() in Smarty before 3.1.33 is prone to a path traversal vulnerability due to insufficient template code sanitization. This allows attackers controlling the executed template code to bypass the trusted directory security restriction and read arbitrary files.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDLA-2618-1

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
smarty3 (PTS)jessie, jessie (lts)3.1.21-1+deb8u2fixed
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
bookworm (security)3.1.47-2+deb12u1fixed
sid, trixie3.1.48-2fixed

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

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
smarty3sourcejessie(not affected)
smarty3sourcestretch3.1.31+20161214.1.c7d42e4+selfpack1-2+deb9u2DLA-2618-1
smarty3source(unstable)3.1.33+20180830.1.3a78a21f+selfpack1-1

Notes

[jessie] - smarty3 <not-affected> (vulnerable code not present)
https://github.com/smarty-php/smarty/commit/8d21f38dc35c4cd6b31c2f23fc9b8e5adbc56dfe
https://github.com/smarty-php/smarty/commit/f9ca3c63d1250bb56b2bda609dcc9dd81f0065f8
https://github.com/smarty-php/smarty/commit/2e081a51b1effddb23f87952959139ac62654d50
https://github.com/smarty-php/smarty/commit/c9dbe1d08c081912d02bd851d1d1b6388f6133d1
https://www.openwall.com/lists/oss-security/2018/09/17/4
https://github.com/sbaresearch/advisories/tree/public/2018/SBA-ADV-20180420-01_Smarty_Path_Traversal
CVE is about the fetch tag as an attack vector.
vulnerable code introduced in realpath() rewrite (c09b05cbe) released in 3.1.28

Search for package or bug name: Reporting problems