Background

在多个师傅的面经中提到了jsonp跨域 所以简单做个实验理解下

说在前面的前置知识点

同源策略就不多说了
跨域的几个方法还是简单提一下
去掉已经老掉牙不能用的东西 现在主要黑客们在用的
cors/jsonp/window.name+iframe这种

实验演示

<?php
header('Content-type: application/json');
$jsoncallback = htmlspecialchars($_REQUEST ['jsoncallback']);//获取回调函数名
//json数据
//$json_data = '["id","user"]';
$json_data='({"id":"1","name":"Aaron"})';
echo $jsoncallback . "(" . $json_data . ")";//输出jsonp格式的数据
?>

9BCD8998-9F72-449A-BF75-23D9402CB882.png
然后攻击者写一个恶意页面
52CA2ADD-9F92-4BDF-85FE-5D3047A7EBA4.png

1A706697-AFB1-4A54-97F3-16268B258F7F.png
可以看到成功劫持

实验脑图

50CD2399-EC81-4D2B-8758-967911B06475.png