xss挖掘思路分享_XSS学习(三)挖掘思路

HTML标签之间

[输出点]

payload:

HTML标签之内

payload:

1." onm ouseover=alert(1) (闭合属性)

2." > (闭合属性与标签)

当script标签没有被过滤的时候可以使用payload2,当script标签被过滤的时候可以使用payload1

假设有如下情况:

这个时候

无法使用闭合属性的payload,因为hidden标签会先被浏览器识别

当hidden标签在输出点之后时

可以使用闭合属性的标签1 " onm ouseover=alert(1) type="text

这样不仅把payload写入了页面,同时提前将type类型定义为text,这样后面的hidden就失效了

****

输出在src/href/action等属性内

click me

payload:

javascript:alert(1) //伪协议浏览器都会支持

或者

data:text/html;base64;PHNjcmlwdD5hbGVydCgxKTwvc2NyaXB0Pg==

(现版本的ie,chrome,firefox均不支持)

**输出在on*事件内**

on*时间是可以执行javascript脚本的,根据场景弄清楚不同的闭合策略即可

payload:

";alert(1)

HTML与Javascript编码

例:

A:

B:

A与B两个例子,谁会执行alert(1)?

javascript出现在html标签中,javascript可以进行html编码

1.进制编码:H; D;

2.HTML实体编码

在javascript执行前,浏览器会进行html转码,所以在A例中,当浏览器执行过一次htmlencode之后,会执行script脚本,但是此时尖括号已经被转成了html的实体编码,所以A不会执行alert(1)

当输入内容出现在javascript中的时候,需要遵循javascript编码规则

1.unicode:\uH

2.普通十六进制:\xH

3.转义:在特殊字符前加\转义(\' \" \<)

javascript在执行前会自动解码

****

具备htmlencode功能的标签

浏览器解码顺序

HTML解码 -> URL解码 -> js(unicode)解码

标签:XSS,标签,javascript,html,alert,HTML,挖掘,思路,payload

来源: https://www.cnblogs.com/FStac/p/10690732.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值