本文已发表在专家专栏:[url]http://netsecurity.51cto.com/art/200712/62159.htm[/url]
【51CTO.com 独家特稿】随着信息技术的发展,网络应用越来越广泛,很多企业单位都依靠网站来运营,正因为业务的不断提升和应用,致使网站的安全性显得越来越重要。另一 方面,网络上的黑客也越来越多,而且在利益驱使下,很多黑客对网站发起攻击,并以此谋利。作为网站的管理人员,应该在黑客入侵之前发现网站的安全问题,使 网站能更好的发挥作用。那么究竟如何检查网站的安全隐患和漏洞呢?
下面我们介绍一款开放源代码的Web漏洞扫描软件,网站管理员可以用它对WEB站点进行安全审计,尽早发现网站中存在的安全漏洞。
Nikto是一款开放源代码的、功能强大的WEB扫描评估软件,能对web服务器多种安全项目进行测试的扫描软件,能在230多种服务器上扫描出 2600多种有潜在危险的文件、CGI及其他问题,它可以扫描指定主机的WEB类型、主机名、特定目录、COOKIE、特定CGI漏洞、返回主机允许的 http模式等等。它也使用LibWhiske库,但通常比Whisker更新的更为频繁。Nikto是网管安全人员必备的WEB审计工具之一。
Nikto最新版本为2.0版,官方下载网站:[url]http://www.cirt.net/[/url]
Nikto是基于PERL开发的程序,所以需要PERL环境。Nikto支持Windows(使用ActiveState Perl环境)、Mac OSX、多种Linux 或Unix系统。Nikto使用SSL需要Net::SSLeay PERL模式,则必须在Unix平台上安装OpenSSL。具体的可以参考nikto的帮助文档。
从官方网站上下载nikto-current.tar.gz文件,在Linux系统解压操作:
tar -xvf nikto-current.tar.gz
gzip -d nikto-current.tar
gzip -d nikto-current.tar
解压后的结果如下所示:
Config.txt、docs、kbase、nikto.pl、plugins、 templates
Config.txt、docs、kbase、nikto.pl、plugins、 templates
Nikto的使用说明:
Nikto扫描需要主机目标IP、主机端口。默认扫描的是80端口。扫描主机目标IP地址可以使用选项-h(host)。下面将扫描IP为192.168.0.1的TCP 80端口,如下所示:
perl nkito.pl –h 192.168.0.1
也可以自定义扫描的端口,可以使用选项-p(port),下面将扫描IP为192.168.0.1的TCP 443端口,如下所示:
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来扫描,如下所示:
Perl nikto.ph –h 192.168.0.1 –p 80 –u
Nikto的更新:
Nikto的升级可以通过-update的命令来更新插件和数据库,如下所示:
Perl nikto.ph –update
也可以通过从网站下载来更新插件和数据库:[url]http://updates.cirt.net/[/url]
Nikto的选项说明:
-Cgidirs
扫描CGI目录。
扫描CGI目录。
-config
使用指定的config文件来替代安装在本地的config.txt文件
使用指定的config文件来替代安装在本地的config.txt文件
-dbcheck
选择语法错误的扫描数据库。
选择语法错误的扫描数据库。
-evasion
使用LibWhisker中对IDS的躲避技术,可使用以下几种类型:
1.随机URL编码(非UTF-8方式)
2.自选择路径(/./)
3.虚假的请求结束
4.长的URL请求
5.参数隐藏
6.使用TAB作为命令的分隔符
7.大小写敏感
8.使用Windows路径分隔符\替换/
9.会话重组
使用LibWhisker中对IDS的躲避技术,可使用以下几种类型:
1.随机URL编码(非UTF-8方式)
2.自选择路径(/./)
3.虚假的请求结束
4.长的URL请求
5.参数隐藏
6.使用TAB作为命令的分隔符
7.大小写敏感
8.使用Windows路径分隔符\替换/
9.会话重组
-findonly
仅用来发现HTTP和HTTPS端口,而不执行检测规则
仅用来发现HTTP和HTTPS端口,而不执行检测规则
-Format
指定检测报告输出文件的格式,默认是txt文件格式(csv/txt/htm)
指定检测报告输出文件的格式,默认是txt文件格式(csv/txt/htm)
-host
目标主机,主机名、IP地址、主机列表文件。
目标主机,主机名、IP地址、主机列表文件。
-id
ID和密码对于授权的HTTP认证。格式:id:password
ID和密码对于授权的HTTP认证。格式:id:password
-mutate
变化猜测技术
1.使用所有的root目录测试所有文件
2.猜测密码文件名字
3.列举Apache的用户名字(/~user)
4.列举cgiwrap的用户名字(/cgi-bin/cgiwrap/~user)
变化猜测技术
1.使用所有的root目录测试所有文件
2.猜测密码文件名字
3.列举Apache的用户名字(/~user)
4.列举cgiwrap的用户名字(/cgi-bin/cgiwrap/~user)
-nolookup
不执行主机名查找
不执行主机名查找
-output
报告输出指定地点
报告输出指定地点
-port
扫描端口指定,默认为80端口。
扫描端口指定,默认为80端口。
-Pause
每次操作之间的延迟时间
每次操作之间的延迟时间
- Display
控制Nikto输出的显示
1.直接显示信息
2.显示的cookies信息
3.显示所有200/OK的反应
4.显示认证请求的URLs
5.Debug输出
控制Nikto输出的显示
1.直接显示信息
2.显示的cookies信息
3.显示所有200/OK的反应
4.显示认证请求的URLs
5.Debug输出
-ssl
强制在端口上使用SSL模式
强制在端口上使用SSL模式
-Single
执行单个对目标服务的请求操作。
执行单个对目标服务的请求操作。
-timeout
每个请求的超时时间,默认为10秒
每个请求的超时时间,默认为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.反向连接选项
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
查看test.txt文件,如下图所示:
图1 |
通过上面的扫描结果,我们可以发现这个Phpwind论坛网站,是在windows操作系统上,使用Apache/2.2.4版本,Php/5.2.0版本,以及系统默认的配置文件和路径等。
综上所述,Nikto工具可以帮助我们对Web的安全进行审计,及时发现网站存在的安全漏洞,对网站的安全做进一步的扫描评估。
相关推荐
Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说。。。 root@91ri.org:~# cd /pentest/web/nikto/ root@91ri.org:/pentest...
- **简介**:Acunetix Web Vulnerability Scanner 是一款商业级别的 Web 漏洞扫描工具,可以检测多种 Web 安全漏洞。 - **特点**: - 支持 SQL 注入、XSS 等常见 Web 攻击的检测。 - 用户界面友好,易于使用。 - ...
2. **漏洞扫描**:运行工具后,它会自动遍历指定的URL,检查ThinkPHP框架中的常见漏洞。这个过程可能需要一些时间,因为工具会尝试各种可能的攻击向量。 3. **结果分析**:扫描完成后,工具会生成一份报告,列明...
漏洞扫描工具是确保系统安全的重要手段之一,它们可以帮助检测并识别潜在的安全弱点,从而及时修复,防止恶意攻击者利用这些漏洞。本文将详细介绍两种常用的漏洞扫描工具——X-Scan和Nikto。 首先,我们来了解X-...
Web 安全扫描工具综述 在 Web 应用程序安全中,扫描工具扮演着至关重要的角色。黑客经常会寻找 Web 页面的漏洞...这十大 Web 安全扫描工具可以帮助我们检测和修复 Web 应用程序中的漏洞,提高 Web 应用程序的安全性。
这是一个开源的Web服务器扫描程序,它可以对Web服务器的多种项目(包括3500个潜在的危险文件/CGI,以及超过900个服务器版本,还有250多个服务器上的版本特定问题)进行全面的测试。其扫描项目和插件经常更新并且可以...
"WEB安全测试工具" WEB安全测试是一种检测和评估Web应用程序和服务器安全性的方法。为了帮助用户造就安全的Web站点,扫描程序可以在黑客“黑”你之前,先测试一下自己系统中的漏洞。下面是10大Web漏洞扫描程序,供...
它包含了一系列工具,可以用来执行各种类型的Web应用程序渗透测试,包括但不限于漏洞扫描、漏洞利用等。Burp Suite的强大之处在于它可以与其他工具集成工作,支持多种插件扩展,为用户提供了一个高度灵活的测试环境...
防范方法包括使用参数化查询和扫描工具进行检测,例如n-stealth、webinspect、nikto等。 - **访问控制**: 访问控制测试关注于确保只有授权用户才能访问特定资源。任何允许非授权访问的行为都可能导致安全风险。 ...
标题提到的"一款很好的用的安全扫描工具",指的是能够帮助我们检测软件潜在安全漏洞的工具。这些工具通过自动化扫描,可以有效地发现代码中的安全风险,从而提高软件的安全性。 描述中提及的“软件安全测试工作”是...
3. **漏洞扫描**:利用Nessus、OpenVAS、 Nikto等工具对目标系统进行自动化漏洞扫描,找出潜在的安全问题。 4. **Web应用漏洞分析**:深入讲解SQL注入、XSS(跨站脚本攻击)、CSRF(跨站请求伪造)等常见Web应用...
Nikto -Web应用程序漏洞扫描程序 OpenVAS-开源漏洞扫描器和管理器 OWASP Zed Attack Proxy-针对Web应用程序的渗透测试工具 Secapps-集成的Web应用程序安全测试环境 w3af -Web应用程序攻击和审核框架 Wapiti -Web应用...
标题 "Nikto-Web-Server-Scanner" 指的是一个开源的网络服务器扫描工具,专门用于...在深入理解Nikto的工作原理后,可以结合其他安全工具,如Nmap、OpenVAS等,构建更完整的安全评估流程,为网络安全提供全方位的保障。
2. **漏洞扫描**:漏洞扫描工具如OpenVAS、Nessus和Qualys等,会自动测试系统是否存在已知安全漏洞。这些工具通常包含一个庞大的漏洞数据库,可以定期更新以涵盖最新的威胁。 3. **DNS扫描**:DNS(域名系统)扫描...
Web安全工具主要用于检测Web应用程序中存在的各种安全漏洞,确保Web应用能够安全地运行在网络环境中。随着Web应用变得越来越复杂,其安全性也成为了关注的重点。常见的Web安全威胁包括SQL注入、跨站脚本攻击(XSS)、...
除了Nikto和AppScan之外,还有一些其他的免费Web安全检测工具,例如OWASP ZAP、Acunetix等。这些工具可以辅助进行更全面的安全测试。 #### 四、具体的测试点 1. **上传功能** - **绕过文件上传检查**:测试能否绕...
Nikto 是一款开放源代码的、功能强大的WEB扫描评估软件,能对web服务器多种安全项目进行测试的扫描软件,能在230多种服务器上扫描出 2600多种有潜在危险的文件、CGI及其他问题,它可以扫描指定主机的WEB类型、主机名...
它比一些免费的Web扫描程序,如Whisker/libwhisker、 Nikto等的升级频率更高,它宣称含有“30000个漏洞和漏洞程序”以及“每天增加大量的漏洞检查”,不过这种说法令人质疑。还要注意,实际上所有通用的VA工具,如...
通过将各种专业的安全工具集成,如Nessus、OpenVAS、 Nikto等,Slime能够提供多样化的扫描能力,覆盖了网络端口扫描、弱口令检测、Web应用漏洞扫描、操作系统指纹识别等多种功能。这种设计使得用户无需逐一安装和...