黑掉github之我见, 漏洞vs钓鱼

看了酷壳的这篇帖子: http://coolshell.cn/articles/11021.html (从黑掉 github 学web安全开发)


觉得有几点需要学习或者了解:

1. ff/chrome 都认为  <img src=”///attackersite.com”>  这个是一个绝对路径, 最终会转换为 <img src=”attackersite.com”> , 但是server的开发可能会用正则匹配,认为这个是一个相对路径。赞呀~~ 就我个人开发而言,我一般看到 开头是 "/", 就认为是一个相对路径,当然还会做一个补刀操作就是在 “/” 之前加入自己网站的sheme, 整个域, port, web content path等。 例如///attackersite.com 就会补为: http://chillyc.info///attackersite.com, 然后我估计就跳转到一个404的页面了。大家可以试试。


2. Referer 漏洞。 这个观念应该加强。 主要原因是,如果有外域的图片或者其他的什么信息,当前的url路径就会变为 reference 送给外域。 特别是喜欢在 url中加入特殊认证信息的地方。例如sid啥的。 这里有两点可以规避, 第一是内域使用Https, 对于外域一般使用http, 这样隐秘信息就不会通过reference 发送给外域。当然浏览器的某些版本也可能会禁止访问从Https页面发送给http页面的请求。 第二个就是在HTML5, 使用<a>, <area> 标签可以加入 noreferer 这个属性,表示点击这个链接不会有Referer header发送。但是酷壳这篇文中使用的是 img 标签, 并且还是个内域的。这就无能为力了。


3. 对于 Oauth2 协议而言,其实只需要限制域名就可以。有时候限制callback URL 会让API的使用者非常难受。


4. 看完Oauth2攻击的那篇帖子,其实也就是只针对github中的gist这个东西产生了奇妙的漏洞。token都放在callback url中一起传。一般access token 是有server端获取code之后,使用consumer_secret 来获取的。也就是如果没有应用的consumer_secret, 只有access token是没有用的。其实最简易的攻击就是自己做个应用,直接从server端获取access_token. 这个比上面那些漏洞更加靠谱。所以做钓鱼应用就好了,嗯嗯,就是这样。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值