Nikto原理:
基于perl语言开发的开源WEB安全扫描器
Nikto功能:
识别网站软件版本搜索存在安全隐患的文件检查服务器配置漏洞检查WEB Application层面的安全隐患避免404误判(原因:很多服务器不遵循RFC标准,对于不存在的对象返回200响应码)常规扫描:
常用命令: nikto -host 目标 #扫描主机 nikto -host host.txt #扫描多个主机 nikto -host 目标 -ssl -port 443,8443,995 #-ssl:针对https进行扫描,-port:针对特定端口进行扫描 代理扫描: nikto -host 目标 -useproxy http://localhost:8080 #使用代理扫描,防止被发现从而被禁止攻击 联合Nmap扫描: nmap -p80 目标 | nikto -host #联合扫描,提高效率 使用LibWhisker绕过IDS/IPS的检测:10个参数 1-8、A、B niketo -host 目标 -ssl -port 443 -evasion 1358 #可添加多个参数 1 随机URI编码(非utf-8) 2 自选择路径(/. /) 3 过早结束的URL 4 使用长随机字符串 5 使用假参数 6 使用tab作为命令的分隔符 7 更改URL的大小写 8 使用windows的命令分隔符"\" A 使用回车0x0d作为请请求分隔符 B 使用二进制0x0b作为请请求分隔符文件配置:
/etc/nikto.conf:Nikto文件配置路径 可添加User-Agent、Cookie值
漏洞扫描:
-T选项包含很多小选项 –T 9表示扫描SQL注入漏洞 -T选项包含的小选项解释: 0 检查文件上传页面 1 检查web日志 2 检查错误配置或默认文件 3检查信息泄露问题 4 检查XSS/Script/HTML问题 5 从根目录检查是否存在可访问的文件 6 检查拒绝服务问题 7 从任意文件检索是否存在可访问文件 8 检查是否存在系统命令执行漏洞 9 检查SQL注入漏洞 a 检查认证绕过问题 b 识别安装的软件版本 c 检查源代码泄露问题 x 反向链接选项 如:扫描sql注入漏洞 nikto -h 目标 -T 9