分享
 
 
 

WEB安全工具

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

随着INTERNET的普及,现在的WEB站点将面对更多的安全威胁。本文将介绍一些Linux环境下的一些帮助系统管理员抵御网络攻击的自由安全工具。

现在,有大量的自由软件可以帮助我们加强WEB服务器的安全。然而,在商业领域,只有Cybercop ( www.nai.com)、ISS ( www.iss.net)、Retina ( www.eeye.com)等几种相关产品。

加强WEB服务器的安全主要从三个方面入手。1).其所处的网络;2).运行的操作系统;3).服务器上运行的应用程序。本文我将详细介绍一些工具,你可以使用这些工具来加强自己WEB服务器的安全。

对于WEB服务器的测试最好能够采用结构化的方式。如果你是管理的是一个小网络,你可能对于每台服务器使用的操作系统和运行的程序有比较清楚的了解。但是对于一个大型网络,要对每台服务器都有清楚的了解是非常困难的。在这种情况下,可以采取以下四个步骤,进行了解:

指纹特征分析:扫描主机的操作系统、运行的应用程序和提供的服务。

缺陷分析:分析操作系统、应用程序、系统服务的潜在安全缺陷。

入侵测试:尝试利用上一步发现的缺陷进行攻击。

加固系统:修补上一步发现的缺陷,尽量减小系统的脆弱性。

本文将集中讨论前两步。

指纹特征分析

在网络安全规划中,指纹特征分析总是首先要做的。也就是说,在进行实际的测试之前,你不许知道测试目标使用的操作系统、运行的应用程序和提供的服务。这些细节可以帮助你发现潜在的安全缺陷。要知道这些细节,首先要判断系统的操作系统和打开的端口。

判断操作系统

nmap是一个伟大的端口扫描和操作系统检测工具,使用nmap可以非常有效地发现检测目标使用的操作系统:

#nmap -sT -O 192.168.1.1

Starting nmap V. 2.54BETA5 ( www.insecure.org/nmap/ )

TCP Sequence Prediction: Class=truly random

Difficulty=9999999 (Good luck!)

Remote operating system guess: Linux 2.0.32-34

从输出可以看出目标使用Linux操作系统。nmap是通过分析收到的报文议判断操作系统的类型的。

端口扫描

然后,我们进行端口扫描来判断目标打开的端口。如果可以和系统的某个服务建立连接,那么在端口上监听的服务进程就存在安全缺陷就可能被利用。

#nmap -sT 192.168.1.1

Starting nmap V. 2.54BETA5 ( www.insecure.org/nmap/ )

Intesting ports on 192.168.1.1 (206.135.57.167):

(The 1529 ports scanned but not shown below are in state: closed)

Port State Service

19/tcp open chargen

21/tcp open ftp

23/tcp open telnet

25/tcp open smtp

37/tcp open time

79/tcp open finger

80/tcp filtered http

113/tcp open auth

443/tcp filtered https

1723/tcp filtered pptp

Nmap run completed -- 1 IP address (1 host up) scanned in 12 seconds

扫描完毕TCP端口之后,我们还要找出打开的UDP端口:

#nmap -sU 192.168.1.1

Starting nmap V. 2.54BETA5 ( www.insecure.org/nmap/ )

Port State Service

37/udp open time

53/udp open domain

67/udp open bootps

69/udp open tftp

94/udp open objcall

111/udp open sunrpc

从端口扫描结果反县可以发现系统巡行ftp、http、auth、https、pptp、telnet、chargen、smtp、finger、time、domain、bootps、tftp、objcall、sunrpc。现在,我们把注意力转到Linux操作系统和检测目标提供的这些服务中存在的安全缺陷。完成了以上的信息收集,下面我们还需要判断WEB服务器是否能够正常提供服务。

netcat

netcat(nc)是一个简单的UNIX网络工具,它可以使用TCP或者UDP协议通过网络连接读写数据。它被设计为一个稳定的后端(back-end)工具,能够直接由其它程序和脚本轻松驱动。同时,它还是一个具有丰富功能的网络调试和探测工具,它能够建立你需要的几乎所有类型的连接,还有几个很有意思的内置功能。现在,我们使用nc建立到WEB服务器的连接,并发出一个HTML头请求:

