首页 > 其他分享 >WEB安全-渗透测试-waf绕过信息收集

WEB安全-渗透测试-waf绕过信息收集

时间:2023-06-23 22:55:32浏览次数:45  
标签:WEB CC waf 扫描 延时 绕过 拦截

waf绕过

WAF拦截会出现在安全测试的各个层面,掌握各个层面的分析和绕过技术最为关键

image

本文主要讲述以下四种环境下的waf绕过

  • Safedog-默认拦截机制分析绕过-未开CC
  • Safedog-默认拦截机制分析绕过-开启CC
  • Aliyun_os-默认拦截机制分析绕过-简要界面
  • BT(防火墙插件)-默认拦截机制分析绕过-简要界面

常见的服务器管理软件

使用WebPathBrute,御剑等后台扫描工具对网站进行扫描

Safedog-未开CC

DDOS攻击与CC攻击的区别

扫描结果:出现误报,全部200状态码

原因:浏览器采用get方法,工具扫描采用head方法

绕过方法:更改提交方式为get方法或模拟用户

Safedog-开启CC

扫描结果:频繁访问(访问频率过快,绝对是工具),触发安全狗防护机制,被拦截

绕过方法:延时或代理池或爬虫引擎。

  • 延时
    可开启延时扫描,慢速扫描,缺点是速度过慢,一般是3秒。
    image

  • 2.2 代理池
    网上搜索代理池,写python脚本,添加代理池。确定是WAF可能开启了防代理,无法绕过。

  • 2.3 爬虫引擎
    可在软件中自定义添加爬虫引擎头部(但是扫描不出现结果)
    各个搜索引擎的User-Agent
    可使用脚本自定义user-agent进行访问

import requests
import time

headers = {
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
    'Accept-Encoding': 'gzip, deflate, br',
    'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6',
    'Cache-Control': 'max-age=0',
    'Connection': 'keep-alive',
    'Cookie': 'PHPSESSID=4d6f9bc8de5e7456fd24d60d2dfd5e5a',
    'sec-ch-ua': '"Chromium";v="92", " Not A;Brand";v="99", "Microsoft Edge";v="92"',
    'sec-ch-ua-mobile': '?0',
    'Sec-Fetch-Dest': 'document',
    'Sec-Fetch-Mode': 'navigate',
    'Sec-Fetch-Site': 'none',
    'Sec-Fetch-User': '?1',
    'Upgrade-Insecure-Requests': '1',
    'User-Agent': 'Mozilla/5.0 (compatible; Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)'
}

for paths in open('php_b.txt', encoding='utf-8')://php_b.txt为扫描网站文件字典
    url = "http://127.0.0.1/pikachu"
    paths = paths.replace('\n', '')
    urls = url + paths
    proxy = {
        'http': '127.0.0.1:7777'
    }
    try:
        code = requests.get(urls, headers=headers, proxies=proxy).status_code
        # time.sleep(3)
        print(urls + '|' + str(code))
    except Exception as err:
        print('connect error')
        time.sleep(3)

渗透测试路径字典

Aliyun_os-默认拦截机制

扫描结果:对部署在阿里云上的网站进行目录扫描时,网站无法打开,大约1个小时后才能重新打开,重启服务器也不能使网站重新打开,猜测这是因为阿里云自己有一套防护体系。

绕过方法:无法模拟搜索引擎爬虫绕过,只能采用延时或代理池

BT-默认拦截机制

扫描结果:请求过快,网站无法打开

对于恶意请求,比如宝塔检测到用户频繁请求index.php.bak等备份文件,即判断为恶意请求,拦截。对于这种拦截,绕过方法为字典重写

绕过方法:爬虫未知,延时可以,代理池可以

Aliyun_os+safedog+BT

绕过方法:延时或代理池

在实战中,waf绕过一般都很难......

参考1
参考2
参考3

声明:本文只供参考学习,如有误导请纠正

