sso登陆劫持漏洞(单点登录劫持,低危)
正文
参考资料:
腾讯单点登录系统跨域劫持漏洞
https://lvwei.me/passport.html#toc_8
sso单点登陆,用户一次登陆,所有系统都可访问。
sso设计目的是简化登陆方式,可能有很多系统,但是多个系统都是一个机构的,每个系统每次都要分别登陆就很复杂。
举个例子,OpenID是一个很流行的sso框架,
用户提交1. openID 2.openID Provider(提供者)
网站重定向到openID provider认证,登陆成功后,再重定向回网站。
这里可以理解为,门卫不知道你是谁,然后让你去某某处盖章,你去盖章完成后回到门卫处,门外验证红章没问题就让你通过。
案例
http://abc.com/public/pages/login/index.html?backurl=http%3A%2F%2Fabc.com%2FAccount%2FLogin%3FReturnUrl%3D%252f&app=YuLinTu
此处有一个参数backurl=abc.com,当修改此参数为backurl=abc.com.test
网页向abc.com.test,也就是openID Provider(提供者)提交一串openID。
提交后,网页提示无法连接abc.com.test,并且抓取到了一段数据包,包含了登陆成功的token。
由于客户可以伪造openID Provider(提供者),此处产生了sso登陆劫持漏洞。下列的sid是token。如果使用以下token,再次访问http://abc.com.test/Account/Login,可以发现已经登陆。
http://abc.com.test/Account/Login?ReturnUrl=%2f&sid=c4d4e77e80ad1ee5c6828122a38b90d18077aeea4feb963a6c465e4691f65e767f11f935de6c3616
攻击方式
攻击者可以将backurl修改为自己的地址,然后发送恶意连接 http://abc.com/public/pages/login/index.html?backurl=http%3A%2F%2F恶意地址%2FAccount%2FLogin%3FReturnUrl%3D%252f&app=YuLinTu
一旦受害者点击链接,并输入正确的用户名和密码。恶意地址会收到如下的get请求“GET /Account/Login?ReturnUrl=%2f&sid=96c2182d0da29dc720fab468734fef9e47ced2993df16fda6b03c98e92f6e77475b4cf56623430d6 ”
攻击者就可以使用token sid=xxx,以受害者的身份进行登陆abc.com。
sso登陆劫持漏洞(单点登录劫持,低危)相关推荐
- 你真的了解单点登录(SSO)吗? 单点登录实现方式
在程序开发中,特别是网站类开发,会接触到单点登录(SSO),什么是单点登录?单点登录(SSO)有什么用?下面就来详细介绍一下. 1 单点登录 1.1 什么是单点登录 单点登录的英文名叫做:Single ...
- SSO - 我们为何需要单点登录系统
SSO,Single Sign On,也就是单点登录,保证一个账户在多个系统上实现单一用户的登录 现在随着网站的壮大,很多服务会进行拆分,会做SOA服务,会使用dubbo做微服务,或者简单的小型分布式 ...
- 会话劫持漏洞小结——cookie劫持的方式、属性、原理、危害及防御
会话劫持 概念 会话劫持(Session hijacking)是一种通过获取用户Session ID后,使用该Session ID登录目标账号的攻击方法,此时攻击者实际上是使用了目标账户的有效Sess ...
- sso 登出_SSO单点登录/登出系统实现
先把源码贴出来,再慢慢讲解思路和原理以及实现方式 -->源代码1.0 整合了Mybatis +redis/redis集群二级缓存+cookie加密机制+token -->源代码2.1 密 ...
- java php 单点登陆,cas实现单点登录,登出(java跟php客户端)(转)
cas实现单点登录,登出(java跟php客户端)(转)cas实现单点登录,登出(java和php客户端) (转) 最近项目中需要做单点登录,客户端包含java和php,java有几个应用程序,php ...
- (五)SSO之CAS框架单点登录, session超时, ajax链接处理
1 错误场景 cas session 超时问题:XMLHttpRequest cannot loadhttps://www.hf.com:8443/cas/login?service=http%3A% ...
- SSO单点登录学习总结(1)——单点登录(SSO)原理解析
SSO的概念: 单点登录SSO(Single Sign-On)是身份管理中的一部分.SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应 ...
- 009 - CSS预处理器less sass SAML SSO 单点登录 websocket socket.io
009_css预处理器less sass saml sso 单点登录 websocket## less 安装: npm install -g less 命令: lessc style.less sty ...
- 基于Cookie的单点登录(SSO)系统介绍
基于Cookie的单点登录(SSO)系统介绍 SSO的概念: 单点登录SSO(Single Sign-On)是身份管理中的一部分.SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保 ...
最新文章
- NodeJS + Aliyun 实现 DDNS
- Docker容器管理总结
- linux ls-l getswd,liunx
- 17pk扎金花基于层次的技术
- java接口自动化书籍_java接口自动化优化(一)
- JAVA代码规范(二)
- OpenJDK8 u282发布一个月了,龙芯还没有更新跟进
- ARM开发6.3.3 基础实训( 3 ) 两个 LED 显示二位数(静态显示)--LPC21XX
- Android NFC详解
- vue项目中使用 ttf字体
- SQl触发器 声明变量。
- [c51单片机]利用Protues 仿真C51单片机8位数码管
- Volatility3安装
- 2019世界移动通信大会--中国5G迎来高光时刻
- 未成年人勿进 谨以献给1980~1990出生的人(一)
- 大三小学期进阶课程第十二课:apollo地图采集方案
- 预制发票MIR7抬头行项目检查BADi-MRM_HEADER_CHECK
- uniapp 前端导出excel
- 草根创业是不是真的不行了
- 淘宝API接口,Onebound数据
热门文章
- 上海药物所揭示KRAS突变肿瘤的分子分型和精准治疗新策略
- Big Sur bug汇总与解决:macOS Big Sur更新后你遇到了哪些问题?
- 计算机网络实验报告嗅探器,计算机网络实验(Wireshark)
- java jvm 查看内存_JVM:查看java内存情况命令
- 1.7 编程基础之字符串 30 字符环 python
- 1.5编程基础之循环控制_16买房子
- 轻松使用计算机,职称计算机Excel辅导:简单四招让你使用Excel轻松提速
- python0b1011_1011 A+B 和 C (15分)Python参考答案
- linux 远程桌面配置,linux 远程桌面的配置
- Spring Boot笔记-WebSocket的使用