#nc 192.168.1.2 80

GET HEAD/HTTP1.0

HTTP/1.1 400 Bad Request

Server: Microsoft-IIS/4.0

Date: Wed, 06 Dec 2000 00:45:56 GMT

Content-Type: text/html

Set-Cookie: ASPSESSIONIDQGGQQQPO=MJMCGMIAPIHOGLBNLFJPKCAH; path=/

Cache-control: Private

通过收到的信息,我们可以确定测试目标使用的WEB服务器是Microsoft IIS4。现在,我们能够把我们的安全规划限制在操作系统、WEB服务器版本、以及服务器上的应用程序了。

从上面的扫描中,我们可以看到服务器中还有其它的一些端口也打开了。这些打开的端口可能有许多缺陷。在服务器中,打开的端口应该有严格的限制,否则对带来很多安全缺陷。在知道了上面这些信息之后,我们可以进入下一步进行缺陷分析了。

缺陷分析

缺陷分析可以集中于两个方面:操作系统和应用程序。不过,这里我们只关心应用程序,也就是WEB服务器软件。

缺陷扫描

有些缺陷扫描程序能够综合已知的WEB安全缺陷。下面我们就使用这类程序对网站进行缺陷扫描。

whisker

whisker是一个非常好的WEB服务器缺陷扫描软件。它能够进行大量的缺陷扫描,而且升级非常频繁,能够很快地加入对新缺陷的检查。

#./whisker.pl -h 192.168.1.2 -i -v

-- whisker / v1.4.0 / rain forest puppy / www.wiretrip.net --

- Loaded script database of 1968 lines

= - = - = - = - = - =

= Host: 192.168.1.2

+ 404 Object Not Found: HEAD /

= Server: Microsoft-IIS/4.0

- Appending ::\, %2E, or 0x81 to URLs may give script source

- Also try +.htr and %20%20.htw tricks

- Security settings on directories can be bypassed if you use 8.3 names

+ 404 Object Not Found: GET /cfdocs/

+ 403 Access Forbidden: GET /scripts/

+ 403 Access Forbidden: GET /scripts/cfcache.map

+ 404 Object Not Found: GET /cfcache.map

+ 404 Object Not Found: GET /cfide/Administrator/startstop.html

+ 404 Object Not Found: GET /cfappman/index.cfm

+ 404 Object Not Found: GET /cgi-bin/

+ 404 Object Not Found: GET /whisker.ida

+ 404 Object Not Found: GET /whisker.idc

+ 404 Object Not Found: GET /whisker.idq

+ 404 Object Not Found: GET /whisker.htw

+ 404 Object Not Found: GET /whisker.htr

+ 403 Access Forbidden: GET /scripts/cpshost.dll

+ 404 Object Not Found: GET /samples/search/queryhit.htm

+ 404 Object Not Found: GET /adsamples/config/site.csc

+ 403 Access Forbidden: GET /scripts/counter.exe

+ 404 Object Not Found: GET /scripts/repost.asp

+ 404 Object Not Found: GET /scripts/postinfo.asp

+ 403 Access Forbidden: GET /scripts/fpadmcgi.exe

+ 403 Access Forbidden: GET /scripts/samples/

+ 403 Access Forbidden: GET /scripts/samples/search/webhits.exe

+ 403 Access Forbidden: GET /scripts/iisadmin/

+ 403 Access Forbidden: GET /scripts/iisadmin/ism.dll

+ 404 Object Not Found: GET /msadc/

+ 404 Object Not Found: GET /Sites/

+ 404 Object Not Found: GET /SiteServer/Publishing/viewcode.asp

+ 404 Object Not Found: GET /advworks/equipment/catalog_type.asp

+ 404 Object Not Found: GET /iisadmpwd/aexp4b.htr

+ 403 Access Forbidden: HEAD /scripts/samples/details.idc

+ 403 Access Forbidden: HEAD /scripts/samples/ctguestb.idc

+ 200 OK: HEAD /scripts/tools/newdsn.exe

- this can be used to make DSNs, useful in use with our ODBC exploit

