当前位置: 首页 > news >正文

Nikto工具使用指南

Nikto

Nikto是一款开源网站服务器扫描器,使用Perl开发,可以对服务器进行全面扫描,包括6400多个潜在危险的文件/cgi(通用网关接口(Common Gateway Interface)),废话不多说,直接上命令:

基本测试:

最基本的Nikto扫描仅需要将主机作为目标,默认为80端口,主机可以是ip或主机名,利用

-h(-host)选项指定:

nikto -h 192.168.56.120 #借用之前渗透项目里的ip

指定端口,使用-p(-port) 例如:扫描TCP端口443

nikto -h 192.168.56.120 -p 443

也可以用完整的url:

nikto -h http://192.168.56.120:443/

无需指定端口 443 可以是 SSL,因为 Nikto 将首先测试常规 HTTP,如果失败,则将测试 HTTPS。如果确定它是 SSL 服务器,则指定 -s(-ssl) 将加快测试速度。

nikto -h 192.168.56.120 -p 443 -ssl

多端口测试:

Nikto 可以在同一扫描会话中扫描多个端口。可以在 -p(-port)选项中指定端口列表。端口可以指定为范围(即 80-90),也可以指定为逗号分隔的列表(即 80、139、8080)。这将扫描端口 80、139 和 443 上的主机。

nikto -h 192.168.56.120 -p 80,139,443

多主机测试:

Nikto 支持通过主机名或 IP 的文本文件扫描同一会话中的多台主机。可以给出文件名,而不是 -h(-host)选项的主机名或 IP 。主机文件必须格式化为每行一台主机,端口号位于每行的末尾。端口可以通过冒号或逗号与主机端口和其他端口分开。如果未指定端口,则假定端口为 80。

文件:

192.168.56.4:80

http://192.168.56.5:45/

192.168.56.6

也可和nmap联立:nmap -p80 192.168.56.1/24 -oG-| nikto -h-

使用代理

要在niktl.conf文件中设置PROXY变量,使用 - useproxy 选项执行 Nikto。所有连接将通过配置文件中指定的 HTTP 代理进行中继。

nikto -h ip -p 80 -useproxy

要在命令行上设置代理,用-useproxy选项,并设置代理为参数:

nikto -h ip -useproxy http://ip:3128/

命令所有选项

