CVE-2026-41576Brave CMS在特定commit之前存在安全漏洞。其联系表单无需认证即可访问,且在处理用户输入时,仅使用nl2br()函数转换换行符,未对HTML字符进行转义。随后数据通过未转义的Blade指令{!! $msg !!}渲染在发送给管理员的邮件模板中。攻击者可利用此漏洞在邮件中注入恶意HTML代码,虽然现代邮件客户端通常阻止JS执行,但仍可渲染恶意内容进行钓鱼攻击。
该漏洞源于Blade模板引擎的不安全使用以及输入验证的缺失。在Brave CMS的联系表单处理逻辑中,用户提交的消息内容仅经过PHP的nl2br()函数处理,该函数仅将换行符转换为HTML的<br>标签,并未过滤或转义潜在的恶意HTML字符(如<script>, <img>等)。随后,此字符串直接被传递给Blade模板,并使用{!! $msg !!}指令进行渲染。该指令会原样输出数据,不进行HTML实体转义。因此,攻击者无需管理员权限,只需提交包含恶意HTML构造的表单数据,即可将任意HTML代码注入到系统发送给管理者的通知邮件中。尽管主流邮件客户端(如Gmail、Outlook web)具有安全机制拦截JavaScript执行,但攻击者仍可利用HTML/CSS构建伪造的登录界面或钓鱼链接,诱导管理员进行交互,从而导致凭据窃取等安全风险。