Web渗透-WAF绕过技巧

news2024/9/21 12:28:48

一、WAF简介

Web应用防护系统(也称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称: WAF)。利用国际上公认的一种说法:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。

二、WAF分类

  1. 四类:
  • 云WAF
    • 腾讯云
    • 百度云
    • 阿里云盾
    • 奇安信网站卫士
  • 软件WAF
    • d盾:http://www.d99net.net/
    • 云锁:https://yunsuo.qianxin.com/
    • 网防:http://www.weishi110.cn/static/index.html
    • 安全狗:https://www.safedog.cn/
    • 护卫神:https://www.hws.com/
    • 智创:https://www.zcnt.com/
    • 悬镜:https://www.xmirror.cn/
    • upupw:https://www.upupw.net/
    • wts-waf:https://www.west.cn/
    • 安骑士:https://help.aliyun.com/product/28449.html
    • dotdefender:http://www.applicure.com/products/
  • 硬件WAF
    • 绿盟: https://www.nsfocus.com.cn/
    • 安恒:https://www.dbappsecurity.com.cn/
    • 依(yi)迅:https://www.yxlink.com/
    • f5 big-ip:https://www.f5.com/
    • 天融信
    • 深信服
    • 启明星辰
    • 知道创宇
  • 网站内置WAF
    • 在搭建网站的时候,自己编写过滤规则。

三、WAF常见的检测机制

  1. 异常检测协议
    • 拒绝不符合HTTP标准的请求
  2. 增强输入验证
    • 对恶意字符进行拦截
  3. 及时补丁
    • 及时修复新型Bug
  4. 机油壶规则的保护和基于异常的保护
    • 基于规则的保护提供各种web应用的安全规则
  5. 状态管理
    • 判断用户是否是第一次访问,将请求重定向到默认登录页并且记录事件,或对暴力破解行为进行拦截
  6. 其他防护技术
    • 隐藏表单域保护,抗入侵规避技术,响应监视和信息泄露保护
  7. 配置规则
    • 自定义防护规则

四、WAF的识别

网站常见WAF拦截页面:https://blog.csdn.net/qq_51577576/article/details/128165335
nmap:nmap -p 80 --script http-waf-fingerprint www.varin.cn

五、Bypass 技巧-服务器特性

image.png
image.png
image.png

六、Bypass 技巧-应用层特性

image.png
image.png

七、Bypass 技巧-WAF层特性

image.png
image.png
image.png
image.png
image.png

八、Bypass 技巧-数据库特性

简介

可以利用数据库特性来进行WAF绕过,如:

# 内联注释:
/*!12345 union*/ select   # 当MySQL数据库版本号大于1.23.45时,执行
# Mysql黑魔法:
select {x user} from {x mysql.user}
# 换行符绕过:
%23%0a  、  %2d%2d%0a

MySQL注释
# 三种  #  --   /**/
#  /!**/ 表示不注释

use `security`;
select * from users where  id =1 # test
;

select * from users where id = 1 -- test
;
select * from users where  /*test*/id = 1



image.png

常用插入位置
select * from users where id=1  位置1 union 位置2 select 位置3 1,2,位置4 from 位置5 abc

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1948240.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

叮!2024 龙蜥操作系统大会议题征集正式启动

定啦!2024 龙蜥操作系统大会(OpenAnolis Conference,以下简称“龙蜥大会”)将于 2024 年 8 月 30 日在北京中关村国家自主创新示范区会议中心盛大召开。 2024 龙蜥大会由中关村科学城管委会、海淀区委网信办、中国开源软件推进联…

配置sublime的中的C++编译器(.sublime-build),实现C++20

GCC 4.8: 支持 C11 (部分) GCC 4.9: 支持 C11 和 C14 (部分) GCC 5: 完全支持 C14 GCC 6: 支持 C14 和 C17 (部分) GCC 7: 支持 C17 (大部分) GCC 8: 完全支持 C17,部分支持 C20 GCC 9: 支持更多的 C20 特性 GCC 10: 支持大部分 C20 特性 GCC 11: 更全面地支持 C20 …

uniapp开发精选短视频视频小程序实战笔记20240725,实现顶部轮播图和热门短剧

创建项目 创建项目,叫video_app。 在pages.json里面修改一下标题: 新建search搜索页面和me我的页面。 此时界面预览效果如下: 引入静态资源 主要是static里面的内容,全部复制过来。 配置底部导航栏 pages.json,放到顶层,和全部样式同级: "tabBar&quo…

Java的类加载机制

Java的类加载机制是指将类的字节码文件(.class文件)加载到JVM中并将其转换为Class对象的过程。这个过程由类加载器(ClassLoader)完成。Java的类加载机制具有动态性和灵活性,使得Java能够支持动态加载类、实现模块化开发…

4s店客户管理系统小程序的设计

管理员账户功能包括:系统首页,个人中心,用户管理,门店管理,车展管理,汽车品牌管理,新闻头条管理,预约试驾管理,我的收藏管理,系统管理 微信端账号功能包括&a…

HTTP请求入参类型解读

HTTP请求入参类型解读 Content-Type 在HTTP请求中,Content-Type请求头用于指示资源的MIME类型,即请求体的媒体类型。它告诉服务器实际发送的数据类型是什么,以便服务器能够正确地解析和处理这些数据。Content-Type可以有多种值,…

