一、WEB服务器安全形势
 
    在了解WEB服务器的安全状况之前,首先要让大家了解网站安全的另一面——黑客攻击。97至98年互联网开始在中国兴起之时,黑客就已经诞生了,在98年印尼排华事件中,中国黑客对印尼政府网站的打击行动通过媒体的渲染,让黑客一词进入了广大中国网民的眼帘。随着几次黑客大战的爆发以及媒体对黑客的渲染,让更多人加入了黑客这个队伍。那么黑客都是通过怎样的技术手段实施攻击的呢?97年到2002年以来,除了比较有名的UNICODE漏洞之外,黑客们大部分都是利用系统的各种溢出漏洞来实施入侵,包括像ipc共享空连接漏洞,ida/idq,printer漏洞,rpc漏洞等等。
   2003年,中国互联网开始从01年的互联网寒冬逐渐走向复苏,盛大、分众传媒、空中网等一系列IT企业分别在纳斯达克上市成功更进一步激起了更多IT从业人员开始开设网站和成立IT公司,梦想有一日能上纳斯达克拿美国股民的钱。网站数量的激增以及大家对网络安全的轻视,导致通过WEB的各种漏洞来进行入侵的事件越来越多。sql注入漏洞随着黑客高手们一次又一次地使用在拿国内外游戏数据库和游戏网站的权限,并高价卖出,买车买房子之时,sql注入以及相关技术在黑客的群体中普及开来。黑客们在比尔。盖茨先生弥补了大部分系统漏洞之后,开始转移方向,发现基于网站的各种脚本漏洞能非常轻易的使用,而且能够通过提权来获取系统权限。于是,基于web的脚本漏洞成功黑客们的最爱。   随后流氓软件开始在中国的互联网大地上盛行了起来,互联网的网站应用领域的黑客入侵技术开始流行了起来。最典型的就是黑客的网站挂马技术,这种技术就是利用网站的漏洞建立或者上传一个ASP木马的方式来获取网站的WEBSHELL权限,然后通过WEBSHELL权限通过提权获取系统权限,再接着就是在服务器的网站里面加入一些恶意的脚本代码,让你的电脑在访问网站的时候,不知不觉的中病毒和黑客程序,最后你电脑里面的重要资料,QQ号,网络游戏帐号,网上银行帐户里面的现金都会不翼而飞。
   据专业权威机构统计,02年中国境内网站被入侵的比例不到10%,而到了06年,中国境内网站被入侵的比例是85%。黑客技术的普及化以及巨大商业利益的窃取网上银行的资金,QQ号码倒卖,网络游戏装备和帐号的倒卖等地下黑客产业链的形成是导致网站遭遇安全事件的主因。
 
二、WEB的各种攻击手段
 
sql注入漏洞的入侵
这种是ASP+ACCESS的网站入侵方式,通过注入点列出数据库里面管理员的帐号和密码信息,然后猜解出网站的后台地址,然后用帐号和密码登录进去找到文件上传的地方,把ASP木马上传上去,获得一个网站的WEBSHELL。
 
ASP上传漏洞的利用
    这种技术方式是利用一些网站的ASP上传功能来上传ASP木马的一种入侵方式,不少网站都限制了上传文件的类型,一般来说ASP为后缀的文件都不允许上传,但是这种限制是可以被黑客突破的,黑客可以采取COOKIE欺骗的方式来上传ASP木马,获得网站的WEBSHELL权限。
 
后台数据库备份方式获得WEBSHELL
   这个主要是利用网站后台对ACCESS数据库进行数据库备份和恢复的功能,备份数据库路径等变量没有过滤导致可以把任何文件的后缀改成ASP,那么利用网站上传的功能上传一个文件名改成JPG或者GIF后缀的ASP木马,然后用这个恢复库备份和恢复的功能把这个木马恢复成ASP文件,从而达到能够获取网站WEBSHELL控制权限的目的。
 
网站旁注入侵
   这种技术是通过IP绑定域名查询的功能查出服务器上有多少网站,然后通过一些薄弱的网站实施入侵,拿到权限之后转而控制服务器的其它网站。
 
