元刷新重定向是不是“安全”
Posted
技术标签:
【中文标题】元刷新重定向是不是“安全”【英文标题】:Is Meta Refresh Redirect "Secure"元刷新重定向是否“安全” 【发布时间】:2018-08-08 18:45:09 【问题描述】:如果用户阻止 javascript,我有一行代码可以将用户从 index.php
重定向到 enable-js.php
:
<noscript><meta http-equiv="refresh" content="0;url=enable-js.php"></noscript>
由于这是客户端重定向,用户是否仍然可以访问index.php
以在禁用 javascript 的情况下填写表单,或者我应该找到一种方法来实现 PHP headers
代替?
【问题讨论】:
他们可以在这种情况下启用 javascript 并在 index.php 上填写表格,如果这就是您的意思 我的意思是如果他们仍然禁用 javascript...我会编辑问题 可以在 DOM 已加载(无需刷新)之后关闭 JavaScript,所以是的,可以绕过您的<noscript>
并且仍然打开 JavaScript离开。但是,我不太确定您首先要尝试做什么,这听起来像是XY problem。
“在禁用 javascript 的情况下执行诸如填写表格之类的操作” - 我的解释是否正确,因为您认为通过 JavaScript 验证您的数据客户端是够了,只要你让“非 JS”用户远离表单......?如果您期望到达您的服务器端脚本的任何请求都必须来自诸如“浏览器”之类的东西,那真是太天真了。
【参考方案1】:
由于这是一个客户端重定向,用户是否仍然可以访问 index.php 以执行诸如填写表单之类的操作,或者我应该找到一种方法来实现 PHP 标头?
是的。他们可以通过 cURL 编写脚本(根本不会处理元刷新)、取消导航(例如通过非常快速地按下退出键)或 disable meta refresh in the browser entirely。
【讨论】:
以上是关于元刷新重定向是不是“安全”的主要内容,如果未能解决你的问题,请参考以下文章