以下是所有 Nikto 命令行选项和说明。通过使用 - h(-help)选项运行 Nikto,可以获得此文本的简短版本。
-ask
询问是否提交更新:是(询问每个 - 默认值),否(不询问,仅发送),自动(不询问,仅发送)。-Cgidirs
扫描这些 CGI 目录。特殊词 “none” 或 “ all” 可分别用于扫描所有 CGI 目录或不扫描。可以指定 CGI 目录的文字值,例如 “ /cgi-test/”(必须包含尾部斜杠)。如果未指定此选项,将测试 nikto.conf 中列出的所有 CGI 目录。-config
指定要使用的代替配置文件,而不是安装目录中的 nikto.conf 文件。-dbcheck
检查扫描数据库中的语法错误。-Display
控制 Nikto 显示的输出。有关这些选项的详细信息,请参见第 5 章。使用参考数字或字母指定类型。可以使用多个:1 - 显示重定向
2 - 显示收到的 Cookie
3 - 显示所有 200 / OK 响应
4 - 显示需要身份验证的 URL
D - 调试输出
E - 显示所有 HTTP 错误
P - 打印进度到 STDOUT
V - 详细输出-evasion
指定要使用的 LibWhisker 编码 / 规避技术(有关这些的详细信息,请参阅 LibWhisker 文档)。请注意,它们实际上不太可能绕过现代 IDS 系统,但可能用于其他目的。使用参考数字指定类型,可以使用多个:1 - 随机 URI 编码(非 UTF8)
2 - 目录自参考(/./)
3 - 过早的 URL 结尾
4 - 前端的长随机字符串
5 - 伪参数
6-TAB 作为请求分隔符
7 - 更改网址的大小写
8 - 使用 Windows 目录分隔符(\)
A - 使用回车符(0x0d)作为请求分隔符
B - 使用二进制值 0x0b 作为请求间隔符-findonly
仅发现 HTTP(S)端口,不执行安全扫描。这将尝试使用 HTTP 或 HTTPS 连接,并报告服务器标头。请注意,从 2.1.4 版开始,-findonly 已被弃用,只需设置’-Plugins“@@ NONE”’,它将覆盖 - Plugins 的任何命令行或配置文件设置。-Format
以这种格式保存用 - o(-output)选项指定的输出文件。如果未指定,则默认值将从 - output 选项中指定的文件扩展名中获取。有效格式为:csv - 逗号分隔的列表
htm-HTML 报告
msf - 记录到 Metasploit
txt - 文本报告
xml-XML 报告-host
目标主机。可以是主机的 IP 地址,主机名或文本文件。单引号(-)可以用于标准输入。也可以解析 nmap -oG 样式输出-Help
显示扩展的帮助信息。-id    用于主机基本主机身份验证的 ID 和密码。格式为 “id:password”。-IgnoreCode    忽略这些 HTTP 代码作为否定响应(始终)。格式为 “302,301”。-list-plugins    将列出 Nikto 可以针对目标运行的所有插件,然后不执行扫描的情况下退出。可以使用该 -Plugins 选项针对会话进行调整。输出格式为:Plugin name
full name - description
Written by author, Copyright (C) copyright-maxtime
每个主机的最大执行时间,以秒为单位。接受分钟和小时,使所有这些都是一个小时:3600s,60m,1h-mutate
指定 mutate 技术。mutate 会导致 Nikto 组合测试或尝试猜测值。这些技术可能导致针对目标启动大量测试。使用参考数字指定类型,可以使用多个:
1 - 使用所有根目录测试所有文件
2 - 猜密码文件名
3 - 通过 Apache 枚举用户名(/〜用户类型请求)
4 - 通过 cgiwrap 枚举用户名(/cgi-bin/cgiwrap /〜用户类型请求)
5 - 尝试暴力破解子域名,假设主机名是父域名
6 - 尝试从提供的词典文件中猜测目录名称-mutate-options    提供有关 mutate 的其他信息,例如字典文件-nolookup    不要在 IP 地址上执行名称查找。-nocache        禁用响应缓存-nointeractive    禁用互动功能-nossl        不要使用 SSL 连接到服务器。-no404
禁用 404(找不到文件)检查。这将减少对 Web 服务器的请求总数,在通过慢速链接或嵌入式设备检查服务器时可能更可取。这通常会导致发现更多的误报。-output
将输出写入指定的文件。使用的格式将从文件扩展名中获取。可以使用 - Format 选项来覆盖它(例如,以不同的扩展名写入文本文件。现有文件将附加新信息。)
可以为输出文件名指定一个点(。),在这种情况下,将根据要测试的目标自动生成文件名。请注意,使用 - Format 选项是必需的。该方案是:nikto_HOSTNAME_PORT_TIMESTAMP.FORMAT
对于 “-format msf”,输出选项具有特殊含义。它应包含 Metasploit RPC 服务的密码和位置。例如,它可能看起来像:’-o msf:< password >@http://localhost:55553/RPC2'-Plugins    选择将在指定目标上运行的插件。应提供以分号分隔的列表,其中列出了插件的名称。可以使用 - list-plugins 查找名称。
有两个特殊条目:@@ ALL,它指定所有插件都应运行,而 @@ NONE,它指定所有插件均不应运行。默认值为 @@ DEFAULT-port    目标 TCP 端口。要在同一主机上测试多个端口,请在 - p(-port)选项中指定端口列表。端口可以指定为范围(即 80-90),也可以指定为逗号分隔的列表(即 80、88、90)。如果未指定,则使用端口 80。-Pause    每次测试之间延迟的秒数(整数或浮点数)。-root    将指定的值附加在每个请求的开头。这对于测试所有文件都位于某个目录下的应用程序或 Web 服务器很有用。-ssl        仅在指定的端口上测试 SSL。使用此选项将大大加快对 HTTPS 端口的请求,否则 HTTP 请求将必须先超时。-Save        将调查结果的请求 / 响应保存到此目录。文件是纯文本,将包含原始请求 / 响应以及每个文件的 JSON 字符串。用一个 “。” 为每个目标自动生成目录名称。可以使用附带的 replay.pl 脚本来重放这些保存的项目,该脚本可以通过代理路由项目。-timeout        等待超时之前等待的秒数。默认超时为 10 秒。-Tuning    调整选项将控制 Nikto 针对目标进行的测试。默认情况下,将执行所有测试。如果指定了任何选项,则将仅执行这些测试。如果使用 “x” 选项,它将颠倒逻辑并仅排除那些测试。使用参考数字或字母指定类型,可以使用多个:
0 - 文件上传
1 - 感性趣的文件 / 在日志中可见
2 - 配置错误 / 默认文件
3 - 信息披露
4 - 注入(XSS / Script / HTML)
5 - 远程文件检索 - 内部 Web 根
6 - 拒绝服务
7 - 远程文件检索 - 服务器范围
8 - 命令执行 / 远程 Shell
9-SQL 注入
a - 身份验证绕过
b - 软件识别
c - 远程数据源包含
x - 反向调整选项(即,包括所有除指定的选项)
给定的字符串将从左到右进行解析,任何 x 字符都将应用于该字符右侧的所有字符。-Userdbs        加载用户定义的数据库而不是标准数据库。用户定义的数据库遵循与标准文件相同的语法,但是前缀为 “u”,例如 “ udb_tests”all - 禁用所有标准数据库并仅加载用户数据库
测试 - 禁用 db_tests 并加载 udb_tests。所有其他数据库均已正常加载。-until        运行直到指定的时间或持续时间,然后暂停。
持续时间以小时,分钟或秒为单位,例如:1h,60m,3600s
像 “mm dd hh:mm:ss” 之类的时间(mm,dd,ss 可选):12 1 22:30:00-update        直接从 cirt.net 更新插件和数据库。
-useproxy    使用配置文件中定义的 HTTP 代理。代理也可以直接设置为参数。
-Version        显示 Nikto 软件,插件和数据库版本。
-vhost        指定要发送到目标的主机头。