sa注入点利用的入侵技术
    这种是ASP+MSSQL网站的入侵方式,找到有SA权限的SQL注入点,然后用SQL数据库的XP_CMDSHELL的存储扩展来运行系统命令建立系统级别的帐号,然后通过3389登录进去,或者在一台肉鸡上用NC开设一个监听端口,然后用VBS一句话木马下载一个NC到服务器里面,接着运行NC的反向连接命令,让服务器反向连接到远程肉鸡上,这样远程肉鸡就有了一个远程的系统管理员级别的控制权限。
 
 
sa弱密码的入侵技术
    这种方式是用扫描器探测SQL的帐号和密码信息的方式拿到SA的密码,然后用SQLEXEC之类的工具通过1433端口连接到远程服务器上,然后开设系统帐号,通过3389登录。然后这种入侵方式还可以配合WEBSHELL来使用,一般的ASP+MSSQL网站通常会把MSSQL的连接密码写到一个配置文件当中,这个可以用WEBSHELL来读取配置文件里面的SA密码,然后可以上传一个SQL木马的方式来获取系统的控制权限。
 
提交一句话木马的入侵方式
    这种技术方式是对一些数据库地址被改成asp文件的网站来实施入侵的。黑客通过网站的留言版,论坛系统等功能提交一句话木马到数据库里面,然后在木马客户端里面输入这个网站的数据库地址并提交,就可以把一个ASP木马写入到网站里面,获取网站的WEBSHELL权限。
 
论坛漏洞利用入侵方式
    这种技术是利用一些论坛存在的安全漏洞来上传ASP木马获得WEBSHELL权限,最典型的就是,动网6.0版本,7.0版本都存在安全漏洞,拿7.0版本来说,注册一个正常的用户,然后用抓包工具抓取用户提交一个ASP文件的COOKIE,然后用明小子之类的软件采取COOKIE欺骗的上传方式就可以上传一个ASP木马,获得网站的WEBSHELL。
 
GOOGLE HACKing技术
    这种技术方式是用GOOGLE来搜索一些存在安全漏洞的网站,我们简单列出GOOGLE的一些语法的使用方法:
 
intext:
这个就是把网页中的正文内容中的某个字符做为搜索条件.例如在google里输入:intext:红盟.将返回所有在网页正文部分包含"红盟"的网页
.allintext:使用方法和intext类似.
intitle:
和上面那个intext差不多,搜索网页标题中是否有我们所要找的字符.例如搜索:intitle:红客.将返回所有网页标题中包含"红客"的网页.同理allintitle:也同intitle类似.
cache:
搜索google里关于某些内容的缓存,有时候也许能找到一些好东西哦.
define:
搜索某个词语的定义,搜索:define:hacker,将返回关于hacker的定义.
filetype:
这个我要重点推荐一下,无论是撒网式攻击还是我们后面要说的对特定目标进行信息收集都需要用到这个.搜索指定类型的文件.例如输入:filetype:
doc.将返回所有以doc结尾的文件URL.当然如果你找.bak、.mdb或.inc也是可以的,获得的信息也许会更丰富:)
:filetype:doc.将返回所有以doc结尾的文件URL.当然如果你找.bak、.mdb或.inc也是可以的,获得的信息也许会更丰富
info:
查找指定站点的一些基本信息.
inurl:
搜索我们指定的字符是否存在于URL中.例如输入:inurl:admin,将返回N个类似于这样的连接:http://www.xxx.com/xxx/admin,用来找管理员登陆的URL不错.allinurl也同inurl类似,可指定多个字符。
link:
例如搜索:inurl:www.jz5u.com可以返回所有和www.jz5u.com做了链接的URL.
site:
这个也很有用,例如:site:www.jz5u.com将返回所有和jz5u.com这个站有关的URL.
对了还有一些*作符也是很有用的:
+ 把google可能忽略的字列如查询范围
- 把某个字忽略
~ 同意词
. 单一的通配符
* 通配符,可代表多个字母
"" 精确查询
现在简单来讲解一些实例:
对于一些黑客来说,获取密码文件是他们最感兴趣的,那么可以在GOOGLE上搜索以下内容:
intitle:"index of" etc
intitle:"index of" passwd
intitle:"index of" pwd.db
intitle:"index of" etc/shadow
intitle:"index of" master.passwd
intitle:"index of" htpasswd
 
  这样就会有很多一些服务器的重要密码文件没有任何保护的暴露在网络上,黑客就会利用这些密码来获取系统的一些权限。
 
