• url编码


    介绍

    url编码是一种将普通文本编码再编码的方案。用于保证url数据安全传输。

    url编码可以针对所有字符进行编码。

    url编码作用

    http://www.cc.com/login?name=abc
    

    1、敏感字符编码

    敏感字符,是指ascii编码中可能对url结构进行影响的字符,比如#

    如果想表示敏感字符作为普通文本字符,比如#作为请求参数的值,可以通过对敏感字符进行URL编码,服务器接收后将视其为普通文本字符而非url结构字符。

    2、控制字符

    无法直接输入的字符,Ascii之内的控制字符,即0-31和127。

    3、多字节字符编码

    多字节字符的某个字节可能是单字节的敏感字符或控制字符,服务器可能将其误解析,因此要求对所有多字节进行URL编码。

    编码方案

    1、普通文本编码方案

    一般而言,是使用utf-8对普通文本编码,这样可以兼容几乎所有字符。

    (至少测试过程中,最新版的Edge和firefox、chorm浏览器是如此)

    2、编码

    先将字符用UTF-8编码进行表示,URL编码是对每个字节前加%字符前缀。

    比如:

    abc123      %61%62%63%31%32%33
    宇宙        %E5%AE%87%E5%AE%99
    

    url编码使用

    当地址栏直接输入url,或者页面内发起url请求,浏览器将对path和query部分能够识别的属于自动编码范围的字符进行自动URL编码,再进行请求。

    1、浏览器无法自动识别对是url结构的字符,还是普通文本,对于这一部分字符如果要作为普通文本字符,必须手动设置url编码。

    • 比如路径部分的/#?=&
    • 比如参数部分的&=#
    • Ascii之内的控制字符,即0-31和127

    2、浏览器对ascii内完全不会引起安全问题的字符,不进行自动编码,也不要求编码。当然,手动编码也是可以正常请求的。

    • Ascii之内的数字和字母,数字48-57,大写字母65-90,小写字母97-122不会进行编码。

    3、浏览器自动编码的范围包括:ascii之外的所有字符,ascii之内的部分字符

    4、常见的几种浏览器Edge、firefox、chorm对自动编码前后的地址栏显示可能有所差异,但是请求中所进行的编码没有差异,自动编码范围相同。(IE对path和query编码有所差别,但近乎淘汰,暂时不考虑讨论)

    url编码与空格

    url中不能直接包含空格,否则服务器会报请求结构错误。

    浏览器会将空格编码成%20或者字符+

    而真正的字符+如果想要表示,则需要使用url编码%2b

    url编码与表单

    当表单元素form的enctype为默认值,或者显式设置为application/x-www-form-urlencoded时,请求头部字段为:

    Content-Type: application/x-www-form-urlencoded
    

    此时表单提交数据也会进行url编码,服务器接收后会根据该请求头部字段判断进行url解码。

    url编码与解码工具

    (1)http://www.jsons.cn/urlencode/

    该网址是一个在线url编码与解码工具,其可以对几乎所有文本字符进行URL编码和解码。

    使用方便,但是不会对字母和数字等简单ascii字符进行URL编码。

    (2)burp的Decoder模块选择Encode或Decode方案为URL

    可以对字母和数字等简单ascii字符进行URL编码,但是无法对多字节进行URL编码,编码多字节是错误的结果。同样也无法针对多字节字符的编码结果进行解码。

    一般将这两个工具结合使用。

    url编码与xss

    将字符进行URL编码,可以使得用户无法直观查看url,但又不影响请求。

  • 相关阅读:
    安卓四核PDA手持PDA智能POS机 打印二维码 分享
    安卓智能POS开单神器-成为零售批发商亲睐的生意帮手-pda销售扫描开单 现场结算打印凭据
    一个神奇的POS -扫描 现场销售 开单打印票据 安卓物联网POS机 手持开单终端机 省时省力 高效准确!!
    浩瀚土石方车辆管理计数器_刷卡计数器手持式土石方车辆计数器系统方案
    浩瀚ocr数字识别扫描枪 进口冻货抄码器 抄码器 牛羊肉 抄码器 抄码抄码枪 扫码器重量累加
    浩瀚抄码器 冻品扫码枪 扫码机识别数字 进口肉抄码器 牛羊抄码器 冻品抄码
    浩瀚牛肉扫码器 牛羊肉抄码 进口牛肉扫码枪 进口牛羊肉扫码机 抄码系统
    多进程
    不定长参数和进程
    面向对象进阶2
  • 原文地址:https://www.cnblogs.com/heibaimao123/p/16245468.html
Copyright © 2020-2023  润新知