平时基本测试的操作就足以应付很多事情了,对于其他要求可以在命令所有选项中进行查找拼接到命令里即可!

相关文章:

Nikto工具使用指南

NiktoNikto是一款开源网站服务器扫描器&#xff0c;使用Perl开发&#xff0c;可以对服务器进行全面扫描&#xff0c;包括6400多个潜在危险的文件/cgi(通用网关接口&#xff08;Common Gateway Interface&#xff09;),废话不多说&#xff0c;直接上命令&#xff1a;基本测试&am…...

Git(4)之基本工具

Git基础之基本工具 Author&#xff1a;onceday date&#xff1a;2023年3月5日 满满长路有人对你微笑过嘛… windows安装可参考文章&#xff1a;git简易配置_onceday_CSDN博客 參考文档&#xff1a; 《progit2.pdf》&#xff0c;Progit2 Github。《git-book.pdf》 文章目录…...

好书推荐。

个人喜欢看传记&#xff0c;散文&#xff0c;历史等 二战名人传记&#xff0c;苏联列宁&#xff0c;朱可夫&#xff0c;斯大林等 英国首相丘吉尔&#xff0c;美国富兰克林&#xff0c;中国毛泽东等 创业&#xff1a;比尔盖&#xff0c;扎克伯格&#xff0c;苹果公司创始人乔…...

