跟Waf斗智斗勇的一天
差点心态爆炸 幸亏整出来了...

最近快放寒假了..临近高考不到最后一星期绝对不学习..
挖下SRC 这家自带的waf头疼死我了 想几次Fuzz全都撞壁了
然后发现了这家waf的规则
信息搜集不说了 起手 一堆子域名
由于我是用的叼毛表哥自改的fofa脚本 是excel的 我习惯一个一个从下开始测得

我先知道这个waf 是因为再整其他资产的时候 就有这个Waf 而且他其他资产很多还是去跳到主站完成功能
开始测试
打开第一个

一个体验平台 找到反馈意见 要是在这整出来一个XSS 到后台 不就是存储了??
不知道 反正我现在是这样想的 但是现实估计会给我一个self 丢噢
常规来一发

毫无疑问 没有触发waf 但是过滤了

我在这里尝试了多写 虽然成功绕过了
img但是<>没有绕过
然后有一个上传图片的功能 点击提交的时候 一处imageurl使我眼前一亮

肯定SSRF 尝试一下 但是我又想多了

毫无疑问 肯定做了校验
然后我就去@ . xip.io 各种常见绕过手法 都回显问题录入成功,毫无疑问 肯定没有请求 然后我就去查看一下自己提交的吧
F12 看了一下 好家伙 XSS有点希望

这居然把我传进去的 正常带入进去了
毫无疑问img标签 我肯定首先尝试onerror
imgUrlA=http://url/x.jpg" onerror=alert(1)><!--

嗯 看见这熟悉的403
突然想起来他有waf了 我丢
唉 我当时心灰意冷啊 把各位表哥教我的XSS姿势都去尝试了一下 虽然成功绕过了alert的检测 但是也只是绕过了单alert 后面跟()还是会拦截
求助下 叼毛表哥

无果
去搜下bypass XSS的文章 基本都是 编码绕过 但是我这个是卡在image标签内的
慢慢再测测把...
参数污染.. 接着测试
POST /path HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 333
Connection: close
Cookie:
customerId=7342726673&customerIdentity=1&utm=001&phoneNumber=15666571211&problemSource=0005&problemDescribe=%25E6%25B5%258B%25E8%25AF%2595&imgUrlA=http://url/1.html&imgUrlA=http://url/221.jpg" onclick=alert(1)><!--&imgUrlB=&imgUrlC=&browserVersion=5.0+(Windows)&deviceOS=Firefox+84.0

熟悉的403 页面 Waf出现 我丢噢
这是 准备放弃了 但是脑子里又走了一遍知道的Bypass Waf的手法
change request method
不行
山重水复疑无路,柳暗花明又一村
突然 我想起来了 前段时间 鸡哥带我Bypass一个Waf用的畸形解析
当然 这里没用到畸形解析 这东西哈哈
修改主体编码 嗯 我TM真的要哭了 过了(因为再过会就要睡觉了 明儿又是迟到要被老师骂的一天)

赶快去查看
没有弹窗.. 难道那里操作有问题 F12看下

我擦 变成了
a标签 应该是注释的缘故 导致后面的代码没有正常使用 我们删除注释标签试一下

成功弹窗
这时 我又想到a标签 居然变成了a标签 ok onclick走起
------WebKitFormBoundaryfLGQtrgI
Content-Disposition: form-data; name="imgUrlA"
http://xxx.target.com/ueip/ueip-img/1.jpg" onclick=alert(/Muxue/)>here</a><!--