13.2 MongoDB

13.2 MongoDB 1. 概述2. docker安装3. SpringBoot整合MongoDB3.1 依赖3.2 配置连接1. 基于`yml`配置2. 基于配置类配置3.3 启动项坑1坑23.4 新增业务1. 实体类映射2. 数据层3. 业务层4. 控制层5. 测试结果3.5 单条记录查询业务1. 数据层2. 业务层3. 控制层4. 断点测试3.6 分页查…

代码随想录算法训练营day6 | 242.有效的字母异位词、349. 两个数组的交集、202. 快乐数、1.两数之和

文章目录 哈希表键值 哈希函数哈希冲突拉链法线性探测法 常见的三种哈希结构集合映射C实现std::unordered_setstd::map 小结242.有效的字母异位词思路复习 349. 两个数组的交集使用数组实现哈希表的情况思路使用set实现哈希表的情况 202. 快乐数思路 1.两数之和思路 总结 今天是…

FoundationDB 基本使用

目录 一、FoundationDB介绍 二、安装单机版FoundationDB 2.1 下载安装程序 2.2 安装FoundationDB 2.3 修改配置信息 2.4 管理FoundationDB服务 三、fdbcli的常用命令 3.1连接数据库 3.2退出fdbcli 3.3查看版本 3.4 写模式 3.5写入键值 3.6读取键值 3.7删除键值 …

花几千上万学习Java,真没必要!(二十七)

1、Math类: package mathtest.com; public class MathDemo { public static void main(String[] args) { // 定义圆的半径 double radius 5.0; // 计算并打印圆的周长 double circumference 2 * Math.PI * radius; System.out.printf("圆的周长: %.2f…

Vue 状态管理 Vue CLI

Vue 状态管理 & Vue CLI 1、状态管理2、集中状态管理2.1 Vuex2.1.1 Vuex核心概念2.1.2 Vuex Store实例2.1.3 Vuex Getter2.1.4 Vuex Mutation2.1.4 Vuex Actions2.1.4 Vuex Module 2.2 Pinia2.2.1功能增强 3、Vuex 实现原理4、Pinia 实现原理5、CLI5.1 实现 1、状态管理 将…

【机器学习】激活函数:神经网络的灵魂

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 激活函数:神经网络的灵魂什么是激活函数?常见激活函数类型1. Sigmo…

Linux环境安装KubeSphere容器云平台并实现远程访问Web UI 界面

文章目录 前言1. 部署KubeSphere2. 本地测试访问3. Linux 安装Cpolar4. 配置KubeSphere公网访问地址5. 公网远程访问KubeSphere6. 固定KubeSphere公网地址 前言 本文主要介绍如何在Linux CentOS搭建KubeSphere并结合Cpolar内网穿透工具,实现远程访问,根…

UE4调试UE4Editor-Cmd.exe

在工作中,我们看到这样的构建命令: %EnginePath%\Binaries\Win64\UE4Editor-Cmd.exe %ClientPath%\%ProjectName%.uproject -runHotPatcher {其它参数} 我们应该如何调试UE4Editor-Cmd.exe呢?其实调试 UE4Editor.exe 就可以了(参考…

Mac安装Hoomebrew与升级Python版本

参考 mac 安装HomeBrew(100%成功)_mac安装homebrew-CSDN博客 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 安装了Python 3.x版本,你可以使用以下命令来设置默认的Python版本: # 首先找到新安…

IDEA安装并使用通义灵码

IDEA安装并使用通义灵码 通义灵码介绍安装通义灵码 通义灵码介绍 在数字革命的前沿,阿里云技术团队匠心独运,倾力打造“通义灵码”——一个融合尖端科技的智能编码助手,旨在革新软件工程的未来。 实时代码扩展 通义灵码具备深度理解代码脉络的…

opencascade AIS_Line源码学习

前言 AIS_Line 是 OpenCASCADE 库中的一个类,用于表示和操作三维直线。它可以通过几何线(Geom_Line)或者两个几何点(Geom_Point)来初始化。 方法 1 //! 初始化直线 aLine。 Standard_EXPORT AIS_Line(const Handl…

8.0.32 mysql 配置主从数据库

配置前提: 两台服务器都需要安装同一版本的mysql数据库 我的版本是8.0.32 数据库参数修改 主数据库my.cnf(linux)或my.ini(win)配置: 这里需要注意:server-id必须唯一主从两个库必须要不一样 log_binmysql-bin server-id24 gtid-modeON …

yolov8训练自己的实例分割数据集

参考: 1、官方教程:https://docs.ultralytics.com/zh/tasks/segment/ 2、YOLOv8制作自己的实例分割数据集保姆级教程(包含json转txt) 下载最新yolov8代码 git clone https://github.com/ultralytics/ultralytics.git一、制作自…

vue学习day12-声明式导航续、路由重定向、Vue路由-404、Vue路由-模式设置、编程式导航

34、声明式导航续 (4)跳转传参 1)跳转传参 ①语法: 传递:to“/path?参数名值” 接收:如果在模版里,通过$route.query.参数名获取,如果在js代码里,通过this. $route…