Smarty: SSRF via redirect bypass of trusted_uri using {fetch}
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| smarty-php | smarty | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Smarty-php | Smarty |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-cq55-c7wv-pxmq | Smarty: SSRF via redirect bypass of trusted_uri using {fetch} |
No CVSS v3.1
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.574% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Smarty-php
Smarty-php smarty |
|
| Vendors & Products |
Smarty-php
Smarty-php smarty |
| Type | Values Removed | Values Added |
|---|---|---|
| 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. | |
| Title | Smarty: SSRF via redirect bypass of trusted_uri using {fetch} | |
| Weaknesses | CWE-918 | |
| References |
|
|
| Metrics |
cvssV4_0
|