CVE-2021-47873VestaCP(Vesta Control Panel)是一款流行的开源主机管理面板,用于简化Linux服务器的管理工作。该产品在0.9.8-25之前的版本中存在一处严重的存储型跨站脚本(Stored XSS)漏洞。漏洞位于IP接口配置功能模块,攻击者可以通过构造恶意的POST请求,在v_interface参数中注入JavaScript等恶意脚本代码。当管理员或其他用户访问相关的IP配置管理页面时,注入的恶意脚本将被执行,可能导致会话劫持、敏感信息窃取、管理员权限滥用等严重安全后果。由于该漏洞属于存储型XSS,恶意代码会被永久保存在服务器端,影响范围更广,危害程度更高。
该漏洞根源在于VestaCP的IP接口配置功能对用户输入缺乏充分的过滤和转义处理。攻击者需要向服务器发送一个精心构造的POST请求,目标端点为/add/ip/,核心攻击参数为v_interface。攻击者在此参数中嵌入恶意的JavaScript代码或HTML标签,如<script>alert(document.cookie)</script>等。由于应用程序未对输入进行安全过滤,该payload会被直接存储在数据库中。当管理员后续访问IP配置列表页面或相关管理界面时,浏览器会解析并执行这些存储的恶意代码。由于VestaCP通常以root权限运行,攻击成功的XSS可能进一步导致服务器被完全控制。漏洞的利用不需要任何认证,攻击者可以直接通过互联网发起攻击。