[Pytorch]DataSet和DataLoader逐句详解

将自己的数据集引入Pytorch是搭建属于自己的神经网络的重要一步&#xff0c;这里我设计了一个简单的实验&#xff0c;结合这个实验代码&#xff0c;我将逐句教会大家如何将数据引入DataLoader。 这里以目标检测为例&#xff0c;一个batch中包含图片文件、先验框的框体坐标、目标…...

【Kettle-佛系总结】

Kettle-佛系总结Kettle-佛系总结1.kettle介绍2.kettle安装3.kettle目录介绍4.kettle核心概念1.转换2.步骤3.跳&#xff08;Hop&#xff09;4.元数据5.数据类型6.并行7.作业5.kettle转换1.输入控件1.csv文件输入2.文本文件输入3.Excel输入4.XML输入5.JSON输入6.表输入2.输出控件…...

JavaSE网络编程

JavaSE网络编程一、基本概念二、常用类三、使用方法1、创建服务器端Socket2、创建客户端Socket3、创建URL对象JavaSE中的网络编程模块提供了一套完整的网络编程接口&#xff0c;可以方便地实现各种基于网络的应用程序。本文将介绍JavaSE中网络编程模块的基本知识、常用类以及使…...

9万字“联、管、用”三位一体雪亮工程整体建设方案

本资料来源公开网络&#xff0c;仅供个人学习&#xff0c;请勿商用。部分资料内容&#xff1a; 1、 总体设计方案 围绕《公共安全视频监控建设联网应用”十三五”规划方案》中的总体架构和一总两分结构要求的基础上&#xff0c;项目将以“加强社会公共安全管理&#xff0c;提高…...

springboot自动装配原理

引言 springboot的自动装配是其重要特性之一&#xff0c;在使用中我们只需在maven中引入需要的starter&#xff0c;然后相应的Bean便会自动注册到容器中。例如&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spr…...

Docker学习(二十)什么是分层存储?

目录1.简介2.什么是 Union Mount&#xff1f;3.分层介绍1&#xff09;lowerdir 层&#xff08;镜像层&#xff09;2&#xff09;upperdir 层&#xff08;容器层&#xff09;3&#xff09;merged 层4.工作原理1&#xff09;读&#xff1a;2&#xff09;写&#xff1a;3&#xff…...

Vue组件进阶(动态组件,组件缓存,组件插槽,具名插槽,作用域插槽)与自定义指令

Vue组件进阶与自定义指令一、Vue组件进阶1.1 动态组件1.2 组件缓存1.3 组件激活和非激活1.4 组件插槽1.5 具名插槽1.6 作用域插槽1.7 作用域插槽使用场景二、自定义指令2.1 自定义指令--注册2.2 自定义指令-传参一、Vue组件进阶 1.1 动态组件 多个组件使用同一个挂载点&#x…...

僵尸进程与孤儿进程

概念 在 Unix/Linux 系统中&#xff0c;正常情况下&#xff0c;子进程是通过父进程创建的&#xff0c;且两者的运行是相互独立的&#xff0c;父进程永远无法预测子进程到底什么时候结束。当一个进程调用 exit 命令结束自己的生命时&#xff0c;其实它并没有真正的被销毁&#…...

基于注解@Transactional事务基本用法

关于概念性的放在最下面,熟读几遍 在使用时候也没多关注,总是加个Transactional 初识下 一般查询 Transactional(propagation Propagation.SUPPORTS) 增删改 Transactional(propagation Propagation.REQUIRED) 当然不能这么马虎 Spring中关于事务的传播 一个个测试,事…...

Go项目(商品微服务-2)

文章目录简介handler商品分类轮播图品牌和品牌与分类oss前端直传库存服务数据不一致redis 分布式锁小结简介 开发商品微服务 API 层类似的&#xff0c;将 user-web 目拷贝一份&#xff0c;全局替换掉 user-web修改 config 去掉不用的配置更新本地和远程 nacos 配置文件 把 pro…...

