Vulnerability GHSA-6mp4-q625-mxjp

High Risk
HIGH RISK
CVSS Score: 7.1
Score Range: 7.0–8.9
High severity vulnerabilities (CVSS 7.0–8.9). Serious vulnerabilities that should be prioritized soon after critical fixes.
9 months ago
December 30, 2025 at 07:34 PM UTC
YOURLS is vulnerable to XSS through JSONP and Callback request parameters
1.7.1 - 1.10.2
1.7.1 - 1.10.2

Summary

YOURLS is vulnerable to XSS through JSONP and Callback request parameters

Details

Summary

The callback and jsonp request parameters are directly concatenated into the response without any sanitization that allowing attackers to inject arbitrary JS code. When YOURLS_PRIVATE is set to false (public API mode), this vulnerability can be exploited by any unauthenticated attacker. In private mode, the XSS payload is still injected into the 403 response body though browser execution is blocked.

Details

Vulnerability exists in the JSONP callback handling chain:

yourls-api.php:127-128

if( isset( $_REQUEST['callback'] ) )
    $return['callback'] = $_REQUEST['callback'];
elseif ( isset( $_REQUEST['jsonp'] ) )
    $return['callback'] = $_REQUEST['jsonp']; 

Impacted packages

Timeline

Published
9 months ago
December 30, 2025 at 07:34 PM UTC
Last Modified
9 months ago
December 30, 2025 at 08:06 PM UTC