xss学习记录一

0x00 xss常用到的编码:

1. html 实体编码(10进制和十六进制):
  例如[<]编码为:html 十进制:&#60; html 十六进制:&#x3c;
  
2. javascript 八进制和十六进制:
  例如 [<]编码为: javascript 八进制:\74  javascript 十六进制:\x3c
  
3.url编码和base64编码:
   例如[<]编码为:url编码: %3c  base64: PA==
   
4.jsunicode 编码:
   例如[<]编码为:jsunicode:\u003c

0x01 各类编码在xss使用场合:

1.html实体编码:浏览器会在html标签里解析html实体编码。($colon;=>(冒号) &NewLine;=>(换行)

2.javascript 编码:javascript 中识别的编码有:Jsunicode  js八进制  js十进制 当标签的属性引用了javascript伪协议,就可以执行代码  
例如<a href="javascript:;"></a> 可以在href跳转时执行js代码。当我们输入的值存入了某一个变量,且出现在一个能把字符串当作js代码执行的函数里面。eval()   setlnterval()  setTimeout()

3.base64 编码:如果有可控点,但过滤了' '' < > javascript 等,可以尝试base64
例如:<a                 href="data:text/html;base64,payload(base64编码过的)">test</a>

0x02总结:

之前一直搞不懂大佬们写的payload,为啥可以这样插可以,换一个就不可以,就是对于编码和浏览器的解析不了解,小白的我可以说是稀里糊涂的,所以做不到灵活应用,还是要把原理的东西搞懂,才能活用呀,加油学习哦!

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值