目录

基础知识

案例一: 信息收集-被动扫描-黑暗引擎&三方接口

案例二: 信息收集-目录扫描-Python 代理加载脚本

案例三: 信息收集-爬虫扫描-Awvs&Xray&Goby内置


基础知识

什么是 WAF
Web Application Firewall web 应用防火墙),一种公认的说法是 “web 应用防火墙通过执行一系列针对 HTTP/HTTPS 的安全策略来专门为 web 应用提供保护的一款产 品。
基本可以分为以下 4
软件型 WAF
以软件的形式安装在服务器上面,可以接触到服务器上的文件,因此就可以检测服务器上
是否有 webshell ,是否有文件被创建等。   安全狗 d盾
硬件型 WAF
以硬件形式部署在链路中,支持多种部署方式。当串联到链路上时可以拦截恶意流量,在
旁路监听模式时只记录攻击但是不进行拦截。  安全公司设备
WAF
一般以反向代理的形式工作,通过配置后,使对网站的请求数据优先经过 WAF 主机,在
WAF 主机对数据进行过滤后再传给服务器   阿里云自带waf
网站内置的 WAF
就是来自网站内部的过滤,直接出现在网站代码中,比如说对输入的参数强制类转换啊,
对输入的参数进行敏感词检测啊什么的 

存在的问题: waf产品太多了,只能了解一两种,遇到别的没办法,各种waf绕过的难度也不一样

案例一: 信息收集-被动扫描-黑暗引擎&三方接口

黑暗引擎: Fofa Quake Shodan zoomeye 0.zone
其他接口: https://forum.ywhack.com/bountytips.php?getinfo

案例二: 信息收集-目录扫描-Python 代理加载脚本

这里用安全狗开启防护

利用7kb爆破软件去爆破目录

爆破出来的目录全是错的,并且被拦截

安全狗里面有ip白名单,ua头有这些ua头会不拦截

各大ua头信息

https://blog.csdn.net/wsghjk/article/details/108436643

这里用百度的ua,安全狗也不会有限制登录,这里没爆破出来结果是可能不支持,头部信息需要完整

或者设置代理,设置代理的网站:

快代理 - 企业级HTTP代理IP云服务_专注IP代理10年

首次可以免费使用六个小时

配置

配置代理规则

爆破网站不会被拦截

为了确定有效这里直接把代理关了,直接拦截

这种方式爬不下来,需要包含ua头才能爬下来,这里用python爬

import requests
import time

headers={
    'Connection': 'keep-alive',
    'Cache-Control': 'max-age=0',
    'Upgrade-Insecure-Requests': '1',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36',
    'Sec-Fetch-Dest': 'document',
    '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',
    'Sec-Fetch-Site': 'none',
    'Sec-Fetch-Mode': 'navigate',
    'Sec-Fetch-User': '?1',
    'Accept-Encoding': 'gzip, deflate, br',
    'Accept-Language': 'zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7',
    'Cookie': 'safedog-flow-item=BA0A0347121B222033EA7279CF5DAF15',
}

for paths in open('php.txt',encoding='utf-8'):
    url='http://yourip//sqli'
    paths=paths.replace('\n','')
    urls=url+paths
    proxy = {
        'http': 'm829.kdltps.com:15818',
    }
    try:
        code=requests.get(urls,headers=headers,proxies=proxy).status_code
        #req=requests.get(urls, headers=headers, proxies=proxy)
        #print(urls)
        #print(req.text)
        #time.sleep()
        print(urls+'|'+str(code))
        if code==200 or code==403:
            print(urls+'|'+str(code))
    except Exception as err:
        print('connecting error')
        time.sleep(3)

 爬取结果

案例三: 信息收集-爬虫扫描-Awvs&Xray&Goby内置

awvs设置代理

xray设置代理

或者利用proxy设置代理

goby设置代理

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