Nikto 蔚落 2022-08-05 20:57 126阅读 0赞 Nikto 转载请注明,原文转自 [http://blog.csdn.net/fly\_heart\_yuan/article/details/6799043][http_blog.csdn.net_fly_heart_yuan_article_details_6799043] 一 简介 Nikto 是一款开放源代码的、功能强大的WEB扫描评估软件,能对web服务器多种安全项目进行测试的扫描软件,去寻找已知有名的漏洞,能在230多种服务器上扫描出 2600多种有潜在危险的文件、CGI及其他问题,它可以扫描指定主机的WEB类型、主机名、特定目录、COOKIE、特定CGI漏洞、返回主机允许的 http模式等等。它也使用LibWhiske库,但通常比Whisker更新的更为频繁。Nikto是网管安全人员必备的WEB审计工具之一。 二 安装 a 安装LibWhiske wget http://sourceforge.net/projects/whisker/files/libwhisker/2.5/libwhisker2-2.5.tar.gz/download?\_test=goal tar -xzf libwhisker2-2.5.tar.gz b 安装nikto wget --no-check-certificate https://cirt.net/nikto/nikto-2.1.4.tar.gz tar -xf nikto-2.1.4.tar cd nikto-2.1.4 三 使用 1. 快速入门 进行最基本的nikto扫描,你只需要指定目标的host(通过 -h 参数指定),也可以指定要扫描的端口号(通过 -p 来指定),默认是80 <span style="font-size: 16px;">perl nikto.pl -h 192.168.0.1</span> 2 多端口扫描 <span style="font-size: 16px;">#扫描80,88,443三个端口</span> <span style="font-size: 16px;">perl nikto.pl -h 192.168.0.1 -p 80,88,443</span> <pre class="screen" name="code" style="white-space: pre-wrap; word-wrap: break-word;"><span style="font-size: 16px;">#扫描80~90共10个端口</span> <span style="font-size: 16px;">perl nikto.pl -h 192.168.0.1 -p 80-90</span> 3 多host扫描 \-h 参数的值为一个文件,该文件存一系列的host或者ip,文件的格式要求是,每个host必须占一行,端口号放行末,端口号通过冒号或者逗号和host,其他端口号区分开,给一个文件示例 <span style="font-size: 16px;">192.168.0.1:80 http://192.168.0.1:8080/ 192.168.0.3</span> 4 交互功能 在扫描期间,按下下面任意键,可开启或关闭相关功能,注意这些命令是区分大小写的 <table style="color:rgb(0,0,0); font-family:Arial; font-size:14px; line-height:26px"> <tbody> <tr> <td><span style="font-size:16px">空格</span></td> <td><span style="font-size:16px">报告当前扫描状态</span></td> </tr> <tr> <td><span style="font-size:16px">v</span></td> <td><span style="font-size:16px">详细模式的开启/关闭</span></td> </tr> <tr> <td><span style="font-size:16px">d</span></td> <td><span style="font-size:16px">调试模式的开启/关闭</span></td> </tr> <tr> <td><span style="font-size:16px">e</span></td> <td><span style="font-size:16px">开启/关闭错误报告</span></td> </tr> <tr> <td><span style="font-size:16px">p</span></td> <td><span style="font-size:16px">进展情况报告的开启/关闭</span></td> </tr> </tbody> </table> 四 命令行参数 \-Cgidirs 扫描CGI目录。 \-config 使用指定的config文件来替代安装在本地的config.txt文件 \-dbcheck 选择语法错误的扫描数据库。 \-evasion 使用LibWhisker中对IDS的躲避技术,可使用以下几种类型: 1.随机URL编码(非UTF-8方式) 2.自选择路径(/./) 3.虚假的请求结束 4.长的URL请求 5.参数隐藏 6.使用TAB作为命令的分隔符 7.大小写敏感 8.使用Windows路径分隔符\\替换/ 9.会话重组 \-findonly 仅用来发现HTTP和HTTPS端口,而不执行检测规则 \-Format 指定检测报告输出文件的格式,默认是txt文件格式(csv/txt/htm) \-host 目标主机,主机名、IP地址、主机列表文件。 \-id ID和密码对于授权的HTTP认证。格式:id:password \-mutate 变化猜测技术 1.使用所有的root目录测试所有文件 2.猜测密码文件名字 3.列举Apache的用户名字(/~user) 4.列举cgiwrap的用户名字(/cgi-bin/cgiwrap/~user) \-nolookup 不执行主机名查找 \-output 报告输出指定地点 \-port 扫描端口指定,默认为80端口。 \-Pause 每次操作之间的延迟时间 \- Display 控制Nikto输出的显示 1.直接显示信息 2.显示的cookies信息 3.显示所有200/OK的反应 4.显示认证请求的URLs 5.Debug输出 \-ssl 强制在端口上使用SSL模式 \-Single 执行单个对目标服务的请求操作。 \-timeout 每个请求的超时时间,默认为10秒 \-Tuning Tuning 选项控制Nikto使用不同的方式来扫描目标。 0.文件上传 1.日志文件 2.默认的文件 3.信息泄漏 4.注射(XSS/Script/HTML) 5.远程文件检索(Web 目录中) 6.拒绝服务 7.远程文件检索(服务器) 8.代码执行-远程shell 9.SQL注入 a.认证绕过 b.软件关联 g.属性(不要依懒banner的信息) x.反向连接选项 \-useproxy 使用指定代理扫描 \-update 更新插件和数据库 例子:使用Nikto扫描目标主机10.0.0.12的phpwind论坛网站。 Perl nikto.pl –h 10.0.0.12 –o test.txt 五 配置文件 1.配置文件所在位置 加压后文件根目录下的nikto.conf 2.格式 类似于unix标准配置文件格式 3.参数 CLIOPTS:设置默认的命令后缀,例如 CLIOPTS=-output results.txt -Format text 这样设置过后,以后敲命令时,就不用再写这些参数了 NIKTODTD:指定nikto.dtd文件的相对路径,此文件是什么角色,我猜想应该是测试用例数据库 RFIURL: 远程文件包含漏洞。此值设为你想要远程包含的文件 SKIPPORTS:掠过端口配置 SKIPIDS:掠过的ID,用于测试数据库的 六 输出报告 七 示例报告分析 在谷歌搜索nikto reports 有了这样一份报告,我就拿他来试试我的小牛刀 [http://www.ruben-alves.com/ficheiros/nikto-AT-localhost.html][http_www.ruben-alves.com_ficheiros_nikto-AT-localhost.html] tip:这是一份html格式的报告,生成命令为 perl nikto.pl -h xxxx -o result.html -F htm 个人认为,html格式的报告比txt格式的报告清晰多了的说,建议使用html报告格式 <table style="line-height:26px; font-family:tahoma; font-size:15pt; color:rgb(255,255,255); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td>Nikto Scan Summary</td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>Software Details</strong></td> <td><a href="http://cirt.net/" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">Nikto 2.00</a></td> </tr> <tr> <td><strong>CLI Options</strong></td> <td>-host localhost -output nikto@localhost -F html</td> </tr> <tr> <td><strong>Hosts Tested</strong></td> <td>1</td> </tr> </tbody> </table> 首先,告诉了我们关于nikto的信息,你使用的是nikto软件,版本号,命令行参数 <table style="line-height:26px; font-family:tahoma; font-size:15pt; color:rgb(255,255,255); border:thin solid rgb(0,0,0); background-color:rgb(0,0,102)"> <tbody> <tr> <td>localhost / 127.0.0.1</td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>Target IP</strong></td> <td>127.0.0.1</td> </tr> <tr> <td><strong>Target hostname</strong></td> <td>localhost</td> </tr> <tr> <td><strong>Target Port</strong></td> <td>80</td> </tr> <tr> <td><strong>HTTP Server</strong></td> <td>Apache/2.2.4 (Ubuntu) PHP/5.2.3-1ubuntu6</td> </tr> <tr> <td><strong>Start Time</strong></td> <td>2007-11-14 0:09:00</td> </tr> <tr> <td><strong>End Time</strong></td> <td>2007-11-14 0:09:00</td> </tr> <tr> <td><strong>Elapsed</strong></td> <td>17 Seconds</td> </tr> <tr> <td><strong>Site Link (Name)</strong></td> <td><a href="http://localhost/" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">http://localhost:80/</a></td> </tr> <tr> <td><strong>Site Link (IP)</strong></td> <td><a href="http://127.0.0.1/" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">http://127.0.0.1:80/</a></td> </tr> <tr> <td><strong>Items Tested</strong></td> <td>4342</td> </tr> <tr> <td><strong>Items Found</strong></td> <td>8</td> </tr> </tbody> </table> 上面的表格告诉我们的是目标服务器相关的信息,ip,域名,端口号,web服务器等等 <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>Information</strong></td> <td>OSVDB-877: HTTP method ('Allow' Header): 'TRACE' is typically only used for debugging and should be disabled. This message does not mean it is vulnerable to XST.</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/877" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-877</a></td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>Information</strong></td> <td>PHP/5.2.3-1ubuntu6 appears to be outdated (current is at least 5.2.4)</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td> </td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>Information</strong></td> <td>Apache/2.2.4 appears to be outdated (current is at least Apache/2.2.6). Apache 1.3.39 and 2.0.61 are also current.</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td> </td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>Information</strong></td> <td>PHP/5.2.3-1ubuntu6 appears to be outdated (current is at least 5.2.4)</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td> </td> </tr> </tbody> </table> 上述是针对服务器提出的几种建议 下面的表格厉害了,注意看description <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>URI</strong></td> <td>/phpmyadmin/<br> <span style="color:rgb(0,153,0); font-size:18px">( 这是相对于host的路径)</span></td> </tr> <tr> <td><strong>HTTP Method</strong></td> <td>GET</td> </tr> <tr> <td><strong>Description</strong></td> <td>phpMyAdmin is for managing MySQL databases, and should be protected or limited to authorized hosts.<br> <span style="color:rgb(0,153,0); font-size:18px">(phpmyadmin是负责管理mysql数据库的页面,应该限制访问权限)</span></td> </tr> <tr> <td><strong>Test Links</strong></td> <td>http://localhost:80/phpmyadmin/<br> http://127.0.0.1:80/phpmyadmin/</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/3092" title="More vuln information on OSVDB.org" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-3092</a></td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>URI</strong></td> <td>/icons/</td> </tr> <tr> <td><strong>HTTP Method</strong></td> <td>GET</td> </tr> <tr> <td><strong>Description</strong></td> <td>Directory indexing is enabled: /icons indexing<br> <span style="color:rgb(0,153,0); font-size:18px">(目录遍历漏洞)</span></td> </tr> <tr> <td><strong>Test Links</strong></td> <td>http://localhost:80/icons/<br> http://127.0.0.1:80/icons/</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/3268" title="More vuln information on OSVDB.org" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-3268</a></td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>URI</strong></td> <td>/</td> </tr> <tr> <td><strong>HTTP Method</strong></td> <td>TRACE</td> </tr> <tr> <td><strong>Description</strong></td> <td>TRACE option appears to allow XSS or credential theft. See http://www.cgisecurity.com/whitehat-mirror/WhitePaper_screen.pdf for details</td> </tr> <tr> <td><strong>Test Links</strong></td> <td>http://localhost:80/<br> http://127.0.0.1:80/</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/877" title="More vuln information on OSVDB.org" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-877</a></td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>URI</strong></td> <td>/index.php?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000</td> </tr> <tr> <td><strong>HTTP Method</strong></td> <td>GET</td> </tr> <tr> <td><strong>Description</strong></td> <td>PHP reveals potentially sensitive information via certain HTTP requests which contain specific QUERY strings.<br> <span style="color:rgb(0,153,0); font-size:18px">(访问上面的url,我们发现其实是phpinfo页面啊,确实包含了很多敏感信息)</span></td> </tr> <tr> <td><strong>Test Links</strong></td> <td>http://localhost:80/index.php?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000<br> http://127.0.0.1:80/index.php?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/12184" title="More vuln information on OSVDB.org" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-12184</a></td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>URI</strong></td> <td>/phpinfo.php</td> </tr> <tr> <td><strong>HTTP Method</strong></td> <td>GET</td> </tr> <tr> <td><strong>Description</strong></td> <td>Contains PHP configuration information</td> </tr> <tr> <td><strong>Test Links</strong></td> <td>http://localhost:80/phpinfo.php<br> http://127.0.0.1:80/phpinfo.php</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/3233" title="More vuln information on OSVDB.org" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-3233</a></td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>URI</strong></td> <td>/server-status</td> </tr> <tr> <td><strong>HTTP Method</strong></td> <td>GET</td> </tr> <tr> <td><strong>Description</strong></td> <td>This reveals Apache information. Comment out appropriate line in httpd.conf or restrict access to allowed hosts.</td> </tr> <tr> <td><strong>Test Links</strong></td> <td>http://localhost:80/server-status<br> http://127.0.0.1:80/server-status</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/561" title="More vuln information on OSVDB.org" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-561</a></td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>URI</strong></td> <td>/readme</td> </tr> <tr> <td><strong>HTTP Method</strong></td> <td>GET</td> </tr> <tr> <td><strong>Description</strong></td> <td>This might be interesting...</td> </tr> <tr> <td><strong>Test Links</strong></td> <td>http://localhost:80/readme<br> http://127.0.0.1:80/readme</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/3092" title="More vuln information on OSVDB.org" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-3092</a></td> </tr> </tbody> </table> <table style="line-height:26px; font-family:tahoma; font-size:11pt; color:rgb(0,0,102); border:thin solid rgb(0,0,0)"> <tbody> <tr> <td><strong>URI</strong></td> <td>/doc/</td> </tr> <tr> <td><strong>HTTP Method</strong></td> <td>GET</td> </tr> <tr> <td><strong>Description</strong></td> <td>The /doc/ directory is browsable. This may be /usr/doc.</td> </tr> <tr> <td><strong>Test Links</strong></td> <td>http://localhost:80/doc/<br> http://127.0.0.1:80/doc/</td> </tr> <tr> <td><strong>OSVDB Entries</strong></td> <td><a href="http://osvdb.org/48" title="More vuln information on OSVDB.org" style="color:rgb(255,153,0); text-decoration:none" rel="nofollow">OSVDB-48</a></td> </tr> </tbody> </table> 八 后记 同许多渗透测试工具一样,nikto提供给你的信息有局限性,如果nikto确定一个问题,很值得我们深究到底,因为全世界的每个黑客都可以轻易的找到相同的问题,另一方面,如果nikto什么也没找到,也不代表就不存在安全问题 随着你的安全测试变的成熟,你从nikto的扫描中得到的收益将越来越少。 转载请注明,原文转自 [http://blog.csdn.net/fly\_heart\_yuan/article/details/6799043][http_blog.csdn.net_fly_heart_yuan_article_details_6799043] 九 参考资料 [http://cirt.net/nikto2-docs/][http_cirt.net_nikto2-docs] [http_blog.csdn.net_fly_heart_yuan_article_details_6799043]: http://blog.csdn.net/fly_heart_yuan/article/details/6799043 [http_www.ruben-alves.com_ficheiros_nikto-AT-localhost.html]: http://www.ruben-alves.com/ficheiros/nikto-AT-localhost.html [http_cirt.net_nikto2-docs]: http://cirt.net/nikto2-docs/
相关 Nikto Nikto 转载请注明,原文转自 [http://blog.csdn.net/fly\_heart\_yuan/article/details/6799043][http_b 蔚落/ 2022年08月05日 20:57/ 0 赞/ 127 阅读
相关 Nikto 扫描 0x00:简介 nikto 是一款用来发现 web 应用程序漏洞的一个工具,扫描的内容大概包括服务器软件的版本,比较版本是否为最新,现版本和最新版的差以及这个版本可能存在 谁践踏了优雅/ 2022年04月12日 08:50/ 0 赞/ 290 阅读
相关 使用Nikto扫描网站漏洞 Nikto简介 Nikto是一个简单的开源Web服务器扫描程序,可以检查网站并报告它发现的可能用于利用或破解网站的漏洞。此外,它是业界使用最广泛的网站漏洞工具之一,并且在 「爱情、让人受尽委屈。」/ 2022年03月07日 02:04/ 0 赞/ 316 阅读
相关 [网络安全-2] docker下运行kali linux并配置安装web扫描器( nikto ) docker下运行kali linux并配置安装nikto 1. 背景 Kali Linux是一款开源的基于Debian的渗透测试专用操作系统,系统中包含一系列用于 我会带着你远行/ 2022年01月22日 12:43/ 0 赞/ 425 阅读
还没有评论,来说两句吧...