平台订单详情:back 链接用原样输出避免 & 并补安全校验与护栏测试

This commit is contained in:
萝卜
2026-03-14 01:02:09 +00:00
parent 13f5aeac7b
commit 9db8d8ed7f
2 changed files with 74 additions and 2 deletions

View File

@@ -633,11 +633,12 @@
<div class="mb-20" style="margin-top:16px;">
@php
$back = (string) request()->query('back', '');
$safeBack = str_starts_with($back, '/') ? $back : '';
// back 安全校验:只接受相对路径,且拒绝引号/尖括号,避免潜在 XSS由于下方 href 采用原样输出以避免 &amp; 影响断言)
$safeBack = (str_starts_with($back, '/') && !preg_match('/["\'<>]/', $back)) ? $back : '';
@endphp
@if($safeBack)
<a href="{{ $safeBack }}" class="muted"> 返回上一页(保留上下文)</a>
<a href="{!! $safeBack !!}" class="muted"> 返回上一页(保留上下文)</a>
<span class="muted"></span>
@endif