- and the RDS exploit (with msadcs.dll)

+ 403 Access Forbidden: GET /scripts/iisadmin/bdir.htr

+ 404 Object Not Found: HEAD /carbo.dll

+ 403 Access Forbidden: HEAD /scripts/proxy/

+ 403 Access Forbidden: HEAD /scripts/proxy/w3proxy.dll

+ 404 Object Not Found: HEAD /prd.i/pgen/

+ 404 Object Not Found: HEAD /cgi-win/

+ 403 Access Forbidden: HEAD /scripts/nlog-smb.cgi

+ 403 Access Forbidden: HEAD /scripts/wwwboard/

+ 404 Object Not Found: HEAD /wwwboard/

+ 403 Access Forbidden: HEAD /scripts/wwwboard.pl

+ 403 Access Forbidden: HEAD /scripts/wwwboard/wwwboard.pl

+ 403 Access Forbidden: HEAD /scripts/wwwboard.cgi

+ 403 Access Forbidden: HEAD /scripts/wwwboard/wwwboard.cgi

+ 404 Object Not Found: HEAD /logs/

+ 404 Object Not Found: HEAD /database/

+ 404 Object Not Found: HEAD /databases/

+ 403 Access Forbidden: HEAD /scripts/campas

+ 403 Access Forbidden: HEAD /scripts/guestbook.cgi

+ 403 Access Forbidden: HEAD /scripts/guestbook.pl

+ 403 Access Forbidden: HEAD /scripts/edit.pl

+ 403 Access Forbidden: HEAD /scripts/webbbs.cgi

+ 403 Access Forbidden: HEAD /scripts/whois_raw.cgi

+ 404 Object Not Found: HEAD /webcart/

+ 404 Object Not Found: HEAD /webcart-lite/

+ 403 Access Forbidden: HEAD /scripts/AnyBoard.cgi

+ 403 Access Forbidden: HEAD /scripts/admin.php

+ 403 Access Forbidden: HEAD /scripts/code.php

+ 403 Access Forbidden: HEAD /scripts+ 403 Access \

Forbidden: HEAD /scripts/bnbform.cgi

从输出结果中,我们可以看到有三种基本的检测结果:200 OK、403 Access Forbidden和404 Object Not Found。这些结果表示:

200 OK

这个输出表示攻击检查成功。服务器存在这个缺陷。这些缺陷包括:newdsn.exe、htr和URL扩展字符串。攻击者可能利用这些缺陷侵入服务器。

403 Access Forbidden

表示whisker已经发现了可以用于攻击检查的文件,但是哟高呼没有对它的访问权限。在这种情况下,攻击者暂时无法通过这些可能的缺陷侵入服务器,但是如果将来权限设置出现失误就可能给攻击者以可乘之机。

404 Object Not Found

表示whisker没有发现可以用于攻击的文件。

whisker主要从以下的站点获得安全缺陷信息:http://www.foundstone.com、http://www.securityfocus.com、http://www.packetstorm.securify.com。

还有其它一些WEB服务器缺陷扫描程序,不过这些程序的包容性和反应速度都不及whisker。

Cgichk.pl

Cgichk.pl是一个使用perl编写的扫描程序,它有非常好的日志功能,能够对信息进行很好的回溯。

#./cgichk.pl

CGI scanner [in Perl] v1.1

Host: 192.168.1.2

HTTP Port [80]:

Log Session?(y/n)n

Press [enter] to check the httpd version...

HTTP/1.1 200 OK

Server: Microsoft-IIS/4.0

Date: Wed, 01 Nov 2000 19:57:13 GMT

Content-Type: text/html

Set-Cookie: ASPSESSIONIDQQQQQGZZ=HGECMCCDEJALHKKHHCPMJLEP; path=/

Cache-control: private

Press [enter] to check for CGI vulnerabilities...

Searching for UnlG - backdoor : Not Found

Searching for THC - backdoor : Not Found

Searching for phf : Not Found

Searching for Count.cgi : Not Found

Searching for test-cgi : Not Found

Searching for nph-test-cgi : Not Found

Searching for nph-publish : Not Found

