SQL注入中的WAF绕过技术
SQL 注入中的 WAF 绕过技术 在 SQL 注入攻击中, Web 应用防火墙(WAF)是一个非常重要的安全防护机制。然而,攻击者可以使用各种技术来绕过 WAF 检测,从而达到攻击目的。本文将详细介绍 SQL 注入中的 WAF 绕过技术。 1. 大小写绕过 大写绕过是最常见的一种绕过技术。当 WAF 检测到关键字时,我们可以使用大小写来绕过。例如,如果 WAF 检测到 union,那么我们可以使用 Union UnIoN 等来绕过。 2. 简单编码绕过 简单编码绕过是将关键字用十六进制编码来代替。例如,如果 WAF 检测到 union,那么我们可以使用 %55(十六进制编码的 U)来代替 U,union 写成 %55nION。 3. 注释绕过 注释绕过是将敏感词放到注释里面,使得 WAF 无法检测到。例如,如果 WAF 检测到 union 和 select,那么我们可以在之前写一个注释语句,让 WAF 检测不到,从而绕过检测。 4. 分隔重写绕过 分隔重写绕过是将敏感词分隔开,使得 WAF 无法检测到。例如,我们可以使用 un//ion+sel//ect 来绕过 WAF 检测。 5. Http 参数污染(HPP) Http 参数污染是将多个参数传递给服务器,从而绕过 WAF 检测。例如,我们可以使用&id=1 union select 1,2,3+from+users+where+id=1--来绕过 WAF 检测。 6. 使用逻辑运算符 or /and 绕过 使用逻辑运算符 or /and 可以绕过 WAF 检测。例如,我们可以使用?id=1+OR+0x50=0x50 或者 ?id=1+and+ascii(lower(mid((select+pwd+from+users+limit+1,1),1,1)))=74 来绕过 WAF 检测。 7. 比较操作符替换 比较操作符替换是使用!=、<>、<、> 等操作符来替换=符号,从而绕过 WAF 检测。例如,如果 WAF 检测到=,那么我们可以使用<>来替换,从而绕过检测。 8. 同功能函数替换 同功能函数替换是使用不同的函数来达到相同的目的,从而绕过 WAF 检测。例如,我们可以使用 substr 函数来替换 mid 函数,从而绕过 WAF 检测。 SQL 注入中的 WAF 绕过技术有很多种,每种技术都有其特点和优缺点。攻击者可以根据实际情况选择合适的技术来绕过 WAF 检测。同时,防御方也可以根据这些技术来加强 WAF 的检测能力,提高安全性。