跨源接口允许值为特殊来源时,服务端应如何判断请求方是否真的可信?
简答题困难353 次浏览
参考答案与解析
# 核心结论
服务端不能把特殊来源值 null 当作“自家无域名页面”或可信调用者的身份标志。该值可能来自本地文件、沙箱化文档、不透明来源、数据文档等多种场景,攻击者同样可以构造具有这种来源状态的页面。如果敏感接口对 Origin: null 返回 Access-Control-Allow-Origin: null,尤其又允许浏览器携带凭证,攻击页面可能读取受害者数据或操作结果。
正确做法是优先只允许能够枚举和验证的标准来源,并按协议、主机和端口进行完整匹配。确需兼容特殊来源客户端时,应为其提供隔离的低权限入口,并通过短期能力令牌、明确受众、设备或应用侧认证等机制确认权限。无论跨源策略如何配置,服务端都必须独立完
