3
thinkershare 2023-02-16 23:29:54 +08:00
302 跳转为啥会跳到其它地方? 302 的 HTTP Respone 不是你的服务器返回的吗?服务器不能确保跳转地址的有效性??
|
4
edis0n0 OP 创建新回复过程中遇到一些问题:
请不要在每一个回复中都包括外链,这看起来像是在 spamming |
5
edis0n0 OP @thinkershare 例如登录页面的跳转,/login?returnUrl=/example ,就会 302 到 /example ,怕有人利用这个 return 到山寨网站 例如 /login?returnUrl=ht tp://sca m.com 有用户可能只看开头的域名没问题就觉得没问题
|
6
rozbo 2023-02-16 23:45:13 +08:00
跳转的时候一般前面要放个中转页,这个中转页可以有 ui(就像某贴吧某乎等),提醒用户即将跳到外站,也可以没有中转页,根据配置的 white list 可以直接进行 block
BTW , 作为系统的开发者,我们往往不要对数据进行修改操作,因为这样会导致后期排查问题的复杂度指数级的提升 |
7
GeruzoniAnsasu 2023-02-17 00:00:45 +08:00
后端处理一下 returnUrl 这个参数只对白名单返回 302 不就行了……?
|
8
xiangyuecn 2023-02-17 00:31:30 +08:00
// 打头的是有效的含任意主机域名的 url ,只是缺了协议,会自动补全协议
你是 http:,那就跳到 http://🐶 你是 https:,那就跳到 https://🐶 你是 ftp:,那就跳到 ftp://🐶 --- 深挖一点,你 302 /path 前面主机、协议都缺了,自动根据当前的 url 进行补全 相对路径补全操作更复杂,还有 /../../../ 套娃😂 |
9
piku 2023-02-17 07:48:33 +08:00 via Android
如果地址不以 /开头,则加上 /。想了想的确挺靠谱。
但是很多网站是跨域名登录,这种情况就不行了,可能要把整个 url 拆分,校验协议、主机没问题,才能跳到指定的路径。 |