标签:WEB,CC,waf,扫描,延时,绕过,拦截
From: https://www.cnblogs.com/azureWW/p/17500437.html

相关文章

  • vue学习第25天 移动WEB开发----响应式布局
    目标:1)响应式原理2)使用媒体查询完成响应式导航3)使用Bootstrap的栅格系统4)使用Bootstrap的响应式工具5)完成阿里百秀首页案例 目录:1)响应式开发2)Bootstrap前端开发框架3)Bootstrap栅格系统4)阿里百秀首页案例  ......
  • Web常见安全问题
    1.SQL注入SQL注入是一种常见的Web安全漏洞,攻击者利用这个漏洞,可以访问或修改数据,或者利用潜在的数据库漏洞进行攻击。SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将(恶意的)SQL......
  • JS逆向 -- 某资源网站下载验证绕过
    一、当搜索资源的时候,有时会遇到类似的情况,就是关注微信某公众号好,回复相应的内容,获取下载地址二、随便输入一个假的验证码,提示了验证码错误三、F12打开开发者工具,点击右上方的三个点,选择搜索,全局搜索“验证码错误”四、双击进入代码段,里面有个1219,输入验证码,点击提交查看五、成功......
  • webdriver通过tag_name定位
    webdriver通过tag_name定位代码示例:#encoding=utf-8importtimefromseleniumimportwebdriverfromselenium.webdriver.common.byimportBydriver=webdriver.Chrome()#打开百度首页driver.get("https://www.baidu.com")#根据名LINK_TEXT获取元素tag_name=dri......
  • webdriver根据XPath相对路径获取元素
    webdriver根据XPath相对路径获取元素#encoding=utf-8importtimefromseleniumimportwebdriverfromselenium.webdriver.common.byimportBydriver=webdriver.Chrome()#打开百度首页driver.get("https://passport.meituan.com/account/unitivelogin?")#根据相对......
  • webdriver根据绝对路径标签id属性进行定位
    webdriver根据绝对路径标签id属性进行定位#encoding=utf-8importtimefromseleniumimportwebdriverfromselenium.webdriver.common.byimportBydriver=webdriver.Chrome()#打开百度首页driver.get("https://passport.meituan.com/account/unitivelogin?")#根......
  • 【web开发】PHP字符串之字符串输出及格式化输出
    前言上一篇文章我们介绍到PHP的字符串有很多相关的处理函数,今天就先来详细介绍PHP字符串相关的输出函数以及格式化输出函数。在web的开发中,网页上大部分内容显示的都是文字或者图片,且文字居多。所以在实际开发中,对字符的处理和展示是最多。如果按用户的需求通过PHP动态输出这些文字......
  • Uniapp仿ChatGPT Stream流式输出(非Websocket)
    前言最近写一个chagpt小程序,流式输出可以使用websocket也可以使用stream来实现,这里就不折腾websocket的了,我发现uniapp实现流式输出的方式挺多的,主要是有些小程序还不兼容,花了点时间研究了一下。EventSourceEventSource也称为SSE(Server-SentEvents),是服务器推送的一个网络事件......
  • Java Web自定义MVC框架详解
    最近给学生讲JavaWeb,希望他们能够在学完这部分内容后自己实现一个MVC框架。但是突然发现百度上能搜索到的靠谱的资料并不是很多,有些只是原理没有代码实现,有些有代码实现但是对于初学者来说理解起来还是比较困难,于是决定把自己讲自定义MVC框架的内容放在这里分享给大家,不仅仅是代码......
  • Java Web项目中使用Freemarker生成Word文档
    Web项目中生成Word文档的操作屡见不鲜,基于Java的解决方案也是很多的,包括使用Jacob、ApachePOI、Java2Word、iText等各种方式,其实在从Office2003开始,就可以将Office文档转换成XML文件,这样只要将需要填入的内容放上${}占位符,就可以使用像Freemarker这样的模板引擎将出现占位符的地......