网页枚举

使用工具 gobuster,Nikto,WPScan

Gobuster

安装:sudo apt install gobuster

有用的全局标志

-t      线程        并发线程数(默认10)
-v 冗长 详细输出
-z 没有进展 不显示进度
-q 安静的 不打印多余的东西
-o 输出 将结果写入的输出文件

目录模式

gobuster dir 然后使用-u和-w添加url和单词表
例如
gobuster dir -u http://10.10.10.10/ -w direnum.txt 其他有用的标志
-c --cookies 用于请求的cookie
-x --extensions 要搜索的文件扩展名
-H --headers 指定http标头,-H 'Header1: val1' -H 'Header2: val2'
-k --no-tls-validation 跳过 TLS 证书验证
-n --no-status 不打印状态码
-P --password 基本认证密码
-s --status-codes 正面状态码
-b --status-codes-blacklist 负面状态码
-U --username 基本身份验证的用户名

DNS模式

gobuster dns 然后分别使用 -d 和 -w 选项添加域和词表
例如
gobuster dns -d mydomain.thm -w subdomains.txt 其他 -c --show-cname 显示 CNAME 记录(不能与“-i”选项一起使用)
-i --show-ips 显示 IP 地址
-r --resolver 使用自定义DNS服务器

虚拟主机模式

虚拟主机是基于 IP 的

gobuster vhost 然后需要分别使用-u和-w选项添加域和词表
例如
gobuster vhost -u http://example.com -w subdomains.txt

Kali Linux默认列表

/usr/share/wordlists/dirbuster/directory-list-2.3-*.txt
/usr/share/wordlists/dirbuster/directory-list-1.0.txt
/usr/share/wordlists/dirb/big.txt
/usr/share/wordlists/dirb/common.txt
/usr/share/wordlists/dirb/small.txt
/usr/share/wordlists/dirb/extensions_common.txt - 在对文件进行模糊测试时很有用!

或者sudo apt install seclists

示例

目录扫描
gobuster dir -u http://10.10.10.10/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 64 扩展名扫描
gobuster dir -u http://10.10.10.10/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x.html,.php,.conf 扫描虚拟主机
gobuster vhost -u webenum.thm -w /usr/share/wordlists/SecLists/Discovery/DNS/subdomains-top1million-5000.txt -t 64

WPScan

WPScan 框架能够枚举和研究 WordPress 网站中存在的一些安全漏洞类别 - 包括 - 但不限于:

敏感信息披露(已披露漏洞或 CVE 的插件和主题安装版本)
路径发现(寻找错误配置的文件权限,即 wp-config.php)
弱密码策略(密码暴力破解)
存在默认安装(寻找默认文件)
测试 Web 应用程序防火墙(常见 WAF 插件)

更新:wpscan --update

--enumerate/-e 枚举  [option](要枚举的目标)

u      枚举用户名
wpscan --url http://cmnatics.playground/ --enumerate u
p 枚举插件
wpscan --url http://cmnatics.playground/ --enumerate p
t 枚举主题
wpscan --url http://cmnatics.playground/ --enumerate t vp 结果中显示有漏洞的插件
wpscan --url http://cmnatics.playground/ --enumerate vp 执行密码攻击
wpscan –-url http://cmnatics.playground –-passwords rockyou.txt –-usernames cmnatic 调整 WPScan 的攻击性 (WAF)
--plugins-detection aggressive

Nikto

Nikto 能够对所有类型的网络服务器进行评估(并且不是特定于应用程序的,例如 WPScan。)。Nikto 可用于发现可能的漏洞,包括:

敏感文件

过时的服务器和程序(即易受攻击的网络服务器安装)

常见的服务器和软件错误配置(目录索引、cgi 脚本、x-ss 保护)

-host:扫描目标URL
-id:http认证接口
-list-plugins:列出所有可用的插件
-evasion:IDS/IPS逃避技术
-port:指定端口(默认80)
-ssl:使用SSL
-useproxy:使用HTTP代理
-vhost:当一个IP拥有多个网站时使用
-update:更新程序
-outfile:以文件形式输出扫描结果
-Format:规定输出文件的格式
-Version:显示插件和数据库的版本号
-Cgidirs:扫描相关CGI文件夹,传入单词“none”或者是“all”可以扫描所有CGI目录

插件介绍

通过使用-Plugin参数

apacheusers         尝试枚举 Apache HTTP 身份验证用户
cgi 寻找我们可以利用的 CGI 脚本
robots 分析 robots.txt 文件,该文件指示我们能够导航到哪些文件/文件夹
dir_traversal 尝试使用目录遍历攻击(即LFI) 例:nikto -h 10.10.10.1 -Plugin apacheuser 扫描的冗长程度-Display 1 显示 Web 服务器提供的任何重定向。
2 显示收到的任何 cookie
E 输出任何错误

web_枚举的更多相关文章

  1. Swift enum(枚举)使用范例

    //: Playground - noun: a place where people can play import UIKit var str = "Hello, playground& ...

  2. 编写高质量代码:改善Java程序的151个建议(第6章:枚举和注解___建议88~92)

    建议88:用枚举实现工厂方法模式更简洁 工厂方法模式(Factory Method Pattern)是" 创建对象的接口,让子类决定实例化哪一个类,并使一个类的实例化延迟到其它子类" ...

  3. Objective-C枚举的几种定义方式与使用

    假设我们需要表示网络连接状态,可以用下列枚举表示: enum CSConnectionState { CSConnectionStateDisconnected, CSConnectionStateC ...

  4. Help Hanzo (素数筛+区间枚举)

    Help Hanzo 题意:求a~b间素数个数(1 ≤ a ≤ b < 231, b - a ≤ 100000).     (全题在文末) 题解: a~b枚举必定TLE,普通打表MLE,真是头疼 ...

  5. 枚举:enum

    枚举 所谓枚举就是指定好取值范围,所有内容只能从指定范围取得. 例如,想定义一个color类,他只能有RED,GREEN,BLUE三种植. 使用简单类完成颜色固定取值问题. 1,就是说,一个类只能完成 ...

  6. .NET 基础一步步一幕幕[方法、结构、枚举]

    方法.结构.枚举 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值,写void 方法名:P ...

  7. Asp.Net 将枚举类型(enum)绑定到ListControl(DropDownList)控件

    在开发过程中一些状态的表示使用到枚举类型,那么如何将枚举类型直接绑定到ListControl(DropDownList)是本次的主题,废话不多说了,直接代码: 首先看工具类代码: /// <su ...

  8. 用枚举enum替代int常量

    枚举的好处: 1. 类型安全性 2.使用方便性 public class EnumDemo { enum Color{ RED(3),BLUE(5),BLACK(8),YELLOW(13),GREEN ...

  9. c#编程基础之枚举

    枚举的意义就在于限制变量取值范围. 当可以确定的几种取值时才可以用. 如果输入一个字符串需要进行判断是否是我们需要的字符串时,则一般需要这样写: using System; using System. ...

  10. golang枚举类型 - iota用法拾遗

    在c#.java等高级语言中,经常会用到枚举类型来表示状态等.在golang中并没有枚举类型,如何实现枚举呢?首先从枚举的概念入手. 1.枚举类型定义 从百度百科查询解释如下:http://baike ...

随机推荐

  1. Salesforce CPQ之后续慢慢看系列

    salesforce核心两朵云,sales & service. 针对sales的quote / quote line item的报价功能,还是相对薄弱.针对sales,报价的准确性影响着成单 ...

  2. Java面试——Redis

    一.Redis 为什么那么快 [1]完全基于内存,绝大部分请求是纯粹的内存操作,非常快速.数据存在内存中.[2]数据结构简单,对数据操作也简单,Redis中的数据结构是专门进行设计的.[3]采用单线程 ...

  3. GLM:通用语言模型

    ChatGPT已经火了一段时间了,国内也出现了一些平替,其中比较容易使用的是ChatGLM-6B:https://github.com/THUDM/ChatGLM-6B ,主要是能够让我们基于单卡自己 ...

  4. ACM-学习记录-数论

    GCD,LCM 定理 a.b两个数的最大公约数乘以它们最小公倍数等于a和b的乘积 axb=GCD(a,b)xLCM(a,b) 据此定理,求3与8的最小公倍数可以为:LCM(3,8)=3x8divGCD ...

  5. 使用vSphere Update Manager 升级 ESXi 主机

    使用vSphere Update Manager 升级 ESXi 主机 vSphere Update Manager  vSphere Update Manager 是用于升级.迁移.更新和修补群集主 ...

  6. python进程之进程池、线程池与异步回调机制

    进程线程不可以无限制的创建,因为有硬件的限制.为了避免资源被程序消耗过度,可以使用进程池或线程池的技术. 池     降低程序的执行效率,但是保证了计算机硬件的安全 进程池     提前创建好固定数量 ...

  7. internal java compiler error

    1.导入Maven项目运行报错:  解决方法:找到File->Settings  修改配置 再次运行就可以了.

  8. 如何优雅的使用ipv6穿透内网

    背景 随着ipv6的普及,家庭宽带已经全面支持ipv6,通过简单的设置就可以让自己的内网设备获取到ipv6地址.不过这里的ipv6地址也不是固定,会定期的变化,不过通过DDNS可以解决这个问题.但是这 ...

  9. 从零开始学Vue(二~三)—— Vue 实例 / 模板语法(插值、指令)

    概述 vue.js作为现在笔记热门的JS框架,使用比较简单易上手,也成为很多公司首选的JS框架. 但是对于初学者可能学起来有些麻烦,所以推出<从零开始学Vue>系列博客,本系列计划推出19 ...

  10. 随手记:lnmp 安装完 redis 后无法全局操作

     说明redis-server不是全局命令,那么假如到全局即可 假设redis安装目录是:/usr/local/redis/bin/redis-cli ln -s /usr/local/redis/b ...