[一]用nc查看web服务器返回的HTTP报头
语法为 nc www. 80
[二]根据URL中的元素
扩展名
采用的技术
服务器平台
.pl
PerlCGI脚本
各种平台,一般是Unix
.asp
活动服务器页面
Microsoft IIS
.aspx
ASP +
Microsoft .NET
.php
PHP脚本
各种平台,一般是Apache
.cfm
ColdFusion
一般与Microsoft服务器接口
Nsf
LotusDomino
但是Web服务器在配置方面很灵活,网关可以故意弄乱文件类型来隐藏关于所有技术方面的信息。识别服务器也是一门艺术,比如Java服务器所使用的服务页面(jsp)这种文件类
型不能给出任何线索,因此无法得知所用的前端Web服务器和用于执行JSP文件的Java应用程序。下面是一些URL示例,助你纵横网络:
(1)www.xxx.com/homepage.nsf?Open
这是采用的Lotus Domino服务器,用nc一看报头返回的信息就可以知晓,nsf文件也让我们一目了然。
(2)www.xxx.com/software/buy.jhtml;jsessionid=ZQWEURBF69UD6DOG8
用nc查看报头,发现返回的是显示服务器为 Microsoft-IIS/4.0,但是Microsoft-IIS/4.0是不支持.jhtml的,它实际上是Java Html页面。因此这是一台应用程序和Microsoft-
IIS/4.0共同合作的。字符串jsessionid=ZQWEURBF69UD6DOG8,是使用ATG Dynamo Application Server的证据型特征,这里由它来提供Java Html文件并执行Java Servlet。
(3)www.xxx.com/cgi-bin/ncommerce3/ExecMacro/webstore/home.d2w/repeat
这是IBM Net.Data 电子商务平台使用的典型URL。字符串ncommerce3和ExecMacro均是揭示技术类型的关键字符串。home.d2w是一个应用IBM Net.Data 脚本语言编写的应用程序宏
,repeat是应用程序宏提供的许多种方法中的一种。
(4)www.xxx.com/site/index/0,10017,25487,00.html
这种URL不是很常见,看起来不是一个静态的HTML页面,如果我们浏览这个站点,具体数字会不断变化而整体URL结构形式保持不变。它是Vignett Story Server的典型URL,这是一
种流行的内容服务器,经常与Netscape Enterprise及Microsoft-IIS/4.0一起使用。
(5)www.xxx.com/report.cgi?page=3
这是一个很明显的,开始就可以猜出运行的是Apache服务器,用perl编写的应用程序。用cgi提供脚本技术支持。
(6)www.xxx.com/webapp/wcs/stores/servlet/Display?storeId=10001&langID=-1&catalogID=10001&catagoryID=10052&cleatance=0&catTree=10053
我们看不出来,提交一个不完整的URL——www.xxx.com/webapp/wcs/stores/试试,果然,页面出现强制性错误了,原来是IBM WebSphere的服务器啊!
[三]用cookie查看
前面介绍的两种方法只能作为一种标准而已,但是它们返回的信息却不一定是最真实的。服务器可以通过修改自己的服务器类型字符串,把服务器页面的扩展名.asp映射为.cgi,
从而隐藏自己不被黑客识破关键技术,有可乘之机。但是,通过cookie查看到的信息却是绝对真实的,我在下面罗列了一些常见的cookie类型以及它们对应的服务器种类,大家可
以查看。
服务器 Cookie格式
Apache Apache = 220.86.136.115.308631204331944536139
IIS ASPSESSIONIDGGQGGCVC=KELHFOFDIHOIEBUOYINPEGKM
ATG Dynamo JSESSIONID = H4TQQOLIENTO2BELINPULCDEFIN3AAYUGOEL304
IBMNet.Data
SESSION_ID=307823,wFBDLINTKMladthcaAln+iKneilweJEMYRUU/VIABFOXPLUGME8e+licenslogOlienMIKEYXLTEA
ColdFusion CFID=,587643 CFTOKEN=25631988
这样并不是保险的做法,很多人在重装IIS后问题依旧。
所以建议在任何情况下都用以下步骤重新安装IIS:
1、把IIS卸载。
2、把 %windir%\system32\inetsrv 删除。
3、把%windir%\iisX.log删除,X 是IIS版本。
4、把 \inetpub\ 目录删除。
(以上操作可以在安全模式中进行。)
5、重装IIS。
要创建一个安全可靠的Web服务器,必须要实现Windows 2000和IIS的双重安全,因为IIS的用户同时也是Windows 2000的用户,并且IIS目录的权限依赖Windows的NTFS文件系统的权限控制,所以保护IIS安全的第一步就是确保Windows 2000操作系统的安全:
1. 使用NTFS文件系统,以便对文件和目录进行管理。
2. 关闭默认共享
打开注册表编辑器,展开“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters”项,添加键值AutoShareServer,类型为REG_DWORD,值为0。 这样就可以彻底关闭“默认共享”。
3. 修改共享权限
建立新的共享后立即修改Everyone的缺省权限,不让Web服务器访问者得到不必要的权限。
4. 为系统管理员账号更名,避免非法用户攻击。
鼠标右击[我的电脑]→[管理]→启动“计算机管理”程序,在“本地用户和组”中,鼠标右击“管理员账号(Administrator)”→选择“重命名”,将管理员账号修改为一个很普通的用户名。
5. 禁用TCP/IP 上的NetBIOS
鼠标右击桌面上[网络邻居] →[属性] →[本地连接] →[属性],打开“本地连接属性”对话框。选择[Internet协议(TCP/IP)]→[属性]→[高级]→[WINS],选中下侧的“禁用TCP/IP上的NetBIOS”一项即可解除TCP/IP上的NetBIOS。
6. TCP/IP上对进站连接进行控制
鼠标右击桌面上[网络邻居] →[属性] →[本地连接] →[属性],打开“本地连接属性”对话框。选择[Internet协议(TCP/IP)]→[属性]→[高级]→[选项], 在列表中单击选中“TCP/IP筛选”选项。单击[属性]按钮,选择“只允许”,再单击[添加]按钮,只填入80端口。
7. 修改注册表,减小拒绝服务攻击的风险。
打开注册表:将HKLM\System\
CurrentControlSet\Services\Tcpip\Parameters下的SynAttackProtect的值修改为2,使连接对超时的响应更快。
保证IIS自身的安全性
IIS安全安装
要构建一个安全的IIS服务器,必须从安装时就充分考虑安全问题。
1. 不要将IIS安装在系统分区上。
2. 修改IIS的安装默认路径。
3. 打上Windows和IIS的最新补丁。
IIS的安全配置
1. 删除不必要的虚拟目录
IIS安装完成后在wwwroot下默认生成了一些目录,包括IISHelp、IISAdmin、IISSamples、MSADC等,这些目录都没有什么实际的作用,可直接删除。
2. 删除危险的IIS组件
默认安装后的有些IIS组件可能会造成安全威胁,例如 Internet服务管理器(HTML)、SMTP Service和NNTP Service、样本页面和脚本,大家可以根据自己的需要决定是否删除。
3. 为IIS中的文件分类设置权限
除了在操作系统里为IIS的文件设置必要的权限外,还要在IIS管理器中为它们设置权限。一个好的设置策略是:为Web 站点上不同类型的文件都建立目录,然后给它们分配适当权限。例如:静态文件文件夹允许读、拒绝写,ASP脚本文件夹允许执行、拒绝写和读取,EXE等可执行程序允许执行、拒绝读写。
4. 删除不必要的应用程序映射
ISS中默认存在很多种应用程序映射,除了ASP的这个程序映射,其他的文件在网站上都很少用到。
在“Internet服务管理器”中,右击网站目录,选择“属性”,在网站目录属性对话框的“主目录”页面中,点击[配置]按钮,弹出“应用程序配置”对话框,在“应用程序映射”页面,删除无用的程序映射。如果需要这一类文件时,必须安装最新的系统修补补丁,并且选中相应的程序映射,再点击[编辑]按钮,在“添加/编辑应用程序扩展名映射”对话框中勾选“检查文件是否存在”选项。这样当客户请求这类文件时,IIS会先检查文件是否存在,文件存在后才会去调用程序映射中定义的动态链接库来解析。
5. 保护日志安全
日志是系统安全策略的一个重要环节,确保日志的安全能有效提高系统整体安全性。
● 修改IIS日志的存放路径
默认情况下,IIS的日志存放在%WinDir%\System32\LogFiles,黑客当然非常清楚,所以最好修改一下其存放路径。在“Internet服务管理器”中,右击网站目录,选择“属性”,在网站目录属性对话框的“Web站点”页面中,在选中“启用日志记录”的情况下,点击旁边的[属性]按钮,在“常规属性”页面,点击[浏览]按钮或者直接在输入框中输入日志存放路径即可。
● 修改日志访问权限,设置只有管理员才能访问。
通过以上的一些安全设置,相信你的Web服务器会安全许多。