security(backurl): re-sanitize back inside helpers
This commit is contained in:
@@ -94,6 +94,13 @@ class BackUrl
|
||||
return $path;
|
||||
}
|
||||
|
||||
// 防御性:即使调用方声称传入的是 safeBack,这里也再按统一口径过滤一遍。
|
||||
// 若不合法,则不拼接 back(避免注入/嵌套 back= 膨胀/外链等风险)。
|
||||
$safeBackForLinks = self::sanitizeForLinks((string) $safeBackForLinks);
|
||||
if ($safeBackForLinks === '') {
|
||||
return $path;
|
||||
}
|
||||
|
||||
// 仅支持站内相对路径;若调用方传入了异常值,这里不做拼接,直接返回原 path。
|
||||
if ($path === '' || !str_starts_with($path, '/')) {
|
||||
return $path;
|
||||
|
||||
Reference in New Issue
Block a user