site:abc.com filetype:doc
可以得到很多不错的doc。
 
找找网站的管理后台地址:
site:abc.com intext:管理
site:abc.com inurl:login
site:abc.com intitle:管理
 
看看服务器上运行了的是什么程序:
site:abc.com filetype:asp
site: abc.com filetype:php
site: abc.com filetype:aspx
 
如果网站上有论坛,那么看看有没有一些什么公共的FTP帐号之类的:
site:abc.com intext:ftp://*:*
 
看看有没有上传一类的漏洞:
site:abc.com inurl:file
site:abc.com inurl:load
 
看看网站有多少二级域名:
site:abc.com //得到N个二级域名
 
    以上黑客通过WEB的入侵技术我们只是做了简单的介绍,目的是希望大家对黑客技术有一定的了解,但不希望大家利用这些技术来实施入侵。我想大家就很想知道对于这么多形形色色的入侵方式,有些什么好的防御方法。那下面我们就来讲讲怎样来防御基于WEB的各种攻击。
 
三、如何防范WEB的各种攻击?
 
防范WEB攻击有两种方式,一种是用技术手段来防御攻击,另一种是用安全软件来防御攻击。
手动的方式来防范基于WEB的攻击
1、安装补丁
安装好操作系统之后,首先要做的就是要安装系统的各种补丁程序,配置好网络之后,如果是WIN 2000的操作系统就装上SP4,WIN 2003就安装好SP1,然后点击WINDOWS UPDATE,安装好所有关键的更新。
 
2、安装杀毒软件
杀毒软件我们现在主要推荐使用两款:卡巴斯基和瑞星。这两款杀毒软件我们做过N多测试,结果表明卡巴斯基的杀查能力要强过瑞星,很多做过免杀的木马过得了瑞星但是确逃不过卡巴斯基的法眼,当然卡巴斯基也不是百分百所有病毒都能查杀,一些木马程序也是能做出过卡巴斯基的免杀。只不过卡巴斯基在所有杀毒软件当中查杀能力还算是不错的。
 
3、设置端口的安全保护功能
端口保护的方式有两种,一种是TCP/IP筛选里面进行端口设置,另外一种系统自带的防火墙(我们以WINDOWS 2003操作系统为准,现在大部分的网站都使用的是WINDOWS 2003操作系统。)。
TCP/IP筛选的端口设置方式
在“网上邻居”上选右键点开“属性”,然后在“本地连接”上右键点开“属性”,选择“Internet协议(TCP/IP)”点“属性”,然后在弹出的“Internet协议(TCP/IP)属性”框里选择“高级”,然后在“高级TCP/IP设置”框里选择“选项”,然后选择“TCP/IP筛选”后点击“属性”,然后在弹出的“TCP/IP筛选”的框里勾上“启用TCP/IP筛选(所有适配器)”,选择只允许,然后点击添加你所需要开放的端口。
 
自带防火墙的端口设置
通过WINDOWS 2003操作系统自带的防火墙来进行端口设置比较灵活,不用重新启动服务器。我们开始设置,在“网上邻居”上选右键点开“属性”,然后在“本地连接”上右键点开“属性”,在弹出的框里选择“高级”,选择“Internet连接防火墙”点击设置,这样就会弹出“WINDOWS 防火墙”的框。我们选择“启用”,然后点“例外”,在这个里面我们可以选择“添加程序”和“添加端口”的方式来设置一些开放的端口。有一点需要特别注意,如果是远程连接服务器的,要注意远程虚拟终端的端口一定要开放。
 
