web编码机制

1. url编码  url字符只能是0x20--0x73之间的字符,但是有的字符对http协议或者url机制有特殊的意义,所以需要编码,这些特殊字符时:

    %   %25

    =    %3d

    空格 %20

    新行 %0a

    空字节 %00

   &        %26

    ?       %3f

    ;       %3b

    #     %23

    另外需要注意的一个字符时+,它表示空格


2. unicode编码

    unicode编码以%u开头,后面跟该字符的16进制码点,如:

     %u2215代表/

    utf-8编码多字节字符以%为前缀,后面以16进制表示每个字节,如:

    %c2%a9代表  ©

  unicode编码主要用来绕过输入确认机制,当后台组件能够识别unicode编码的时候,通过各种标准与畸形的unicode编码,绕过过滤,达到攻击的目的


3.html编码

  html页面中有些字符时元字符,例如“<”等,但是html的页面内容中,有可能存在"<"字符,因此这些字符需要编码,典型的几个如下:

  "    &quot

    '            &apos

    &          &amp

    <          &lt

    >           &gt


    此外,任何字符都可以使用它的十进制ascii码进行编码,如:

    &#34代表"

    此外,任何字符都可以使用它的十六进制ascii码进行编码,如:

    &#2c代表"

    html编码主要用于探查xss漏洞,如果应用程序返回的输入字符未被正确编码,那很可能存在xss漏洞


4. base64编码

    base64编码是将字符串划分成各个3字节的块(24bit),然后每块划分成4部分(6bit, 64中组合),base64编码使用可打印的字符表示:

    ABCDEFGHIGKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

    如果字符串的最后部分不够3个字节,则用字符"="补齐,这个特点也可以作为识别base64编码的一条重要特征

    例如,abcd的base64编码是:YWJjZA==




    

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值