URL编码
可以使用 burp 转换 (decoder模块)
URL只允许使用US-ASCII字符集中的可打印字符,因此如果许哟啊通过HTTP传输非URL中运行出现的字符需要进行URL编码
URL编码格式:
任何URL编码多是以%为前缀 其后是这个字符的两位16进制的ASCII码
常见的URL编码字符:
%25 代表 %
%00 代表 空字节
%20 代表 空格 注意 + 也可以在表示空格
可以使用 burpsuit 进行url编码
注意:在进行web安全测试过程中 如果需要讲一下字符当作数据插入到HTTP请求中 务必使用URL编码
空格, % , & , = , ; , +, #
如果需要提交多个变量那么使用&的原始形式即可
16位Unicode转换:如果在http中传输 需要设置以 %u 开头 然后对应ascii码的16进制
不足补0,如果服务器开启了脚本过滤 但是支持unicode 编码
我们就可以直接使用Unicode 编码上传HTTP请求
例如:< 对应16进制 3c 转换位16进制为Unicode 格式编码为 %u003c -----> Xss等安全漏洞
绕过脚本过滤
base64 (SMTP协议传输数据,HTTP验证机制对用户证书进行编码,http认证破解,Cookie与其他参数中传输二进制数据)
编码方式 可以使用 burp 转换 (decoder模块)
内容:大小写字母,数字0到9 最后是 +/
base64识别方式 如果在字符串后面出现了 = 号,可以轻易辨认(当不足base64编码的要求是可以追加 =号)
例如: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijkomnopqrstuvwxyz1234567890+/
HTMl编码
一种用于表示问题字符并以其安全并入HTML文档 某些字符具有文档含义 如果用户输入的内容
中不具有文档含义内容进行 过滤 就会修改HTML文档结构
例如:$lt 代表 <
Xss跨站防御 -> HTML编码用于安全维护