4、目录的安全设置
包括系统盘在内的所有磁盘只给Administrators和SYSTEM的完全控制权限。
C:/ Documents and Settings 目录只给Administrators和SYSTEM的完全控制权限。
C:/Documents and Settings/All Users 目录只给 Administrators 组和 SYSTEM 的完全控制权限。C: /Inetpub 目录及下面所有目录、文件只给 Administrators 组和 SYSTEM 的完全控制权限。C:/Windows目录除了给Administrators和SYSTEM的完全控制权限之外,还需要给CREATOR OWNER用一个“特别的权限”,Power Users用户组除了完全控制之外的所有权限,Users用户组“读取和运行”,“列出文件夹目录”,“读取”的权限。C:/Windows目录的这些权限设置是非常重要的,如果除了Administrators和SYSTEM的完全控制权限之外的那些权限没有设置,那么系统重启后,很多系统服务都不能正常使用。
C: /Windows/System32/cacls.exe、cmd.exe、net.exe,、net1.exe 文件只给 Administrators 组和 SYSTEM 的完全控制权限。
 
5、IIS控制帐号的权限分配
现在黑客的入侵技术当中,有一种技术叫网站旁注入侵,这种技术方式上面黑客入侵技术环节已经讲过了,是通过服务器里面一个有漏洞网站的来实施入侵,成功获取权限之后转而控制其它网站。那大家就想知道这个问题是由于什么原因导致的。原来IIS对于远程的普通用户访问是设置了一个专用的“IUSR_机器名”的帐号。那么正因为IIS用“IUSR_机器名”的帐号来管理所有网站访问权限,因此黑客就可以用到这种旁注入侵技术了。那么我们怎么来解决这个问题?很简单,我们给每个网站分别设置一个单独的IIS控制帐号,IIS控制帐号的权限设为GUESTS组就可以。这样即使黑客通过服务器的一个网站拿到权限,那他也只有这个网站的权限,服务器其它网站他都没有权限可以访问,黑客对服务器破坏的风险降低了,那么安全就相对提高了。
 
6、注入漏洞的修补以及上传文件类型的限制
   这两个部分是各位网站程序员所必须关注的,黑客对网站实施入侵的过程中,80%会用到网站的注入点和上传漏洞来实施入侵。注入漏洞的修补可以使用网上一些现成的修补代码,如ASP通用防注入组件,防注入代码完美版等,但是我们还是建议网站程序员稍微花点时间自己来写防注入代码,这样会比较安全可靠。上传文件类型的限制这个写起来也不难,只允许用户上传你们网站所要用到的文件类型,限制好文件类型,特别不要让ASP,ASA等扩展名的文件上传上来,然后对文件的头文件进行一个检查,发现有ASP木马特征的就限制上传。当然,现在的黑客越来越聪明,ASP木马大部分都使用一句话木马,然后还会对代码进行各种各样的变形处理来逃过网站的限制以及杀毒软件的查杀。对于这些免杀技术的木马用ASP代码的方式很难防范,最好使用安全产品来进行防御。
 
7、SQL权限的安全设置
   ASP+MSSQL是黑客最感兴趣的网站,通常黑客能很轻松的利用MSSQL的漏洞拿到系统权限,因此这一块是大家要加以重视。
   首先系统安装的时候,尽量不要默认安装到c:/Program files目录里面,然后安装好之后要打好SQL数据库最新的补丁程序。然后数据库不要放在默认的位置,接下来就要看网站是否需要远程登录sql服务器,我们建议能不用远程就不要用,如果必须使用的话,那建议大家可以把端口改成一个高端端口,这样黑客很难找到。
在做好安全安装的工作之后,就要把SA设置一个复杂的密码,然后把SQL里面的BUILTIN/Administrators用户组删除,这样是避免黑客以WINDOWS身份登录SQL。接着在企业管理器里面编辑SQL Server注册属性,选择使用“使用SQL Server身份验证”并勾选“总是提示输入登录名和密码”。
  
   然后在增加用户的时候,只给public和db_owner权限。
   添加用户
   exec sp_addlogin 'abc'
   使它变为当前数据库的合法用户
   exec sp_grantdbaccess N'abc'
   授予abc用户对数据库的db_owner权限
exec sp_addrolemember N'db_owner', N'abc'
最后我们就要删除一些黑客常用到的调用SHELL,操作注册表,调用COM组件的权限:
打开查询分析器,输入:
use master
EXEC sp_dropextendedproc 'xp_cmdshell'
EXEC sp_dropextendedproc 'Sp_OACreate'
EXEC sp_dropextendedproc 'Sp_OADestroy'
EXEC sp_dropextendedproc 'Sp_OAGetErrorInfo'
EXEC sp_dropextendedproc 'Sp_OAGetProperty'
EXEC sp_dropextendedproc 'Sp_OAMethod'
EXEC sp_dropextendedproc 'Sp_OASetProperty'
EXEC sp_dropextendedproc 'Sp_OAStop'
EXEC sp_dropextendedproc 'Xp_regaddmultistring'
EXEC sp_dropextendedproc 'Xp_regdeletekey'
EXEC sp_dropextendedproc 'Xp_regdeletevalue'
EXEC sp_dropextendedproc 'Xp_regenumvalues'
EXEC sp_dropextendedproc 'Xp_regread'
EXEC sp_dropextendedproc 'Xp_regremovemultistring'
EXEC sp_dropextendedproc 'Xp_regwrite'
drop procedure sp_makewebtask
点击菜单上“查询”里面的“执行”,这样就可以把这些会被黑客利用的权限删除掉。
 
安全软件防御WEB攻击
 
端口以及系统漏洞扫描器:XSCAN扫描器
   由黄鑫同志开发的国内最好用的扫描器,可以探测系统开放端口的情况,然后还可以对端口提供的服务安全进行探测,能探测FTP,MAIL,SQL等服务的帐号和密码,是一款不可多得的安全扫描探测产品。
WEB漏洞扫描器:明小子3.5
   黑客们用得最多的WEB漏洞扫描以及入侵工具,当然我们也可以用来探测我们自己服务器网站的安全状况,它能够扫描网站的注入漏洞和上传漏洞以及探测网站的后台地址等信息。
木马查杀工具:冰刃IceSword
冰刃 IceSword是一斩断黑手的利刃,它适用于Windows 2000/XP/2003 操作系统,其内部功能是十分强大,用于查探系统中的幕后黑手-木马后门,并作出处理。可能您也用过很多类似功能的软件,比如一些进程工具、端口工具,但是现在的系统级后门功能越来越强,一般都可轻而易举地隐藏进程、端口、注册表、文件信息,一般的工具根本无法发现这些“幕后黑手”。
 
专业服务器安全管理系统:红盟服务器安全防御系统
红盟服务器安全防御系统是一款针对服务器的安全管理系统,本系统主要拥有针对服务器进行事先预防黑客攻击而设置的安全防护功能;拥有在服务器受到黑客攻击时能迅速防御黑客攻击的功能;在受到黑客攻击后对系统漏洞的修补,黑客后门清除,系统安全加固以及追查黑客来源的功能。
 
今天让大家了解到了服务器网络安全的发展趋势,以及黑客是怎样来实施攻击,然后我们又怎么来防范黑客对服务器的攻击。我们最终的目的还是希望能帮到各位站长来做好服务器的安全防御工作,安全是一个动态的概念,不是说现在设置好了就可以高枕无忧了,黑客还会不断地挖掘出更多的一些配置不当、新的网站漏洞以及新漏洞的利用方法,各位站长同志还是要经常关注最新的安全动态,打上各种系统补丁,扫描服务器和网站的安全。当然,对于网站管理员或者站长来说做这些工作会花费不少时间和精力,建议大家可以使用一些安全软件来做好服务器的安全管理的工作。我们红盟也是一直在致力于服务器的安全软件的开发以及安全服务的提供,大家日后在服务器上遇到什么网络安全方面的问题以及想了解我们红盟服务器安全防御系统的朋友可以来找我们交流。我的QQ号码是:2727423,我们网站安全交流群组的号码是:15341239,我们网站的网址是:www.RedHacker.cn。