CVE-2026-62993
Received Received - Intake

Server-Side Request Forgery in Smarty Template Engine

Vulnerability report for CVE-2026-62993, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-31

Last updated on: 2026-08-31

Assigner: GitHub, Inc.

Description

Smarty is a template engine for PHP, facilitating the separation of presentation (HTML/CSS) from application logic. Prior to 4.5.7 and 5.8.2, depending on the release line, Smarty's {fetch} handling in libs/plugins/function.fetch.php and src/FunctionHandler/Fetch.php used Security::isTrustedUri() to validate only the initial remote URL against trusted_uri when a security policy was active. For resources handled by file_get_contents(), including HTTPS URLs, PHP followed HTTP redirects by default. An attacker who could supply or influence a fetch target and had an open redirect on a trusted host could redirect the request to an attacker-chosen internal endpoint, bypass the trusted_uri allowlist, and perform server-side request forgery. This issue is fixed in versions 4.5.7 and 5.8.2.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-31
Last Modified
2026-08-31
Generated
2026-09-01
AI Q&A
2026-09-01
EPSS Evaluated
N/A
NVD

Affected Vendors & Products

Showing 2 associated CPEs
Vendor Product Version / Range
smarty smarty to 4.5.7 (inc)
smarty smarty to 5.8.2 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-918 The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

Smarty is a PHP template engine. Prior to versions 4.5.7 and 5.8.2, it had a vulnerability in the {fetch} function that allowed server-side request forgery. The function used a security check to validate remote URLs but did not properly handle HTTP redirects. An attacker could exploit an open redirect on a trusted host to bypass the allowlist and access internal endpoints.

Detection Guidance

To detect this vulnerability, check if your Smarty version is prior to 4.5.7 or 5.8.2. Run: php -r "require 'vendor/autoload.php'; echo (new Smarty())->version;" to check the installed version. Inspect application logs for unusual fetch requests or redirects involving trusted hosts.

Impact Analysis

This vulnerability could allow an attacker to make unauthorized requests to internal systems from your server. If you use Smarty with a security policy enabled, an attacker might access sensitive internal resources or perform actions on your behalf without proper authorization.

Mitigation Strategies

Upgrade Smarty to version 4.5.7 or 5.8.2 or later immediately. Review and restrict trusted_uri allowlists in Security::isTrustedUri() configurations. Disable automatic HTTP redirects in PHP if not required by setting allow_url_fopen and allow_url_include to Off in php.ini.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-62993. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart