### Nikto 命令行选项概述

Nikto 是一个广泛使用的 web 服务器扫描工具,提供了多种扫描选项以进行不同类型的测试。以下是常用选项的简要说明:

#### 常见选项:
- -ask+: 提示是否提交更新数据。可以选择 yes`、`no 或 `auto`。
- -check6: 检查 IPv6 是否可用,默认会连接到 `ipv6.google.com`。
- -Cgidirs+: 指定扫描的 CGI 目录,可以设置为 `none`、`all` 或自定义目录(如 `/cgi/`)。
- -config+: 使用指定的配置文件。
- -Display+: 设置显示输出的详细程度。选项包括:
- `1` 显示重定向
- 2 显示接收到的 Cookie
- 3 显示所有 200/OK 响应
- V 显示详细输出
- -evasion+: 设置编码技术,用于绕过防火墙或代理,支持多种编码方式,如随机 URI 编码、目录自引用等。
- -followredirects: 跟随 3xx 重定向。
- -Format+: 设置输出格式,可以选择 csv`、`json`、`xml 等。
- -host+: 指定目标主机或 URL。
- -output+: 设置输出文件(默认为当前目录)。
- -Plugins+: 指定要运行的插件列表(默认运行所有插件)。
- -Tuning+: 设置扫描调优选项,可以指定关注特定的漏洞类别(如 SQL 注入、命令执行等)。

#### 网络相关选项:
- -ssl: 强制使用 SSL 模式进行连接。
- -useproxy: 使用指定的代理进行请求。
- -vhost+: 设置虚拟主机(用于 Host 请求头)。
- -timeout+: 设置请求的超时时间(默认 10 秒)。

#### 扫描相关选项:
- -port+: 设置扫描端口(默认为 80)。
- -mutate+: 启用额外的文件名猜测方法,例如尝试猜测密码文件名。
- -maxtime+: 设置每个主机的最大测试时间。
- -nointeractive: 禁用交互式功能,适用于自动化脚本。

#### 调试与输出:
- -dbcheck: 检查数据库和其他关键文件的语法错误。
- -output+: 设置结果输出文件,支持多种格式,如 txt`、`html`、`csv 等。
- -Pause+: 在测试之间暂停指定时间。

#### 安全相关:
- -Tuning+: 调整扫描目标的侧重点,如 XSS、SQL 注入等。

### 示例命令:
nikto -h http://example.com -o result.html -ssl -Tuning 4


### 关键词
#Nikto #web安全 #扫描工具 #漏洞扫描 #网络安全
### WhatWeb 命令行帮助内容

WhatWeb 是一款下一代 Web 扫描工具,版本为 0.5.5,旨在识别和扫描网站的技术和应用信息。

#### 目标选择:
- `<TARGETs>`:输入 URL、主机名、IP 地址、文件名或 CIDR 格式的 IP 范围(如:x.x.x-x 或 x.x.x.x-x.x.x.x)。
- --input-file=FILE, -i`:从文件读取目标。也可以使用管道将主机名或 URL 直接传递给 -i /dev/stdin`。

#### 目标修改:
- `--url-prefix`:为目标 URL 添加前缀。
- `--url-suffix`:为目标 URL 添加后缀。
- `--url-pattern`:将目标插入到 URL 中。例如:`example.com/%insert%/robots.txt`。

#### 攻击强度:
攻击强度控制速度/隐蔽性与可靠性之间的权衡。
- `--aggression, -a=LEVEL`:设置攻击强度,默认值:1。
- `1. Stealthy`:每个目标发送一个 HTTP 请求,并跟踪重定向。
- `3. Aggressive`:如果匹配到级别 1 的插件,将发送额外的请求。
- `4. Heavy`:每个目标发送大量 HTTP 请求,尝试所有插件中的 URL。

#### HTTP 选项:
- `--user-agent, -U=AGENT`:设置用户代理为 AGENT,而不是默认的 WhatWeb/0.5.5。
- --header, -H`:添加 HTTP 头部,例如 "Foo:Bar"。指定默认头部将替换原有头部,指定空值如 "User-Agent:"` 将删除该头部。
- --follow-redirect=WHEN`:控制何时跟踪重定向,`WHEN 可选值为 never`、`http-only`、`meta-only`、`same-site 或 `always`(默认:always)。
- `--max-redirects=NUM`:最大重定向次数,默认:10。

#### 身份验证:
- `--user, -u=<user:password>`:HTTP 基本认证。
- --cookie, -c=COOKIES`:使用 Cookies,格式为 'name=value; name2=value2'`。
- `--cookie-jar=FILE`:从文件中读取 Cookies。

#### 代理:
- `--proxy`:设置代理主机名和端口,默认:8080。
- `--proxy-user`:设置代理的用户名和密码。

#### 插件:
- `--list-plugins, -l`:列出所有插件。
- `--info-plugins, -I=[SEARCH]`:列出所有插件的详细信息。可以使用逗号分隔的关键字进行搜索。
- `--search-plugins=STRING`:在插件中搜索关键字。
- --plugins, -p=LIST`:选择插件。LIST 是逗号分隔的插件集合,默认选择所有插件。每个元素可以是目录、文件或插件名称,并可以选择性地加上修改符号 +-`。
- `--grep, -g=STRING|REGEXP`:搜索特定的字符串或正则表达式,仅显示匹配的结果。
- `--custom-plugin=DEFINITION`:定义自定义插件。

#### 输出选项:
- `--verbose, -v`:详细输出,包括插件描述。使用两次进行调试。
- --colour,--color=WHEN`:控制是否使用颜色。`WHEN 可以是 never`、`always 或 `auto`。
- `--quiet, -q`:不显示简要日志信息到标准输出。
- `--no-errors`:抑制错误信息。

#### 日志选项:
- `--log-brief=FILE`:记录简要日志输出(每行)。
- `--log-verbose=FILE`:记录详细日志输出。
- `--log-errors=FILE`:记录错误日志。
- `--log-xml=FILE`:记录 XML 格式日志。
- `--log-json=FILE`:记录 JSON 格式日志。
- `--log-sql=FILE`:记录 SQL 插入语句。
- `--log-mongo-database`:MongoDB 数据库名称,默认:whatweb。
- `--log-elastic-index`:存储结果的 ElasticSearch 索引名称,默认:whatweb。

#### 性能与稳定性:
- `--max-threads, -t`:最大并发线程数,默认:25。
- `--open-timeout`:打开连接的超时时间(秒),默认:15。
- `--read-timeout`:读取连接的超时时间(秒),默认:30。
- `--wait=SECONDS`:每个连接之间的等待时间(秒),这在使用单线程时很有用。

#### 帮助与其他:
- `--short-help`:简短的使用帮助。
- `--help, -h`:完整的使用帮助。
- `--debug`:在插件中提高错误级别。
- `--version`:显示版本信息。

#### 示例用法:
- 扫描 `example.com`:
  ./whatweb example.com
  


- 扫描 `reddit.com` 和 `slashdot.org`,并显示插件描述:
  ./whatweb -v reddit.com slashdot.org
  


- 对 `wired.com` 进行激进扫描,检测 WordPress 的确切版本:
  ./whatweb -a 3 www.wired.com
  


- 快速扫描本地网络并抑制错误:
  whatweb --no-errors 192.168.0.0/24
  


- 扫描本地网络中的 HTTPS 网站:
  whatweb --no-errors --url-prefix https:// 192.168.0.0/24
  


- 扫描 Alexa 排名前 1000 的网站,查找 crossdomain.xml 文件:
  ./whatweb -i plugin-development/alexa-top-100.txt \
  --url-suffix /crossdomain.xml -p crossdomain_xml
  


https://github.com/urbanadventurer/WhatWeb

#WhatWeb #Web扫描 #插件选择 #代理设置 #HTTP请求 #身份验证 GitHub - urbanadventurer/WhatWeb: Next generation web scanner
### Nikto 与 Metasploit Framework 结合使用

NiktoMetasploit Framework 结合使用可以实现更加全面的 Web 应用漏洞分析和渗透测试。通过将 Nikto 扫描的结果导入到 Metasploit 中,你可以利用 Metasploit 的漏洞利用功能进一步进行攻击和渗透测试。下面是 Nikto 和 Metasploit 结合使用的几种方法。

#### 1. Nikto 扫描结果导入 Metasploit
Nikto 的扫描结果可以导出为 XML 或其他格式,然后通过 Metasploit 的 db_import 命令将其导入到数据库中。

步骤:
1. 使用 Nikto 扫描目标网站并将结果保存为 XML 格式:
   nikto -h http://example.com -o nikto_scan.xml -Format xml
   


2. 启动 Metasploit Framework:
   msfconsole
   


3. 导入 Nikto 扫描结果:
   db_import /path/to/nikto_scan.xml
   


4. 导入后,Metasploit 会将 Nikto 扫描中发现的漏洞、端口、服务等信息存储到数据库中。你可以通过 hosts`、`services`、`vulns 等命令查看扫描结果。例如:
   hosts
   services
   vulns
   


5. 之后,你可以根据这些信息选择合适的漏洞利用模块进行攻击。

#### 2. 使用 Metasploit 的 `auxiliary/scanner/http/nikto` 模块
Metasploit 提供了一个 auxiliary/scanner/http/nikto 模块,可以直接在 Metasploit 中运行 Nikto 扫描,而无需独立使用 Nikto 工具。这种方式能将 Nikto 的扫描功能集成到 Metasploit 内部进行漏洞分析。

步骤:
1. 启动 Metasploit:
   msfconsole
   


2. 加载 auxiliary/scanner/http/nikto 模块:
   use auxiliary/scanner/http/nikto
   


3. 配置目标地址:
   set RHOSTS http://example.com
   


4. 配置其他参数,如端口、扫描选项等:
   set RPORT 80
   set THREADS 10
   


5. 运行扫描:
   run
   


6. Metasploit 会运行 Nikto 扫描并显示结果。扫描结果与 Nikto 输出类似,但在 Metasploit 环境中进行管理和利用会更加方便。

#### 3. 结合漏洞利用
通过将 Nikto 扫描结果导入到 Metasploit 后,你可以利用 Metasploit 的漏洞利用模块进一步对目标进行攻击。例如,如果 Nikto 检测到某个常见的漏洞(如 XSS、SQL 注入等),你可以搜索并选择相应的漏洞利用模块。

步骤:
1. 使用 search 命令查找可能的漏洞利用模块:
   search type:exploit xss
   


2. 选择相应的漏洞利用模块并配置目标:
   use exploit/unix/webapp/sqli_example
   set RHOSTS http://example.com
   set RPORT 80
   run
   


通过这种方式,Nikto 扫描的结果和 Metasploit 中的漏洞利用模块结合使用,可以实现自动化的漏洞发现和渗透测试。

### 总结
1. **Nikto 导入 Metasploit**:通过将 Nikto 的扫描结果导出并导入到 Metasploit 中,结合 Metasploit 的数据库进行漏洞利用。
2. **Metasploit 自带的 nikto 模块**:直接使用 Metasploit 内部的 auxiliary/scanner/http/nikto 模块进行扫描。
3. **漏洞利用**:结合 Nikto 扫描结果与 Metasploit 的漏洞利用模块进行更深入的渗透测试。

这种结合使用可以帮助你更高效地进行 Web 应用的漏洞扫描、分析和利用。

#Nikto #Metasploit #Web漏洞扫描 #渗透测试 #漏洞利用 #KaliLinux
### Nikto 使用方法

Nikto 是一款开源的 Web 服务器扫描工具,专门用于检测 Web 服务器中的安全漏洞。它可以检测常见的漏洞、配置问题、过时的软件版本等。下面是 Nikto 的基本使用方法:

#### 1. 安装 Nikto
在 Kali Linux 中,Nikto 通常已经预装。如果没有安装,可以通过以下命令安装:
sudo apt update
sudo apt install nikto


#### 2. 基本扫描命令
Nikto 的最基本用法是扫描一个目标网站:
nikto -h <target_url>

例如,扫描 `http://example.com`:
nikto -h http://example.com

这个命令将检查目标网站的常见漏洞和配置问题。

#### 3. 扫描 HTTPS 网站
如果目标网站使用 HTTPS,Nikto 会自动检测并使用 HTTPS 协议进行扫描:
nikto -h https://example.com


#### 4. 扫描特定端口
如果 Web 服务器不是运行在默认的 80 或 443 端口,你可以通过 -p 选项指定端口号。例如,扫描 8080 端口:
nikto -h http://example.com -p 8080


#### 5. 指定扫描插件
Nikto 可以通过插件来检测特定的漏洞或问题,使用 -Plugins 选项查看可用插件:
nikto -h <target_url> -Plugins


#### 6. 使用代理进行扫描
如果你希望通过代理服务器进行扫描,可以使用 -proxy 参数:
nikto -h http://example.com -proxy http://127.0.0.1:8080

这将通过本地代理(127.0.0.1:8080)扫描目标网站。

#### 7. 生成报告
Nikto 可以将扫描结果输出到文件中,支持多种格式,如 HTML、XML、CSV 等:
nikto -h http://example.com -o output.html -Format htm

这将把扫描结果保存为 HTML 格式。

#### 8. 扫描多个目标
如果你有多个目标,可以通过 -list 参数指定一个包含目标 URL 的文件,Nikto 将会对文件中的每个目标进行扫描:
nikto -h <target_list.txt>


#### 9. 检查特定漏洞
你也可以使用 -Tuning 参数来指定扫描的漏洞类型。比如,使用 -Tuning 2 来扫描服务器的技术细节信息:
nikto -h http://example.com -Tuning 2


### 示例:
1. 扫描 http://example.com 并输出为 HTML 文件:
   nikto -h http://example.com -o scan_report.html -Format htm
   


2. 使用代理服务器进行扫描:
   nikto -h http://example.com -proxy http://127.0.0.1:8080
   


3. 扫描指定端口 8080 的服务器:
   nikto -h http://example.com -p 8080
   


### 主要参数:
- `-h`:指定目标 URL 或 IP 地址。
- `-p`:指定端口。
- `-o`:指定输出文件。
- `-Format`:指定报告格式(`htm`、`csv`、`xml`等)。
- `-Tuning`:选择扫描的漏洞类型。
- `-proxy`:指定代理服务器。
- `-list`:从文件中读取多个目标。

Nikto 是一款功能强大且易于使用的工具,非常适合快速发现 Web 服务器的安全漏洞。

#Nikto #Web漏洞扫描 #KaliLinux #Web安全 #漏洞检测
 
 
Back to Top