CORS 保护(同源策略)可靠吗?
Is CORS protection ( Same origin policy ) reliable?
我的应用程序中有反 crsf 机制,但我想知道,这真的有必要吗?我能否仅依靠同源策略来保护我的用户免受跨站点资源伪造攻击?
同源策略只能防止跨站点脚本,否则即使对于编写良好的应用程序也是可能的。但这对 CSRF 没有帮助,例如,如果恶意站点包含如下代码:
<body onLoad="document.getElementById('attack').submit();">
<form id="attack" action="http://victim/admin/add-user">
<input type="hidden" name="username" value="badguy"/>
<input type="hidden" name="password" value="asdf394y"/>
<input type="hidden" name="role" value="admin"/>
</form>
</body>
攻击者将无法读取响应,但这里不需要。
我的应用程序中有反 crsf 机制,但我想知道,这真的有必要吗?我能否仅依靠同源策略来保护我的用户免受跨站点资源伪造攻击?
同源策略只能防止跨站点脚本,否则即使对于编写良好的应用程序也是可能的。但这对 CSRF 没有帮助,例如,如果恶意站点包含如下代码:
<body onLoad="document.getElementById('attack').submit();">
<form id="attack" action="http://victim/admin/add-user">
<input type="hidden" name="username" value="badguy"/>
<input type="hidden" name="password" value="asdf394y"/>
<input type="hidden" name="role" value="admin"/>
</form>
</body>
攻击者将无法读取响应,但这里不需要。