双倍URL编码是怎么来的?
这篇文章http://www.mianwww.com/html/2010/01/6982.html 中提到了“双倍URL编码”,这个编码是怎么来的呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
这篇文章http://www.mianwww.com/html/2010/01/6982.html 中提到了“双倍URL编码”,这个编码是怎么来的呢?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
这回真的有邀请。在外,手机回下。
就是说想打/,一般编码一次是%5c。
但攻击者怕这个会被认出来,所以用二次编码,把%本身编码成%25。再和后边拼成%255c。
如果URL解码器有缺陷,只不断重复“从前边开始解析”这个步骤,就会把这个先变回%5c,再变成/,出现循环解析。当然这是错误的。正确的只应该解一步变成%5c。
抵抗父级目录回溯攻击,绝对不能依赖字符过滤,你过滤不完的。必须用“鸭子编程法”,先不论如何构造完整路径,再检验是否在有权的操作目录下。
要正确进行URL解码,谨记使用PHP等语言提供的内部函数,切勿重复发明轮子。