无头盔PICO-unity开发日记1(抓取、传送)

目录 可传送的地面 锚点传送 修改射线颜色&#xff08;可交互/不可交互&#xff09; 球、抓手组件 ||刚体&#xff08;重力&#xff09;组件 可传送的地面 1.地面添加组件 2.XR交互管理器添加传送提供者 3.地面设置传送提供者 4.XR交互管理器添加locomotion system 5.拖拽 完…...

Material3设计指南笔记

Material3设计指南笔记Table of Contents1. 颜色color1.1. 颜色分类1.2. 强调色accent color1.3. 中性色neutral color1.4. 辅助色additional color1.5. 调色盘tonal palettes1.6. 颜色规范2. z轴高度 elevation3. 图标 icon4. 动画 motion5. 形状 shape6. 字体1. 颜色color1.1…...

JavaWeb--会话技术

会话技术1 会话跟踪技术的概述2 Cookie2.1 Cookie的基本使用2.2 Cookie的原理分析2.3 Cookie的使用细节2.3.1 Cookie的存活时间2.3.2 Cookie存储中文3 Session3.1 Session的基本使用3.2 Session的原理分析3.3 Session的使用细节3.3.1 Session钝化与活化3.3.2 Session销毁目标 理…...

Git图解-为啥是Git?怎么装?

目录 零、学习目标 一、版本控制 1.1 团队开发问题 1.2 版本控制思想 1.2.1 版本工具 二、Git简介 2.1 简介 2.2 Git环境的搭建 三、转视频版 零、学习目标 掌握git的工作流程 熟悉git安装使用 掌握git的基本使用 掌握分支管理 掌握IDEA操作git 掌握使用git远程仓…...

HTML 框架

HTML 框架 <iframe>标签规定一个内联框架。 一个内联框架被用来在当前 HTML 文档中嵌入另一个文档。 通过使用框架&#xff0c;你可以在同一个浏览器窗口中显示不止一个页面。 iframe 语法&#xff1a; <iframe src"URL"></iframe> 该URL指向不同的…...

Rust特征(Trait)

特征(Trait) 特征&#xff08;trait&#xff09;是rust中的概念&#xff0c;类似于其他语言中的接口&#xff08;interface&#xff09;。在之前的代码中&#xff0c;我们也多次见过特征的使用&#xff0c;例如 #[derive(Debug)]&#xff0c;它在我们定义的类型(struct)上自动…...

详解七大排序算法

对于排序算法&#xff0c;是我们在数据结构阶段&#xff0c;必须要牢牢掌握的一门知识体系&#xff0c;但是&#xff0c;对于排序算法&#xff0c;里面涉及到的思路&#xff0c;代码……各种时间复杂度等&#xff0c;都需要我们&#xff0c;记在脑袋瓜里面&#xff01;&#xf…...

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇&#xff0c;在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下&#xff1a; 【Note】&#xff1a;如果你已经完成安装等操作&#xff0c;可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作&#xff0c;重…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性&#xff0c;不同版本的Docker对内核版本有不同要求。例如&#xff0c;Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本&#xff0c;Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包&#xff08;Closure&#xff09;&#xff1f;闭包有什么应用场景和潜在问题&#xff1f;2.解释 JavaScript 的作用域链&#xff08;Scope Chain&#xff09; 二、原型与继承3.原型链是什么&#xff1f;如何实现继承&a…...

智能仓储的未来:自动化、AI与数据分析如何重塑物流中心

当仓库学会“思考”&#xff0c;物流的终极形态正在诞生 想象这样的场景&#xff1a; 凌晨3点&#xff0c;某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径&#xff1b;AI视觉系统在0.1秒内扫描包裹信息&#xff1b;数字孪生平台正模拟次日峰值流量压力…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...