成功出洞 唉
后续又出了几个XSS 这个手法是通杀他这个waf的
2021.1.25 修改未打码的地方 淦
跟Waf斗智斗勇的一天的更多相关文章
- 对抗假人 —— 前后端结合的 WAF
前言 之前介绍了一些前后端结合的中间人攻击方案.由于 Web 程序的特殊性,前端脚本的参与能大幅弥补后端的不足,从而达到传统难以实现的效果. 攻防本为一体,既然能用于攻击,类似的思路同样也可用于防御. ...
- 深入理解SQL注入绕过WAF和过滤机制
知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 ...
- 业务安全通用解决方案——WAF数据风控
业务安全通用解决方案——WAF数据风控 作者:南浔@阿里云安全 “你们安全不要阻碍业务发展”.“这个安全策略降低用户体验,影响转化率”——这是甲方企业安全部门经常听到合作团队抱怨.但安全从业者加入公司 ...
- Imperva WAF使用笔记
添加IP白名单 在对自己公司网站进行安全测试时会被WAF拦截,如果把WAF彻底停掉就无法拦截到外部的攻击了. 此时可以添加IP地址白名单,白名单内的IP对网站发起扫描时不会做拦截.
- HCTF时PHP WAF然有RLFI漏洞
tips:from菜鸡队长 这次去打HCTF决赛,用了这个自己写的WAF,web基本上没被打,被打的漏洞是文件包含漏洞,这个功能在本人这个waf里确实很是捉急,由于只是简单检测了..和php[35]{ ...
- WAF攻防研究之四个层次Bypass WAF
从架构.资源.协议和规则4个层次研究绕过WAF的技术,助于全方位提升WAF防御能力. 绕过WAF的相关技术研究是WAF攻防研究非常重要的一部分,也是最有趣的部分,所以我在写WAF攻防时先写攻击部分.还 ...
- nginx安装waf防护
一.安装nginx 二.安装luajit2.0 三.安装ngx_devel_kit#wget https://github.com/simpl/ngx_devel_kit/archive/v0.2.1 ...
- Bypass WAF Cookbook
PS.之前一直想把零零碎碎的知识整理下来,作为知识沉淀下来,正好借着wooyun峰会的机会将之前的流程又梳理了一遍,于是就有了下文.也希望整理的内容能给甲方工作者或则白帽子带来一些收获. 0x00 概 ...
- 从偶然的机会发现一个mysql特性到wooyun waf绕过题
从偶然的机会发现一个mysql特性到wooyun waf绕过题 MayIKissYou | 2015-06-19 12:00 最近在测试的时候,偶然的机会发现了一个mysql的特性, 为啥是偶然的机会 ...
随机推荐
- Java基础篇(JVM)——类加载机制
这是Java基础篇(JVM)的第二篇文章,紧接着上一篇字节码详解,这篇我们来详解Java的类加载机制,也就是如何把字节码代表的类信息加载进入内存中. 我们知道,不管是根据类新建对象,还是直接使用类变量 ...
- centos8添加中文语言包
centos8添加中文语言包 系统:centos8 查看: [root@centos8]# locale -a 不支持中文包,按照centos7的方式安装:yum install kde-l10n-C ...
- 12-2 MySQL数据库备份(分表)
#!/bin/bash source /etc/profile DATE="$(date +%F_%H-%M-%S)" DB_IP="172.16.1.122" ...
- 基于uniapp自定义Navbar+Tabbar组件「兼容H5+小程序+App端Nvue」
uni-app跨端自定义navbar+tabbar组件|沉浸式导航条|仿咸鱼凸起标签栏 在跨端项目开发中,uniapp是个不错的框架.采用vue.js和小程序语法结构,使得入门开发更容易.拥有非常丰富 ...
- 安卓手机改造服务器——基本环境配置(CentOS7 arm32)
安装好CentOS系统之后,我们需要对环境进行一些基本的配置,让Linux更好用 写在前面 注意:本文章是针对arm32的CentOS7进行配置的,其他系统或不同架构不要尝试. 配置yum镜像源 1. ...
- 『无为则无心』Python函数 — 25、Python中的函数
目录 1.函数的使用 (1)定义函数 (2)调用函数 (3)使用函数的注意事项 2.函数的参数 3.实参的类型 Python函数的说明: Python中函数的应用非常广泛,前面章节中我们已经接触过多个 ...
- Python报错“UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)”的解决办法
最近在用Python处理中文字符串时,报出了如下错误: UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ...
- 「AGC034E」 Complete Compress
「AGC034E」 Complete Compress 显然可以枚举根. 然后把某两棵棋子同时往深度浅的方向提,即对不存在祖先关系的两个棋子进行操作. 如果能到达那么就更新答案. 问题转化为如何判定能 ...
- java测试银行系统源代码
1 package Kaoshi; 2 3 /*信1705-3 20173442 田昕可*/ 4 import java.util.*; 5 import java.io.*; 6 7 class A ...
- 数据库里的回车字符导致取过来的json字符串不规范的问题
转发:https://bbs.csdn.net/topics/380192638 你可以报保存数据库之前,进行 替换 str = str.Replace("\r\n"," ...