JSONP漏洞
介绍
JSON劫持⼜称“JSON Hijacking”,2008年国外安全研究⼈员开始提到由JSONP带来的风险。这个问题属于CSRF(Cross-site
request forgery跨站请求伪造)攻击范畴,当某⽹站通过JSONP的⽅式跨域(⼀般为⼦域)传递⽤户认证后的敏感信息时,攻击者可以构
造恶意的JSONP调⽤页⾯,诱导被攻击者访问,以达到截取⽤户敏感信息的⽬的
JSONP漏洞挖掘
JSONP漏洞挖掘,⾸先需要尽可能的找到所有的接⼝,尤其是返回数据格式是JSONP的接口,然后在数据包中检索关键词callback、json、jsonp、email等,观察返回值是否变化。观察headers中的Content-Type是否是application/json进行模糊过滤(不是可能存在漏洞)
一些JSONP示例接口
name: '人人网1', link: 'http://base.yx.renren.com/RestAPI?method=api.base.getLoginUser&format=2&callback=' }, { name: '人人网2', link: 'http://passport.game.renren.com/user/info?callback=' }, { name: '网易163', link: 'http://comment.money.163.com/reply/check.jsp?time=1367240961474&callback=' }, { name: '天涯论坛1', link: 'http://passport.tianya.cn/online/checkuseronline.jsp?callback=' }, { name: '当当网', link: 'http://message.dangdang.com/api/msg_detail.php?customer_id=o4P00TweebicwjhS72NWew%3D%3D&data_type=jsonp&pageindex=1&module=1&pagesize=10&_=1416721945308&callback='
防御方式
- 限制来源refer
- 按照JSON格式标准输出(设置Content-Type : application/json; charset=utf-8),预防http://127.0.0.1/getUsers.php…形式的xss
- 过滤callback函数名以及JSON数据输出,预防xss
- 严格过滤 callback 函数名及 JSON 里数据的输出。
特别注意
复现问题请选择Chrome 80以下的版本,80以后的版本默认启用samesite,cookie只能同域名或站点访问
https://www.cfanz.cn/resource…
参考资料
https://wenku.baidu.com/view/…
http://drops.xmd5.com/static/…
https://blog.knownsec.com/201…
[温馨提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。]
[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]