Pikachu-xss防范措施 - href输出 & js输出

总体原则: 输入做过滤,输出做转义

过滤:根据业务需要进行过滤,如:输入点要求输入手机号,则只允许输入手机号格式的数字;

转义:所有输出到前端的数据,都根据输出点进行转义,比如输出到html中进行html实体转义,输入到 JS 里面的进行 JS 转义。

href输出

从页面代码上看出,这是个href 标签,并且做了href特殊字符转换

构造payload ,

复制代码
javascript:alert(1)

要想防止href 标签的xss : 一、可以做输入限定,只允许http 、https 的头的输入;二、结合输入限定后再做特殊字符转义。

JS 输出

查看后端代码

核心点是:$ms == 'tmac'

所以要构造payload, 先闭合引号 用 X' 闭合 script 用 </script> , 单独一组script包着alert,再来一个script对应结尾的 /script 所以整个报文就是:

复制代码
X'</script><script>alert(1)</script><script>

得到攻击结果

相关推荐
张元清13 分钟前
React 19 Hooks:新特性及高效使用指南
前端·javascript·面试
敏捷建模16 分钟前
Zig语言能够编写同时针对PC端和手机端自适应的软件吗
前端
Hello_Embed23 分钟前
LVGL 入门(四):大小坐标与盒子模型
前端·笔记·stm32·单片机·嵌入式
༄天M宇ༀ31 分钟前
E10: e-builder 低代码构建平台接口管理(E9建模版)
java·前端·spring·servlet·reactjs
窝子面1 小时前
解决vite构建的项目中使用path报错
前端
kana_yonk1 小时前
如何设置前端vue程序开机自启(Windows)
前端·vue.js·windows
清空mega1 小时前
《Vue3 中 computed、watch、watchEffect 怎么用?响应式核心能力详解》
前端·javascript·vue.js
ego.iblacat1 小时前
在 LNMP 平台中部署 Web 应用
android·前端·adb
weixin199701080161 小时前
南网商城商品详情页前端性能优化实战
java·前端·性能优化