Searching for php.cgi : Not Found

Searching for handler : Not Found

Searching for webgais : Not Found

Searching for webdist.cgi : Not Found

Searching for faxsurvey : Not Found

Searching for htmlscript : Not Found

Searching for pfdisplay : Not Found

Searching for perl.exe : Not Found

Searching for wwwboard.pl : Not Found

Searching for www-sql : Not Found

Searching for view-source : Not Found

Searching for campas : Not Found

Searching for aglimpse : Not Found

Searching for glimpse : Not Found

Searching for man.sh : Not Found

Searching for AT-admin.cgi : Not Found

Searching for filemail.pl : Not Found

Searching for maillist.pl : Not Found

Searching for jj : Not Found

Searching for info2www : Not Found

Searching for files.pl : Not Found

Searching for finger : Not Found

Searching for bnbform.cgi : Not Found

Searching for survey.cgi : Not Found

Searching for AnyForm2 : Not Found

Searching for textcounter.pl : Not Found

Searching for classifields.cgi: Not Found

Searching for wguest.exe : Not Found

Searching for bdir - samples : Not Found

Searching for CGImail.exe : Not Found

Searching for newdsn.exe : Found!

Searching for fpcount.exe : Not Found

Searching for counter.exe : Not Found

Searching for visadmin.exe : Not Found

Searching for openfile.cfm : Not Found

Searching for exprcalc.cfm : Not Found

Searching for dispopenedfile : Not Found

Searching for sendmail.cfm : Not Found

Searching for codebrws.asp : Not Found

Searching for codebrws.asp : Not Found

Searching for showcode.asp : Not Found

Searching for search97.vts : Not Found

Searching for carbo.dll :Not Found

Server may have CGI vulnerabilities.

从结果可以看出,这个扫描程序只能发现whisker发现的一部分缺陷。其它的一些区别还包括输出的显示。whisker对输出的分类更详尽一些,例如:Access Forbidden和Object Not Found的划分。

Malice

Malice也是一个使用perl写成的perl扫描程序,具有某些规避IDS检测的功能,而且能够进行大量的检测。

./malice5.2.pl

Malice .5.2

Anti IDS scanner that uses null scans with HEAD requests

Much props to doom for editing this.

Host: 192.168.1.2

Port: 80

HTTP/1.1 200 OK

Server: Microsoft-IIS/4.0

Date: Wed, 01 Nov 2000 20:02:45 GMT

PICS-Label: (PICS-1.0 "http://www.rsac.org/ratingsv01.html" l by \

"" on "1998.10.20T15:20-0400" exp "1999.10.20T12:00-0400" r \

(v 0 s 0 n 0 l 0))

Content-Type: text/html

Set-Cookie: ASPSESSIONIDQQQQQGZZ=OHECMCCDJGGMODLBHBIEDKGO; path=/

Cache-control: private

Checking 192.168.1.2 for CGI holes.....:

Exploit Found: /scripts/tools/newdsn.exe

Location: /scripts/tools/newdsn.exe

Exploit Found: /?PageServices

Location: /?PageServices

Exploit Found: WebDAV transversal

Location: /secret/secret/sql_tool.shtml

Exploit Found: default.asp

Location: /default.asp

malice能够进行一些其它扫描程序不能做的检查,而且它会试图避开IDS系统的检测。从结果还可以看出,它查出了两个whisker没有发现的缺陷。malice的另一个不同之处是,它只显示能够的检测结果。

扫描完成后,我们就获得许多系统潜在的缺陷信息。下一步就是对这些潜在的缺陷进行实际的攻击测试。完成实际的攻击测试之后,根据测试结果对实际的缺陷进行修补。

本文讲到的一些和一些没有讲到的WEB服务器缺陷扫描工具可以从以下地址获得。

whisker:http://www.wiretricp.net

cgichk.pl:http://packetstorm.securify.com

malice:http://kickme.to/security666

netcat:http://www.securityfocus.org

nmap:http://www.insecure.org

MD-webscan:http://www.internettrash.com/users/mordrian

结论

本文介绍了WEB服务器安全规划的前两步:指纹特征分析和缺陷分析。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有