安全扫描工具nikto简单使用
作者:网络转载 发布时间:[ 2016/4/5 10:18:12 ] 推荐标签:数据库 安全扫描工具
简介
Nikto是一款开源的(GPL)网页服务器扫描器,它可以对网页服务器进行全面的多种扫描,包含超过3300种有潜在危险的文件/CGIs;超过625种服务器版本;超过230种特定服务器问题。扫描项和插件可以自动更新(如果需要)。基于Whisker/libwhisker完成其底层功能。
站点
https://cirt.net/Nikto2
github源码
https://github.com/sullo/nikto
使用手册
https://cirt.net/nikto2-docs
docker极速安装
官方说安装程序之前要装好Perl, Perl Modules, OpenSSL, LibWhisker 或者其他依赖,对于使用者来说麻烦的是安装环境依赖了,近一直在尝试docker部署各种公共服务,果断看下docker上有没有现成环境拿来用
# docker search nikto
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
k0st/alpine-nikto Nikto web scanner on Alpine (size: ~50 MB) 2 [OK]
kenney/nikto Image with nikto-2.1.5 that is useful for ... 2
activeshadow/nikto 0 [OK]
infoslack/nikto 0 [OK]
adamoss/nikto this is nikto with ssl support for X86 0
awilson/hydra-nikto Built on Ubuntu Trusty, has THC-Hydra and ... 0
选了kenney/nikto拿来用,在装有docker的机器上拉取镜像
docker pull kenney/nikto
docker inspect kenney/nikto
发现这个镜像的启动命令是bash,说明是一个脚本型的镜像,而不是服务型的镜像。
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"FILES=nikto-2.1.5"
],
"Cmd": [
"bash"
],
这个镜像实际上提供好了环境和安装好的脚本,使用者要做的是直接将执行命令传过去,如下简单示例,指定host和端口进行默认的扫描
docker run --rm -t kenney/nikto:latest nikto -h www.163.com -p 443
这里的–rm指的是执行完清理容器,这样不会有日志什么的残留在主机上
等待一会可以看到结果输出
# docker run --rm -t kenney/nikto:latest nikto -h www.163.com -p 443
- Nikto v2.1.5
---------------------------------------------------------------------------
+ Target IP: 122.228.237.158
+ Target Hostname: www.163.com
+ Target Port: 443
---------------------------------------------------------------------------
+ SSL Info: Subject: /C=CN/O=Sinorail Certification Authority/OU=x94xC1x8DxEF[xA2b7gx0DRxA1N-_xC3/CN=kyfw.12306.cn
Ciphers: ECDHE-RSA-AES256-GCM-SHA384
Issuer: /C=CN/O=Sinorail Certification Authority/CN=SRCA
+ Start Time: 2015-11-01 09:19:38 (GMT0)
---------------------------------------------------------------------------
+ Server: Cdn Cache Server V2.0
+ The anti-clickjacking X-Frame-Options header is not present.
+ Uncommon header 'x-via' found, with contents: 1.0 czdx90:88 (Cdn Cache Server V2.0), 1.0 wenzhoudianxin53:10 (Cdn Cache Server V2.0)
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ "robots.txt" retrieved but it does not contain any 'disallow' entries (which is odd).
+ Hostname 'www.163.com' does not match certificate's CN 'kyfw.12306.cn'
+ /kboard/: KBoard Forum 0.3.0 and prior have a security problem in forum_edit_post.php, forum_post.php and forum_reply.php
+ /lists/admin/: PHPList pre 2.6.4 contains a number of vulnerabilities including remote administrative access, harvesting user info and more. Default login to admin interface is admin/phplist
+ /ssdefs/: Siteseed pre 1.4.2 has 'major' security problems.
+ /sshome/: Siteseed pre 1.4.2 has 'major' security problems.
+ /tiki/tiki-install.php: Tiki 1.7.2 and previous allowed restricted Wiki pages to be viewed via a 'URL trick'. Default login/pass could be admin/admin
简单命令说明
Nikto扫描基本的是需要主机目标IP、主机端口。默认扫描的是80端口。扫描主机目标IP地址可以使用选项-h(host),指定端口可以使用选项-p(port)。如下所示:
perl nikto.pl –h 192.168.0.1 –p 443
Nikto也可以同时扫描多个端口,使用选项-p(port),可以扫描一段范围(比如:80-90),也可以扫描多个端口(比如:80,88,90)。下面扫描主机的80/88/443端口,如下所示:
Perl nikto.pl –h 192.168.0.1 –p 80,88,443
如果运行Nikto的主机是通过HTTP proxy来访问互联网的,也可以使用代理来扫描,使用选项-u(useproxy)。下面将通过HTTP proxy来扫描,
Nikto的升级可以通过从http://updates.cirt.net/网站下载来更新插件和数据库,也可以通过-update的命令来更新插件和数据库:如下所示:
Perl nikto.pl –update
Nikto的选项说明:
-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
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11