渗透测试学习 二十八、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文件 是用户密码的 ...
随机推荐
- 从0系统学Android--2.6 Activity 的最佳实践
从0系统学Android--2.6 Activity 的最佳实践 本系列文章目录:更多精品文章分类 本系列持续更新中.... 实践中的技巧 2.6.1 知晓当前是在哪个 Activity 这个其实很简 ...
- Recover With Until Time fails With RMAN-20207 When Time Is Before Last RESETLOGS (Doc ID 159405.1)
Recover With Until Time fails With RMAN-20207 When Time Is Before Last RESETLOGS (Doc ID 159405.1) A ...
- [Linux] 低版本centos升级git解决fatal: HTTP request failed
编译用的一些依赖yum install curl-devel expat-devel gettext-devel openssl-devel zlib-develyum install gcc per ...
- C Primer Plus 第六版—— 6.16 编程练习题(附代码)
1.编写一个程序,创建一个包含26个元素的数组,并在其中存储26个小写字母.然后打印数组的所有内容. #include <stdio.h> int main(void) { int num ...
- LINUX中查看、添加、删除PATH以及永久添加PATH
1.查看PATH变量 echo $PATH 会出现: 路径1:路径2:路径3 2.添加PATH变量 export PATH=$PATH:新添加的路径 用此方法添加的PATH,在关闭或者重启LINUX后 ...
- 2-3 远程管理命令-SSH工作方式简介
03.远程登录和复制文件 序号 命令 对应英文 作用 01 ssh 用户名@ip secure shell 关机/重启 02 scp 用户名@ip:用户名或路径 用户名@ip:文件名或路径 secur ...
- python接口自动化根据请求接口类型进行封装
根据不同的请求类型(GET/POST)进行接口请求封装 import requests import json class RunMain: def __init__(self, url, metho ...
- React 中this.setStat是批量执行的, 它发现做三次是多余的,所以只执行一次
16==> this.setStat是批量执行的 它发现做三次是多余的,所以只执行一次 import React, { Component } from "react"; e ...
- Educational Codeforces Round 76 (Rated for Div. 2)
传送门 A. Two Rival Students 签到. Code /* * Author: heyuhhh * Created Time: 2019/11/13 22:37:26 */ #incl ...
- 图书分享 -《Natural Language Processing with Python》
-<Natural Language Processing with Python> 链接:https://pan.baidu.com/s/1_oalRiUEw6bXbm2dy5q_0Q ...