django - Django登录,下一个url重定向到外部链接
问题描述
一个应用程序允许在登录后使用下一个参数重定向到外部链接,例如,如果我使用登录,https://myawesomeapp.com/en/auth/login?next=http://google.be
我将被重定向到 Google。使用is_safe_url
函数 (from django.utils.http
) 解决了这个问题,我还应该使用 Django 的内置 LoginView。
我的问题是:这是安全漏洞吗?黑客可以通过该漏洞获得什么?
解决方案
- 黑客可以使虚假网站看起来像您的网站,并向某人发送诸如https://myawesomeapp.com/en/auth/login?next=https://myawesomeappp.com之类的链接,并且用户可以确信他仍在您的网站上。用户可以通过这种方式与黑客共享凭据。
- https://en.wikipedia.org/wiki/HTTP_response_splitting
推荐阅读
- python - Python中的文件处理代码没有给出任何输出
- java - 如何在while循环迭代中将所有行放在HashMap中
- python - Django 在错误的应用程序中搜索 URL
- reactjs - 让 Next HOC 连接到 Redux 商店
- java - Spring DATA JPA:如何在保存嵌套实体的数据库约束(违反唯一键)时获得成功/失败
- sql - 无法使用新的 MSOLEDBSQL 连接到 SQL Server 2019
- python-3.x - 为什么这段代码不能与 Numba 并行化?
- git - git - 使 autostash 重新应用索引,就像 git stash 的 --index 选项一样
- java - 如何在 intellij / Eclipse 中使用 java 程序刷新文件夹?(解决了)
- c++ - 循环对特定数组元素没有影响