关键信息 漏洞描述 漏洞类型: 客户端验证绕过,允许在用户数据中插入特殊字符。 平台: Litmus Chaos 版本: 3.19.0 概要 在LitmusChaos平台上发现了一个验证缺陷,允许攻击者绕过客户端限制并提交特殊字符(如 )到用户配置文件字段,如显示名称。后端未强制执行相同的限制,导致输入处理不一致和潜在的下游问题。 细节 应用程序仅在前端级别使用JavaScript或HTML5验证来强制执行输入限制(例如,不允许用户名中的特殊字符)。 这些限制可以通过直接操作请求轻松绕过,允许意外数据被存储和显示。 测试场景 1. 以管理员身份登录。 2. 尝试使用特殊字符更改用户配置文件中的显示名称。 3. 前端显示验证错误,阻止提交。 4. 使用Burp Suite拦截配置文件更新的HTTP请求。 - 端点: 5. 手动修改名称字段以包含特殊字符。 6. 请求转发到后端。 7. 收到来自服务器的成功响应,更改反映在用户界面中。 PoC 在测试场景中,管理员帐户用于尝试通过插入特殊字符来更改用户名。最初,前端应用程序限制了此操作,表示初级验证。 当拦截更改用户数据的请求时,特别是对于 端点,此验证很容易被绕过。 在拦截的请求中,引用用户名的字段被修改为包含所需的特殊字符。 发送修改后的请求后,后端返回成功消息。 在应用程序界面中,用户名成功更改,显示特殊字符。 影响 虽然这个问题乍一看可能很小,但服务器端缺乏适当的输入验证会打开以下大门: - 应用程序行为不一致; - 潜在的注入向量(例如,如果这些数据稍后在HTML、日志或电子邮件等上下文中呈现而没有进行清理); - 数据完整性受损。