声明:请于合法授权环境下进行使用,请勿用于非法操作!
0x01 漏洞简介
跨站脚本攻击(XSS)是指Web程序代码中对⽤户提交的参数未做过滤或过滤不严,导致参数中的特殊字符破坏了HTML页⾯的原有逻辑,攻击者可以利⽤该漏洞执⾏恶意HTML/JS代码、构造蠕⾍、篡改页⾯实施钓鱼攻击、以及诱导⽤户再次登录,然后获取其登录凭证等。跨站脚本攻击分为反射型、存储型、Dom型。此次记录的是反射型跨站脚本。
0x02 发现过程
1.发现测试站点上传xls后,表格中内容会显示在web前端页面
2.因此尝试一波,将xss payload写入到xls表格当中,然后上传,直接成功弹框!
0x03 总结
1.xss不能只关注web前端页面输入框
2.文件上传点也可以尝试XSS,例如xls或PDF文件(PDF XSS可参考0x05)
0x04 防御措施
1.对特殊字符,例如<>,‘’,//等进行过滤;
2.对敏感字符进行过滤,例如alert,onerror等;
3.对输出内容进行转义,实体编码等。
0x05 XSS Payload注入到PDF文件
方法一:迅捷PDF编辑器
1.新建文档
2.右击页面-打开属性-打开动作
3.新增-运行JavaScript
4.添加app.alert(1);命令
5.确定后保存为PDF文件
6.用浏览器打开PDF文件后,成功弹框!
注意:部分浏览器无法弹框