CVE-2026-78693 in ash_graphql
摘要
由 VulDB • 2026-08-30
ash-project ash_graphql 中存在一个包含敏感信息的错误消息生成漏洞,允许远程客户端读取应用程序的 error_handler 配置为脱敏的内部字段名称。
在 AshGraphql.Errors 中,每个错误都会传递给配置的 error_handler,并且返回的映射会通过 `Map.put_new(handled, :path, path)` 与 pre-handler 路径合并。由于 `put_new` 仅在处理程序本身设置了 `:path` 时才交由处理程序决定,因此一个返回新映射或删除了 `:path` 的清理型处理程序会导致该决策被撤销(reverted)。重新注入的路径来自 `build_error_path/5`,当未配置 field_names 映射时,它会回退到原始的 Ash attribute 和 argument 名称。因此,对非暴露字段或嵌套字段的验证失败会在 GraphQL 错误路径中返回内部名称,从而破坏了应用程序的脱敏机制。
此问题影响 ash_graphql:从 1.9.0 至 1.11.0(不含)版本。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.