二次urldecode注入

Posted cimuhuashuimu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二次urldecode注入相关的知识,希望对你有一定的参考价值。

原理
大多数web程序都会对输入字符进行转换,例如addslashes(),mysql_real_escape_string(),
mysql_escape_string(),也就是对单引号‘,双引号",NULL,反斜杠\进行转义,但是如果程序中存在
urldecode()或者rawurldecode()的话就会出现问题。
当用户传入值时,程序会自动对字符进行一次urldecode,如果程序又进行一次urldecode(),就会出现二次注入,例如?id=1%2527,第一次自动解码为?id=1%27,再进行一次urldecode()变成?id=1‘
成功绕过

漏洞挖掘关键字
rawurldecode()
urldecode()

以上是关于二次urldecode注入的主要内容,如果未能解决你的问题,请参考以下文章

那些年我们一起挖掘SQL注入 - 2.全局防护Bypass之UrlDecode

urldecoder.decode怎么调用

golang如何实现urldecode

URLDecoder异常解决方法

urldecoder.decode怎么没有解码

php中urldecode()和urlencode()起啥作用啊